|Home » Learning Curve » Developers Workshop
Documents, Movies, Music, and Pictures
Rixtag pretty much covers it all.
The subdivisions of the user's home area on Apple's computer OS were propitious. Steve Jobs talked of the 'digital hub', and the four directories Documents, Movies, Music, and Pictures encompass about all one needs in the way of 'user storage'. Most modern desktops include Desktop, normally a chaotic matrix of most anything. They also include Downloads, a way station for things not yet moved to their proper place. Documents, Movies, Music, and Pictures pretty much cover it all.
Apple user apps for photos and music can be of help in sorting through large collections, but their on-disk arrangements are dubious (and often unnecessary). Documents, Movies, Music, and Pictures pretty much do all that's needed.
What else is needed - but not much in general use, at least not yet - is a generic system for sorting and categorising files of any use - including the four above-mentioned categories - but also including directories, spreadsheet files, rich text files, word processing files, PDF files, HTML files, and the like ('documents').
In all other cases, the organisation is straightforward.
Plain text files
Rich text files
Word processing files
MP4 files (and similar formats)
MP3 files (and similar formats)
ICNS files (why not)
And so forth. Most everything fits in one of the above four categories. Either you read it, or listen to it, or look at it. And should you look at it, what you're looking at can be either stationary or moving. (We call 'moving pictures' 'movies' for short.)
(We can't yet taste or smell files, so that's nothing to worry about for now.)
Using technology like Time Machine may not be to your liking (and it doesn't do the same thing). This lab assembled close to 140,000 files over the years, files we want to keep, yet almost never look at or reference today. From one day to the next, the 'categorisation' of the new files changed - from storing by date, to storing by user, and so forth.
All these issues were solved with the use of tags.
ACP tags (using Rixtag) are of any length and text only. The number of tags attached to any file is unlimited. (This was a key part of the design, a genuine hurdle in implementation.)
The tagging system is designed to be flexible. Descending on legacy file system hierarchies imposes no obstacle to sorting correctly: once the files are tagged, they can be moved anywhere. The only obstacle is filename collision. This perhaps presents the biggest delay in getting things in order.
It's possible to combine on-disk directory hierarchy with tagging. The one caveat, to be taken separately, is of course source code. Source code projects must be kept intact. They're not 'user files' anyway in the common sense of the term. Yet source code files are essential - without them we wouldn't get the chance to create tags!
Tags are stored via the extended attribute mechanism. This is endemic to Apple file systems, and sorely lacking on other platforms. Extended attributes are an evolution, in OS X 10.4, of the old 'MacOS' Finder info and resource fork, both of which remain, for the present, as 'special cases'. In all other respects, extended attributes are whatever an application wants. (Yes it's possible to embed sound or movie or image files presumably.) Though tags mightn't be portable across file systems, this isn't a drawback, as each user may have different ideas for applicable tagging. Yet between compatible Apple file systems, this remains an opportunity.
The key is the name of the extended attribute itself. Current versions of Rixtag use a proprietary name. Future versions of Rixtag can offer conversion possibilities, depend on how this technology evolves.
The basic idea - the basic need - is to be able to sort arbitrary files in a way that's not constricted by an equally arbitrary directory structure. Sorting music files by artist, then by song or album name, then by track: this may seem sensible, and up to now seemed obvious, but what happens, for example, with duet collections? Or what happens if users want to sort their songs by release year? Or month? Or studio where recorded?
Tagging eliminates all such issues.
Rixtag tags are not hierarchical: this was also a fundamental design decision. Some tags are not more equal than others. Try to introduce hierarchy into tagging, and you suddenly find yourself in the same quandary whence you recently escaped. All tags are therefore equal, making for a facile lateral inspection.
ACP: Rixtag: This is how
Industry Watch: Rixtag: A Long Time Coming
Learning Curve: Personal Storage, Google, Tags
Industry Watch: prMac: macOS Tag Editor Offers a Better Way