As it soon turned out, almost everybody. All that BeFS does, in exchange for a bunch of your disk space and CPU, is BTree indexes, for each index you want your filesystem gets a little slower and bigger. It starts out "Quite a bit worse than some of the alternatives available at the time" and goes down from there. If you switch the indexing off so as to get back reasonable performance, now your email folders are just unsorted and sorting them takes forever as it would on a Windows PC (except your Windows PC has an email client so you wouldn't do that).
This makes for a cool demo of course, which is important if your actual goal is to get Apple to hire you instead of Jobs, but there's a reason why your filesystem did not add this fairly simple feature and you still have an email client.
Is it that BeFS was indexing everything and not just the folders that needed to be indexed?
macos spotlight is also routinely indexing the file system, doesn't seem so different to me, naively
Also, an actual email client can specialise. BeFS is very general, the attributes can be typed but there's only one string type (other types include 32-bit and 64-bit integers, floats) so a Subject and a Sender email address both get indexed the same way. An email client might reasonably optimise for @corp.example type address searches for example, but then also do some simple keyword optimisations for subject line too.
You could not turn off indexing for some/ all folders in BeOS only for an entire filesystem (and if you do a bunch of stuff doesn't work)
Before BFS, was OFS which was an actual database and was horribly buggy, requiring the BTree to be regenerated often enough that it was a "BIOS" level boot menu option on the BeBox running that version's Boot ROM.
A lot of the wonder at BFS stems from the marketing of OFS. BFS only retained the bare minimum features that OFS had, to make the database stuff still exist.
Attributes are exposed on the UI level and can be a useful way to organize custom structured data even for an end user: https://www.haiku-os.org/docs/userguide/en/workshop-filetype...
I'm sure it is way more limited than some original failed vision but limiting scope doesn't have to be a bad thing and I think what they ended up with does live up to the hype in some ways. That said, it certainly also has some flaws like not even being able to efficiently use the index for the built-in file find dialog because of case insensitivity.
BFS was written in a way that complied to a file system API that could then support other non-BFS file systems being plugged in. But because it was written in more of a traditional file system way, the database features got massively cut down to just attributes and indexes with live queries. It was a trade off. The database hype built by the DR releases (mainly for BeBox, I think only one made it publicly to Mac) was maintained because the attributes sort of mimicked the bare minimum functionality needed to tick a marketing box. But BFS really doesn't do much more than some other file systems have since done.
The OFS was more like the SQLServer based WinFS that Longhorn was going to have.
Yes it is a trade off. Not sure what other file systems you are referring to but I'm not aware of any others that enable the kind of applications BeOS had using these features. Those are also a key part of it.
That's true but you still did have some control over the indexing as you could choose what attributes to index or not in the first place.
It’s true that indexes can impact performance but “quite a bit worse” is far from what I observed at the time. Even with hundreds of thousands of files it was quite responsive - Apple needed SSDs and 15 more years of development to get close, and Windows still hasn’t.
Everyone who uses more than one device to access his/her e-mail? Sure BeOS had nice features, but it seems to me that it solved the wrong problems.
Many modern systems do have file attributes, although they're not always as capable as the ones in BeFS, and none of them to my knowledge chose to add all these BTrees because keeping them up-to-date is expensive.
What is the big difference is that BeFS exposed the extended attributes easily in the file manager and APIs - compare it with other systems where the APIs were little known or not used - POSIX extended attributes which are very limited (4k), Solaris extended attributes (which let you open a file as a directory) but are Solaris only, WinNT which had the issue of WinNT being a niche among windows systems, etc. etc.
BeOS in comparison required at least considerable porting work, at worst writing from scratch, and that meant the new features were much more visible.