Let me give you my take on "Apps have their own file system" versus "A
single file system shared by all apps".

I've got -- or had -- a big collection of bookmarks in firefox. Nicely
organized. Well structured. Built up over years.

Foxmarks aka xmarks did sharing. Ruined it with lots of duplications.
They insisted that it wasn't their fault. I switched over to Firefox
sync. Later, xmarks wrote back saying that they just found a bug that
would cause exactly the same error that had happened to me. Yea, too
late. After all, Foxmarks won't ruin anything, right?

Sigh. I just discovered that at some point, after adding another
browser profile to firefox sync, most of the duplicates are gone. As
well as lots and lots of other thing. I've got empty directories where
I used to have deep hierarchies of stored data.

Now, replication and synchronization when you've just got pairwise
matching is "solved". Ficus solved it years ago. It's not cheap, and
doing the full thing has lots of corner cases. (Ficus even solved it
for single direction pairwise -- for example, only being able to push
data one way on a single connection/transfer). But all these "Lets
optimize for what we think will actually happen" situations means that
everyone does it differently, and no one does it all.

Now, can I just take a copy of the bookmark tree out of time machine
and put it in? Can I just take the good parts that got lost, and
re-use them? Can I get pieces from this profile, and pieces from that
profile, etc, and stitch something together?

No. It's a database file. So I've got to use an app specific tool for
working with the contents.

That's still a "known" thing. That's like Finder, or windows explorer.
So all I need to do is use each app's full re-implementation of
everything that Finder / windows explorer provides, right?

Oh, no -- each app only reproduces a few tools, based on what they
think will be needed / what they think will be easy to do.

** If everything is a file, then things work well **. That is the
central lesson of unix.
Given the new file system reality -- files are really hidden
directories -- then the new rule is "Everything is a directory, and
the contents are accessible". But that fails.

- Mac OS has forks/attributes that act like files attached to the main
file, but there's no way to access them like a file. But at least
there's some way to access them. Usually. One way for the resource
fork, another way for all the other extended attributes.
- Windows NT kernel (everything from NT to to 7) has alternate data
streams, but there's no way I've even seen for normal users to access
them.
- Every program wants to make a database of stuff that you can't
access, except via some restricted mechanism.
-- Microsoft Windows has the registry. It's a full file system,
optimized for storing small (2-4 byte) data chunks.
-- Firefox has several SQLlite databases and some flat text stuff.
-- Apple's now got their own registry for launchd and launch services.

Every app, a hidden database not sharable with others, except by an
export/import mechanism? Seriously? As a good thing?

How 1985-ish with DOS based programs does that sound? "Store your
datafiles in with the program".

Solve issues _ONCE_.
If there needs to be a way for apps to let you move stuff around, make
it files, and let the system file package work with them.
If you need to synchronize stuff, use a known, working synchronizer.
We've got file systems optimized for small files, file systems
optimized for large files, and file systems that can use any size
file.
We've got ways to layer file system features on top of file systems,
so that a catalog can be added to any underlying byte allocation
system.
We've learned from years of unix tools that lots of small tools put
together is more flexible and superior to a single large monolithic
design.
But file systems are still single large monoliths.
Databases are still single large monoliths (well, most of the time.)

As far as clouds go, "NO!". Google proved that. It doesn't matter how
much you like the features of X, if it's a cloud, it can go poof at
any time. Google did that TWICE with Google Apps. "Show files not in
folders" went away for months. Offline editing went away for good.
Support for folders has never been good, and "Current Directory" seems
to be a foreign concept over there. The whole idea of "This editor is
designed for web layout, and speaks the language of the web" and "That
editor is designed for page layout, and speaks the language of the
page" is great. "No one will use the web editor anymore" is bad. Poof.
That's THREE times, actually.

If I can't "own" the tool, then it's not a long-term usable tool. Period.
_______________________________________________
MacOSX-talk mailing list
[email protected]
http://www.omnigroup.com/mailman/listinfo/macosx-talk

Reply via email to