The hierarchical filesystem was invented back when UI and API were the same thing and it hasn't moved past that.<p>You wouldn't tolerate a UI that was full of dangerous "system buttons" labeled with user-hostile jargon. You wouldn't use a user-entered mutable title field as an indexed unique key in a data schema.<p>FUSE is great but it abstracts the back end, not the interface. That's a seperate issue.<p>Platforms like J2ME with object persistence solve half the problem. Fast access to structured data is a breeze, but the user has no control.<p>All data is meaningful to the user at some level, even if it's as shallow as "Settings for the Blah app" or "The entire Blah app". If an object persistence platform forced all data to be wrapped in a user-meaningful container, which the user could manipulate atomically but not look inside, that would give you the best of both worlds. It would probably also encourage more modular and interoperable data design.