|Home » Learning Curve
Personal Storage, Google, Tags
When hierarchies no longer do it.
Directories aren't directories. They're folders. 'Directory' is the perfect description: you look up something, and find the associated data you want.
But that's technical. You can let the feeble brains of your end-users explode with stuff they're never going to be able to understand.
Everything in the computer industry is about designing the incredibly complex to make it dumbed-down simple. Bill Gates focus groups in California in the 1990s showed that most people couldn't handle more than two levels of file system hierarchy. Their eyes glazed over. The cultural watershed of the tap-tap device of choice, the smartphone, wouldn't have taken place if Steve Jobs and his friends hadn't made the iPhone so 'bleatingly obvious' - so that 'it just works'.
File system hierarchy is still with us. Just look at Google systems: they all run Unix. And Unix is all about hierarchy. In fact, Unix was the system that pushed it into the mainstream.
Anyone who's struggled with VTOCs knows the difference.
So today we have four basic hierarchies for important files (and maybe more). We have /bin, /sbin, /usr/bin, /usr/sbin. Early Unix systems ran on two hard drives. (/usr was the mount point for hierarchies from the second drive.) Apple systems also have /Users, and a heavy hierarchy can be contained within. And /System, with a whole new world in there. And /Library (and ~/Library) and numerous other places Apple don't want you to go (on your own computer).
Techies can handle this. They work with it all day long (and nighttimes too). They remember where things are - it's their job.
But how about ordinary 'user files'? How well do techies fare there? A typical example:
Joe Blogs just brought his family home from a holiday. He's got photos. He's got email correspondence. He's got his spreadsheet where he planned it all in excruciating detail. And now he wants to save it - archive it for posterity.
But there are going to be other holidays. And Joe's going to want to archive them in a similar fashion. And he wants to be able to cross-reference. But how? Is he going to be able to use this?
Colours? What does 'yellow' mean? Hello? Somebody? Anybody?
Some software associated with photography offers the ability to 'tag', but, generally speaking, the opportunities are limited. And if you tag your files with other than a colour, what can you do to search for that file?
Google got it right. And early on too. The pure bulk of user files is overwhelming - and confusing. Using traditional 'folders' in webmail only leads to frustration.
Google did at least two great things with Gmail. The first is how they took advantage of legacy SMTP headers to thread messages in conversations. The other (considerably more difficult) was how they organised messages not in folders but according to labels.
This is quite the feat. Google admittedly have a head start here, as there's only one access vector to your files. You don't know where your files are physically located. Things will screw up from time to time - hardware failure, software bugs (albeit rare) - but the system's ready for it with diagnostics. Such things, at the end of the day, are rare.
Working on a desktop is another matter. A system similar to Gmail, running on the desktop, will be susceptible to external influences all the time. System refreshes become mandatory.
Yet the 'Gmail idea' is still viable. All one really needs is a way to arbitrarily tag anything. For future reference...
How you use the system is your business. The overall idea is to choose tags that compensate for memory loss, tags that are generic enough - and specific enough - to make it easy to find things, find them later on when you mostly can't recall a thing.
Tags aren't hierarchical. They don't stack on top of each another. No tags are more equal than others. A Rixtag tag contains text, in any character set, a text string as long as you want, as long as the system permits. Tags are sorted alphabetically both on disk and in presentation for your convenience.
How to Find Things
Fire up Rixtag and hit 'Refresh'. This will scan all files in your home directory.
Or limit your search to a particular regular expression (such as '\.png$' for all PNG files or '\.html$' for all HTML files) or to a particular subdirectory. Then hit 'Refresh'. Rixtag is fast.
What you'll see is a list of all tags on the left. These are listed as subordinate to 'root' ('/') which is actually the root of your current search (your home directory by default, or whatever directory you chose). 'Root' is selected on the left to start with - 'all files'. And quite as expected, all files - regardless of their tags - are listed on the right. There are lots of columns of data on the right, all sortable. The final column is 'Path', and these full paths are shortened with tildes when possible.
Click any tag on the left, below root, and immediately see what files have that tag on the right. Use the tag sheet to inspect (and modify) the tags of any file.
How to Change Things
File tags can always be modified on a per-file basis. But files can also be dragged to effect changes in bulk.
Select the files you want to modify on the right. Then choose what tag on the left you want to deal with. There are two options here, involving the Command (⌘) key.
By default, Rixtag will add the drop target tag to the files you selected. You should be able to see this with the '+' that accompanies your cursor. But hold down the Command (⌘) key and that '+' disappears - and a drop will not add to the current tags of your files, but replace them.
Easy! You're always prompted first anyway, so you have a chance to back out. Mechanical or human errors, etc.
Dragging to Root
Dragging files to root is a bit special. You'll notice, if you try, that you never get the '+' image with your cursor. A drop on root removes all tags on selected files. But no worries - you'll be prompted.
Tag modifications are always immediately written to disk.
The Tag Sheet
The tag sheet has three command buttons: Add, Remove, Close. Their functions are self-explanatory. But their keyboard shortcuts aren't necessarily. For Add it's Return/Enter, for Remove it's Delete of course, and for Close it's either Escape or Command-. (command-dot). It should be very easy to apply tags to files in quick succession.
How They're Stored
Rixtag tags are stored as extended attributes (XAs). They're stored the same way as Apple's - a property list array (in binary XML format).
This means - in theory - that it can be easy to switch the XAs used. (A future Rixtag utility is planned - will make it possible to convert Rixtag XAs to Apple, vice-versa, and/or add them together. The ACP already has apps that accomplish the equivalent.)
A Question, not an Answer
Rixtag not so much provides an answer but asks a question, and this question is a matter open to debate. Do we not need to rethink how we categorise and store our personal files? A home directory with tens of thousands of files is not a rarity. We have rudimentary possibilities through 'Documents', 'Movies', 'Music', 'Pictures, and we can certainly make our own directories, but is that enough?
Are file names (part of a path of MAX_PATH length) descriptive enough?
Google Desktop didn't do it, Spotlight leaves a system disk ravaged but doesn't do it either.
Don't we need something more, something addressed to the current situation?
Not to speak of terabyte-sized external drives...
Rixtag is currently available only to registered users (paying customers). It may be put into the free 'Test Drive' over time, but this takes additional work, and we're pretty much in need of a Miller Time™ right now. The Rixtag project - which has gone under other names, such as RxMeta, Tagways, Tagwise, Tag App, Tag Organiser, Tagger, Taggart, Tag Thing, and Xtag - has taken over three years from design to implementation. Not many people believed in the product three years ago, with one illustrious exception, and we're not sure ourselves that it'll fly.
But the only way to find out is to get the product out there and let people see for themselves.
[Sign up at the Rixstep Forum if you want to get in on the discussion. You can't be concerned about sugared water all your life.]
Industry Watch: Rixtag