Filesystems Aren’t a Feature

Coding Horror: Filesystems Aren’t a Feature. Really insightful. You know, leet PHP dudes (*cough*Topher*cough* ) tend to have no use for the filesystem, except as a place to put your frontend stuff. If it matters, tuck it in the database. If you need it, search on it.  Database items don’t have “filenames.”

Only difficulty I can see is with media.  You can’t do a text search on songs or movies without pumping some metadata into them. But things like MusicBrainz are good at automating metadata tagging, and people seem to dig tagging, what with the success of stuff like Flickr and del.icio.us.

To be honest I tend not to carefully categorize my stuff into heirarchical folders; I tend to leave it all sitting on the Desktop or in the home folder or in half a dozen other places.  I see stuff I’ve been working on recently with ‘ls -ltr’.  Huge amounts of cruft accumulate which I clear out once in a while when the ‘ls’ listing gets too ugly.
Apparently GNOME’s Seth Nickell is working on a project to deal with files in this way; it’s called Storage.  Not exactly ready for prime time, that I know of.

I guess this is the general principle behind the Mac’s Spotlight, which is cool.  Current incarnation is a bit scattershot for me; I prefer the more selective and focused Quicksilver.

Part of the deal is that there are files and there are documents.  There are ten billion files on my computer that I do not care a whit about.  They exist for technical reasons and I never want to see them.  Documents are things I care about.  Songs, email messages, notes to myself, images.  Then there are programswhich are kind of in a netherland — I care very much that I have a web browser, but I care very little for the fact that in installing it I installed 503 files:

ed@inky:~$ dpkg -L firefox | wc -l
503
and it has created 850 new files in my home directory since then:

ed@inky:~$ find .mozilla/firefox/ | wc -l
850
That’s all useless trivia.  It’s as meaningless to me as the metal used in the wires that hook my keyboard up to my motherboard.  Very important behind-the-scenes info; useless to the user; even annoying.

In fact, with regards to the browser, I have 108 bookmarks, each of which is individually important to me, but guess what, they’re all in one file —

ed@inky:~$ grep -i href .mozilla/firefox/*.default/bookmarks.html | wc -l
108
So if we’re going to consider this stuff on a UI level, we have to separate “file” from “document.”  A heck of a lot more things are “files” than are “documents,” and some things are “documents” which are only fragments of “files.”  That’s something that as far as I know Spotlight does not respect, which is one reason why it’s unwieldy.

1 thought on “Filesystems Aren’t a Feature”

  1. I’d actually say that images need a database more than other kinds of documents. You can grep a text file fine, but an image should have meta data stored in a database; tags and whatnot. That’s the way Flickr manages all of their searching etc.

Comments are closed.