Transcript of talk: "Beyond Hierarchical Data: Search and Meta Data as Fundamental Interface Elements"

KDE Contributor and Developer Conference

Notes taken by: Jonathan Riddell (these are not official material)

More information on the talk can be found here

We've outgrown the traditional model for hierarchies. There used to be only a few thousand files or a hundred settings for an operating system. Is there something we should change? Scott currently has about 30,000 files in his home directory, which makes finding things difficult. On the Internet things used to be hierarchical, with FTP, Gopher, and Yahoo all following this model, but that quickly became obselete because there was too much data, and were replaced by, for example, Google, which makes things easy to find even amongst billions of documents.

KControl, Windows Registry, Konqueror File Manager, Windows Control Panel and GConf are all hierarchical. We now find it easier to find information on the web, amongst billions of documents, than on our own hard drives, or even sometimes in the GUI of KDE applications!

Scott defines meta data as anything we know about the document, be it the title, any datafields e.g. MP3 tagging, and also data that can be extracted or implied from the contents of the file.

Settings are very hard to find in KDE (and other environments), even for developers. We can either remove settings, hide them (Windows Registry, GConf) or come up with a better way to approach them. Hiding them helps users who didn't use many of the settings but doesn't help those of us who were able to hunt around or memorise settings.

The solution is search, which needs crawling, indexing, ranking and displaying. Crawling for files can be done with KIO which also has some metadata support (but not much). Indexing can be done with KFileMetaInfo. Ranking is by far the hardest element - by occurrence is easy but not the best way. Displaying search results should be integrated into standard file and settings tools, Konqueror and KFileDialogue; they should not be something to add to the existing interface, but rather the primary interface (this is planned for KControl, an example Scott highlighted). For example, Apple has announced Spotlight but that is a separate tool, not integrated - KDE should be integrated.

One hurdle is that when saving, a dialog should prompt the user to add metadata as well as the filename. Text highlighting can help make this easier. A further problem is that on the desktop, unlike on the web, there are no links; directories are the closest we have but they are a bad way to indicate relationships, especially when they become complex.

Scott is mostly talking about vapourware at the moment, he would like to have something ready to use by KDE 4.