Never ever ever ever ever ever let yourself get sunburned on that skin over your achilles tendon. It's so not fun. Now, one of them blistered in a curious way, and yesterday little yellowish fluids were leaking out. I felt like a sick robot.
As followers of this weblog may know, I've been interested in ways to manage my thoughts. For immediate use: the "what do I need to do to get these tasks done?"; for future use: "this is a good idea, I should write it down"; and for historical use: "Why did we do that? HOW did we do that?"
At present, I'm using a pair of tools on Mac OS X. For very rapid thinking / outlining / organizing, OmniOutliner cannot be beat. It's very lean and fast while remaining fairly flexible. But it's big advantages are: lean and fast. It's excellent for thinking through your to-do items: not only what you have to do at the high level, but to start thinking through them. It's also excellent for just thinking through a development proposal. But, it doesn't scale well to managing large documents as they start to grow over time. The software stays fast, but one starts to desire a higher level of organization.
I've found that higher level of organization in AquaMinds' NoteTaker. NoteTaker implements the full notebook paradigm, with custom window decorations (binder rings, section tabs). NoteTaker is composed of Sections and Pages, and each page can be an outline. This works well for moving outlines into larger structures. For example, I'm starting to keep an outline per project. With one project, I made a section for the next revision we were to deliver to a customer. In that section, I made a page representing each major change request. Then each page had not only the customers request, but outlines representing various implementation strategies that were thought out, or just tasks to do and how they were done. NoteTaker can also contain any file type, so a personal task such as "import this CSV file into the membership database" can contain a CSV file that was e-mailed to you. NoteTaker documents are NeXT style file system objects, where what looks like a document to Mac OS X applications is really a directory on disk, which contains many smaller files (and 'embedded' files).
NoteTaker also has the concept of "libraries" which let you open and navigate other notebooks that you specify (a library is a folder on the file system with notebooks inside of it). This aids in managing information that crosses multiple notebooks, and turns the collection of notebooks into a small database system.
NoteTaker also has an interesting "to-do" management system you can add to a notebook. When you add the special to-do section, a new page is created daily. Unfinished items from previous days are brought forward, in the same outline structure, while finished items from previous days (or leaf items not marked as "to-do") do not. This not only gives a record of activity on previous days, but helps in tracking what still needs to be done. A to-do page can be structured as an outline so that tasks that have to be done for different projects remain in that structure.
There's another level one would like to get to, wherein this data is self organizing, and sharable with a workgroup. In an upcoming entry, I plan to visit that issue.
* Note: There is an alternative to NoteTaker on Mac OS X that is very similar, which is Circus Ponies NoteBook. Ted Goranson compares the two products in his About This Particular Outliner column in the May 2004 edition of About This Particular Macintosh.
City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats! City Baby! City Baby! City Baby Attacked by Rats!
...
Rentzsch pointed out that there is a good way to get more information about what else will be offered in Mac OS X 10.4 that doesn't violate any NDA - looking at the public conference session descriptions. One that is particularly of interest, for me, is Core Data, described as:
This session provides an overview of the new Core Data framework in Cocoa. It will focus on the new functionality provided for managing and persisting model objects, which includes automatic undo/redo, input validation, and saving to various types of "persistent stores" (SQL and XML).Sounds like a new and lighter version of Apple's grand old Enterprise Objects Framework, which basically only exists inside of WebObjects these days. Of all the object-relational frameworks I've looked at over the years, EOF still has the best design in my opinion. It's nice to see something like this offered to desktop and enterprise developers again.
WWDC 2004 Conference Sessions Listing, viewed 6 July 2004
Also of interest is a session about HTML Editing with WebKit. At first I thought this meant that Safari users could finally take advantage of web based rich text editors like Kupu. Looking at the description, I'm now hoping that there will be a common HTML editing component that applications like desktop Weblog / LiveJournal editors can finally use.
In the mid-nineties, there were two promising developments in the realm of desktop data management. The first was OFS, a core technology for the next generation release of Windows NT code named Cairo. The second was BFS, the file system layer of the BeOS. Cairo never arrived, and while pieces of its technology stack have found their way into subsequent releases of the Windows NT family, the OFS never materialized. The BeOS never gained significant market share, and was ultimately bought up by Palm and its technologies are finding their way into Palm OS releases.
What the Cairo and BeOS promised (and BeOS delivered) were new ways of dealing with your files. The BFS allowed and tracked extended attributes, popular examples being email headers and ID3 information in MP3 files (artist, etc). Right in the tracker (the BeOS "Finder"), one could view, sort, and search on these attributes. Windows has allowed this sort of thing slowly over time with specialized folders, but full dynamic querying of such data doesn't yet exist. Cairo's OFS (Object File System) was supposed to remedy that, in part. OFS, as far as I can recall, was meant to tie your data together using more virtual folders than physical ones. For example, one could have a folder about Money, and not only have portfolio and Quicken files show up as members, but a certain Pink Floyd song as well.
It's now a decade since the BeOS was first announced, and about a decade since Cairo started showing up in industry rags. A lot has happened in the meantime: the Internet landed; Apple bought NeXT and went through a major corporate and operating system overhaul; Be was disbanded; Linux and Open Source Software showed up to provide an alternative to the powers that be; the dot-com boom came and went; Google changed the concept of search; and so on. But there's still no good rich system-wide desktop data management experience. Until now.
Like ten years ago, we're looking at a big major next generation version of Windows, code-named Longhorn, which promises many new technologies. Among them is WinFS, a new storage layer that integrates not only file data, but other data (XML, Relational) as well. One video talks about how Outlook Express (Longhorn) uses WinFS to store mail messages, using a common public schema, and how other applications might be written to query that data without going through Outlook Express. Since there's a public schema, other mail applications (Eudora, ThunderBird) could, in theory, store their messages in Longhorn in the same way and all queries against that data would work regardless of the mail client used to retrieve them. Other interesting examples I've seen of Longhorn technologies includes this screen shot of communications history with a contact, where all calls, chats, and e-mail messages with an individual are displayed. This is stuff that was once in the land of big Information Managers but is now coming to the general desktop for system wide use.
Things have not been quiet over at Apple either. Apple hired Dominic Giampaolo, whose self admitted claim to fame is writing the Be File System (his excellent book about the BFS and file system design is available free in PDF form now), which caused much speculation about the effects that would have on Apple's file system, storage, and search technologies. The effects first showed up in Mac OS X Server 10.2.x with journaling, which is now a default feature of Mac OS X 10.3. But we were still wondering if a smarter system wide search technology was coming. There have been hints of it. iTunes seems to drive a lot of Mac OS X now - Steve Jobs likes to say "and bla bla bla, just like in iTunes!". In Mac OS X 10.3, a fast search bar was added to the new metallic Finder windows, showing fast search results "just like in iTunes!". As I watched this feature be shown, I wondered when we'd see something like 'Smart Playlists' - dynamic collections based on a search criteria that update automatically.
It's finally coming, as long hoped and wished for, in Mac OS X 10.4, also known as Tiger, using a new search system called spotlight. Spotlight combines file searches, full content index, and metadata searching (extensible via plug-ins) to find its results. The system wide search shows top results in a menu-like widget, which can be expanded to a full window with a wide array of sorting and grouping functions. The spotlight technologies can be used inside of applications, or extended with importers, to create a flexible system. As someone who keeps notes in a variety of applications, such as OmniOutliner, NoteTaker, and occasionally in sticky notes and plain/rich text files, I've long been wanting to be able to search all of those files for a particular project whenever I'm in a brainstorming meeting and have that "I've thought about this before!" moment. At the home studio, where audio files can sometimes branch wildly out of control, I've long wanted smart folders to help me keep track of recent works, or to find all files I've labeled 'Go!' or 'Possible?' when I'm putting together plans for a show or release. Current search features in Mac OS X 10.3 allow me to do this sort of query, but I have to do it manually every time - I can't even save the search criteria! But finally, in Tiger, I can.
What I don't understand is - why did it take so long to get to this point if there were practical implementations and desires for it ten years ago?