Successful Information Organization Structures
Classical file systems have directories and files arranged in a tree.
Directories have dual roles: they contain files, and they provide a namespace for files.
File systems are frequently criticized, but containment and namespacing are critical features, so I don't believe they will ever go away.
The most prominent feature of wikis is the emphasis on naming and ergonomic linking, that is, links between pages can be created easily.
Some wikis provide backlinks, but for some reason these are usually not featured prominently.
Blogs put (reverse) chronology center stage, and have been hugely successful with that simple device.
Outlines, like directories, provide containment, but unlike directories, no namespacing.
Outlines are most useful for their graphical properties: collapsing stuff you don't want to see, and expanding stuff you want to see.
Databases' main features from an organizational perspective are that they usually store complex objects (tuples, documents, ...) and provide sorting by attribute and sometimes more complex queries.
Unlike the other systems, databases are usually of no use for ad-hoc work, and instead require programmers to create a user interface for the stored information.
Tagging systems associate keywords with items, and can return all items with one or more keywords.
Tagging systems can be viewed as a special case of search engines that only index terms the user has chosen for indexing, which leads to interesting social effects and good results in many cases (cf. Delicious).
Search engines take in a corpus of unstructured documents, and answer similarly unstructured queries, and usually employ ranking, such as PageRank.
Search engines are different from all the other systems, in that they don't require the user to organize information herself, but rather impose some organization of their own.
Systems that support typed links allow items to be connected arbitrarily with edges, and to follow incoming and outgoing edges from an item.
Spreadsheets (I can't believe I forgot those in the first version!)
Spreadsheets let you put data into a two-dimensional row/column form, and then filter, sort, and otherwise manipulate the data. Spreadsheets also come with formula libraries for doing a lot of different stuff.
Spreadsheets are often abused, but still a major workhorse of information organization.
Many attempts have been made to combine one or more of the above structures:
Outline + Database
Many advanced outliners let users add attributes to items, which are displayed in columns.
Wiki + Blog
"Bliki" systems are wikis that usually display a blog on their front page.
File System + Database
An example would be BeFS which indexes user-defined attributes on files.
Search Engine + Database
The goal here is to extend a search engine so that it can also answer queries for attributes of items, and interpret e.g. numeric attributes.
Wiki + Database
Wikis with database functions allow users to add attributes to pages, upon which one then can sort and filter pages.
Anything + Tagging System
Anything + Search Engine
Tagging systems and search engines can easily be added to any other structure.
Can we combine them all?
File System + Wiki + Blog + Outlines + Tags + Typed Links + Spreadsheet + Database + Search Engine
Let's get rid of wikis and blogs:
So, if we provide simple linking in the user interface, and keep file system and database functionality, we can drop wikis and blogs from the list.
File System + Outlines + Tags + Typed Links + Database + Spreadsheet + Search Engine
Let's get rid of outlines and tags, shall we?
This means, if we keep typed links, we can drop outlines and tags from the list:
While we're at it, we can also drop spreadsheets from the list, as
Note that this doesn't cover every (ab)use of spreadsheets, but should do for now.
Super-Structure = File System + Typed Links + Database + Search Engine ???
To be continued...
(Yeah, I know, this isn't super-convincing just yet.)