I've been thinking about GUI design for a while and I came up with a few conclusions about file managers. I believe that the tasks a user performs in the file manager can be divided into three tasks.
- The one I will focus on in this article is document management. What I place into this term is essentially the navigation or actions involved with finding, organizing and opening documents.
- The second task is application launching. There's a little overlap with document management as media-related applications are usually launched by their associated documents instead of by the executable directly. Apple's Dock is a fairly underpowered, but effective handler of application launching. Various third party apps also give alternatives to more effective application launching.
- The last is actual file/folder management. In this case, I mean moving, copying or deleting files and folders around on a system or to shared file systems.
The disclaimer for the entire article is that it is based on what has been publicly shown for Leopard. There's a possibility that Apple has elements that they haven't shown or have planned and not yet completed.
Originally and continuing into today, document management consists primarily of folders/subdirectories. A person might dump all of their school papers for 2005 into a 2005 folder. All of their history papers might further go into 2005/History. The purpose of this organization is to reduce clutter and to make it easier to find a document later. Thus, also, the traditional encapsulation of document management by file management.
There's been a minor shift recently towards using search to either replace or augment the need for this type of organization. Spotlight and other similar technologies on other OSs make it easier to find specific files without having to delve through trees of folders. I'm not that fond of this shift myself, but it appears to work well for some people as a few keystrokes gets them to their document.
However, search is direct. In the case of Spotlight, it's really to open documents as there are a few extra steps needed if you want to do file management on something it finds. Additionally, I think there's still a lot of benefit to being able to browse through documents. This is presumably the principle behind preview icons and Cover Flow which is about as flashy a browsing method as one can get. Browsing also is needed if you want to do file management. If you are looking to copy a bunch of files to a flash drive or onto an NFS.
I believe an iTunes-like interface makes the most sense for this kind of operation. And when I think iTunes, I'm thinking of meta-data management which unfortunately appears to not be something that's going to appear in Leopard. Meta-data is what people are really applying via their folder hierarchies and file naming schemes. Much like how an mp3 in iTunes could be named 01-dontdownloadthissong.mp3, but have artist, genre, album and other information associated in iTunes, any random file could have some set of meta-data that would help organize it.
OS X currently has minor support for this in the way of Spotlight comments that can be set on the information view for a file. But it doesn't appear that Apple is taking it any further at this time.
So what would extended meta-data handling in the finder give you? For starters, if it followed the iTunes interface, setting meta-data on mulitple files would become very easy. Just select a group of files and you would be able to change the information on all of them in one dialogue. Another benefit would be even more powerful smart folders/smart lists.
A killer feature I'm thinking of would be the ability to specify specific meta-data columns to use for a specific folder. Let's say you made an e-book folder to hold various pdfs or text files. Then in addition to whatever standard generic meta-data tags a file would have, you could define publisher, author, genre, rating. That folder would then turn into a mini-iTunes for ebooks.
I will cut Apple some slack as there's a big problem that would put a damper on all this meta-data tagging. That is namely that there is no good way to transfer meta-data around the internet. Locally, meta-data can be stored in the resource fork, but without a reliable and/or standardized way to transfer the resource fork, any meta-data on your system gets lost once it's off your system. But all the same, the ability to have it on the local system would still have a lot of utility.
Here's hoping for 10.5.x or 10.6 I guess.