In our perpetual journey towards better ways of storing and retrieving information, a simple text-snippet keeper like iData Pro, discussed in TidBITS-675, was merely a side trip to a simple, restful pool. Now we rejoin the main trail, clambering up the slippery Relationship Rocks beside the pounding falls of Content Cascade, ascending the heights to survey in one massive view all the surrounding countryside of hierarchies, hyperlinks, keywords, to-do lists, and snippets of every kind.
As you can tell from the extended metaphor of the previous paragraph, I'm excited. And what I'm excited about is a Mac OS X program called NoteTaker, from AquaMinds. NoteTaker is an outliner, a writing tool, a categorizer, a snippet keeper, a presentation tool, a Web site maker. It can organize your thoughts, your files, your life. Its potential seems vast, and everyone will use it differently. Remember the feeling of wild surmise when you first mentally glimpsed the possibilities of HyperCard or Apple events? NoteTaker is like that.
NoteTaker is a descendant of a NeXT original called Notebook; and as an added complication, it isn't the only one! Another descendant, NoteBook from Circus Ponies Software, made its debut just as I was finishing this article. I'm sure there's one heck of a story here, but this article won't be about that, and it won't compare the two products. I started using NoteTaker first, and that's what this article will describe.
Outline -- NoteTaker is an outliner, so let's start by reviewing what an outline is. An outline is a way of arranging pieces of text not just linearly but also hierarchically for ease of viewing, rearrangement, and retrieval. Each piece (called an "entry" in NoteTaker) is either at the top level or subordinate to some other entry. An entry's subentries can be hidden ("collapsed"); this makes it easy to view as much or as little of the outline as needed at the moment. If you move an entry - by cut-and-paste or by dragging - all its subentries travel with it.
NoteTaker as an outliner is pretty good, though still not as good as MORE, the gold standard. For example, it lacks promote and demote features. It doesn't behave as conveniently as MORE when you create a new entry. Until recently, it didn't even have a keyboard command for moving an entry up or down. Navigation and manipulation of entries are now implemented fairly well, but since NoteTaker is explicitly inspired by ThinkTank (MORE in its earliest form), one would hope for a better appreciation and implementation of its virtues.
A NoteTaker entry can consist of multiple paragraphs, and you can easily split an entry into two (though you cannot merge two entries into one, as in MORE). These paragraphs can have formatting - tab stops, justification, line spacing (again, like MORE). NoteTaker lacks MORE's superb system of "rules," which rationalizes such formatting on an outline-level basis; but it has the built-in Cocoa capability to copy and paste paragraph formatting. And every paragraph of a multi-paragraph entry has its own formatting; thus, NoteTaker doesn't need MORE's distinction between "topics" and "paragraphs," since an entry consists of paragraphs already.
In fact, NoteTaker will accept just about anything as an entry. You can paste in styled text or a picture. Drag in an Address Book entry: NoteTaker will parse it into an outline. You can draw directly into NoteTaker using Inkwell. You can even record a voice message, directly within NoteTaker; it's saved as an MP3 file as part of the document.
Links -- An entry can be a hyperlink to another entry, in the same or another NoteTaker document. To make a link, select the first entry and choose Link To Entry; a floating palette appears. Now go to the second entry, select it, and click the Link button on that palette. The first entry is now marked as being the source of a link; click the button to its left and you navigate instantly to the second entry. The only downside is that an entry that is a link must not have any subentries, a rather silly limitation.
Links also allow your document to relate to the world around it, meaning other files on disk as well as the Internet. An email address or a Web URL is automatically recognized; click it to send the URL to your preferred email program or Web browser. If an entry is a Web URL, you can even view the page's content rendered right within NoteTaker, provided it's a fairly simple page.
Drag a file from the Finder into a NoteTaker document, and you've got a link to it (though NoteTaker stores the link as an absolute path, so if you move the file in the Finder, NoteTaker loses track of it). In many cases, this link is displayed with extra information. If it's an image file or single-page PDF, you see the image. If it's a movie file, you can play the movie. If it's a sound file, you can play the sound. And in any case, you've got a link to a file on disk, which you can treat as if you were in the Finder: you can open it, you can drag it to the Finder to make a copy, and you can Option-Command-drag it to the Finder to make an alias. If you hold down the Option key as you drag a file into NoteTaker, it is copied right into your document (and is then called an "attachment"); this is possible because a NoteTaker document is a package, a folder that looks like a file. Thus you could use a NoteTaker document as a kind of suitcase, storing other files of all sorts.
Marks and Categories -- You can mark an entry in various ways. For example, there's a mark called Flag; an entry is either flagged or it isn't. There's a Command key shortcut to toggle an entry's flagged state; alternatively, in some situations you can double-click to the entry's left. Whether or not an entry's flagged state is visibly expressed is up to you. To the left of every entry is an area where you can show or hide any of several columns. If you choose to show the Category Icons column, a flagged entry has a checkmark in that column. An obvious use for this would be as a to-do list: when you've performed an item, flag it so that it has a checkmark. But even without being visible, marks can be useful; for example, there's a way of searching for them.
The second type of mark is called Priority. You get three priorities: Low, Medium, and High (or None). If you mark an entry as having a priority, then if you show the Priorities column, you see an L, M, or H in that column. Again, this could be useful for a to-do list, and again, you can search by priority.
A third type of mark is the Date. Every entry is assigned the current date on creation, and the date when it was last changed is maintained as well. You can also set either of an entry's dates manually; that date then stops updating automatically, so you can associate dates with entries in whatever way you like. You can see either set of dates by showing the Date column, and you can search by date.
Things start to get hot with the fourth type of mark, the Category. This is simply a keyword; that is to say, it cannot be any old word, but must be chosen from a list maintained at document level. Every document comes with some built-in categories, but you also get to define your own. If you show the Categories column, you see the category assigned to each entry. An entry cannot have more than one category, and like the other columns, you can search by category.
Under certain circumstances, NoteTaker assigns categories to entries on creation. For example, if you drag an image file into a NoteTaker document, the resulting entry is assigned to the Image category. If you drag in an Address Book item, the resulting entries are each assigned a category corresponding to their original Address Book field: Full Name, Email, X-Aim, and so forth.
Categories become even more powerful in conjunction with Templates. A template is simply boilerplate, letting you insert often-used information rapidly into your document. Such boilerplate can consist of a hierarchy of entries (possibly empty) with categories. This is NoteTaker's equivalent of WebArranger's wonderful capability to let an outline entry be a specific kind of entity with the fields appropriate to that entity.
For example, let's say you want to maintain a list of your friends and their favorite flavors of ice cream. You would define a category Friend and a category Ice Cream, make two empty entries where one is a subentry of the other, assign one entry to the Friend category and the other to the Ice Cream category, and turn them into a template. Now, at any time you can insert that template anywhere in a NoteTaker document, and presto, there's a blank Friend with a blank Ice Cream subentry, ready for you to fill in the data. NoteTaker comes with one template, Contact, which inserts categories like Name, Address, Phone, and Email, so any document can be used as a contact manager right away.
Pages and Sections -- A NoteTaker document as a whole is based on a notebook metaphor. It consists of multiple outlines; every outline is a page of the notebook. Every page that you create consists of a new outline, and you can give the page a title. Pages are clumped into sections; you can create a new section, and you can give it a title. The section titles may be viewed as tabs sticking out the side or bottom of the document, and you can click a tab to navigate instantly to the start of that section. Individual pages can optionally have tabs too - useful if you must navigate frequently to particular pages. Keyboard shortcuts let you navigate to the first, last, next, or previous page or section. Plus, from any page you can save a "page mark" file, which is essentially a bookmark, a link that lets you navigate instantly from anywhere (meaning the Finder or another NoteTaker document) to that page of that document.
Now, you might say that pages and sections are really just outline entries in another guise: they merely add another couple of levels of hierarchy to the organization of the outline. That's true, but it doesn't mean they're just fluff. It's useful not to have to deal with all your information at once. True, an outline is collapsible, and many outliners (including NoteTaker) let you temporarily hide those parts you're not interested in; but even so, a multi-outline document sometimes feels better than one big outline. It's nice to be able to put some kinds of information off on a page of their own, where you don't have to come in contact with them until you need them; for example, rather than interspersing images with text in an outline, you could have a page of images, and link from the text to the relevant image.
The metaphor of pages and sections leads to the further metaphor of tables of contents. NoteTaker creates and maintains these for you automatically. The first page of any NoteTaker document is a complete table of contents, listing every section and page; the first page of any section is a table of contents listing every page of that section. The entries here are links, so you can navigate to any section or page instantly. (Unfortunately there's no keyboard command to navigate directly to the table of contents for the section you're currently in.) To rearrange pages or sections, you move the entries in a table of contents.
Hunting and Gathering -- You can find things in various ways. First, there's a normal word-processor find, which just cycles through the document looking for the next occurrence of a given bit of text.
Second, there's a global search, which finds by text, by flagging, by category, by priority, and by date. The results of a global search can be perused in two different ways. All found entries can simply be highlighted (marked in yellow), and you can cycle through the document from one highlighted entry to the next. Alternatively, found entries can be copied; a Summary section is created at the end of your document, and the copies are placed in a new page there. The whole feature is strongly reminiscent of MORE's Mark and Gather; the NoteTaker name for it, Highlight and Summarize, even says the same thing in different terms. Unfortunately the gathered copies are not links, so there is no way to relate what was found to the document itself.
Third, your document can have an Index section. This appears instantly when you ask for it, so I suspect that it is constantly being maintained behind the scenes even if your document isn't showing it. Each page of the Index is an outline consisting of links to entries of your document, filtered and clumped in different ways. There's a page of links by priority (that is, a link to each low-priority entry, then a link to each medium-priority entry, then a link to each high-priority entry). There's a page of links by category. There's a page of links to all email addresses and Web sites in your document. There's a page of links by date. There's a page of links to every entry that's a document link, arranged by file extension. And there's a word index - that's right, every word of your document is indexed! Unfortunately what you're shown here is a page number, not a context, so finding the passage you were looking for can be rather clumsy.
What's Doing -- Although I've used a to-do list as an example of how you might use certain NoteTaker features, you don't have to implement this yourself, because NoteTaker does it for you. You ask for a To Do Section, and a section is created which has some magical properties: every day, a new page is created and titled with that day's date, and all unflagged entries from the previous day's page are copied to it. Thus you have an ongoing daily list of tasks. Of course, you could also deliberately misuse this feature as a diary - take advantage of the automatic daily new page, and flag each day's entry so it isn't copied to the next.
Pathways In and Out -- NoteTaker provides a number of ways to move information into and out of a document (besides cutting and pasting, of course). For getting information in, the most impressive is the Clipping Service. From any page in a NoteTaker document, you choose a menu item called Create Clipping Service. Now you can close the document and even quit NoteTaker if you like; the Service you've created exists independently (in your ~/Library/Services folder). In any application that can see Mac OS X services, an item appears in the Services submenu of the application menu; choose it, and the currently selected text is copied into that page of that NoteTaker document. Since Carbon applications mostly don't see the Services menu, AquaMinds also provides a contextual menu item that accesses the same functionality. They describe this as a beta, but it seems to work decently everywhere I've tried it.
You can also create a search service, which allows you, in some other application, to look for selected text in a particular NoteTaker document. If the text is found but isn't the occurrence you wanted, you can repeat this action to look for the next occurrence, or just stay in NoteTaker and do the rest of your searching there.
You can view your document as a "slide show," which is really just your same document seen in full-screen mode; there are no scrollbars, so pages need to be short, but everything else works, including links, QuickTime movies, and so forth, so you could use a NoteTaker document as the basis of a multimedia presentation.
Let's Get Personal -- You might be curious about how I use NoteTaker. In part I use it just as a Mac OS X-native version of MORE, to plan and take notes on books I'm hoping to write, to compose talks, and so forth. But that doesn't really take advantage of NoteTaker's special powers. More interesting is how I used it to structure and track my activity while I was doing some custom Cocoa programming for a corporate client. As a feature specification or bug report would arrive from the client, I would drop it into its own NoteTaker page, along with any screen shots or other ancillary material. Then I'd go to the main page of my document, which functioned as a to-do list. Here I'd create an entry describing the problem, along with subentries containing my musings on how to proceed, plus a link to the page where the material from the client was stored. I assigned the main entry to the To Do category, gave it a priority, and showed its creation date. I continued the same procedure as I discussed the matter with the client, making additional notes of my own thinking, and often pasting entire email messages into the ancillary pages; thus I had an easily searched record of the whole conversation, tracing the evolution of the spec, so that I could prove later on, if necessary, that what I had done was what we had agreed upon. When I felt clear on how to proceed on an item, I gave it a subentry assigned to the Resolution category and described my decision. When the task was done, I removed its priority and flagged it, and added a subentry assigned to the Done category so that the date was recorded. In this way I knew at all times what most urgently needed working on and what the state of my thinking was on each task, plus I had complete documentation of the discussion, evolution and resolution of each item.
A Final Note -- NoteTaker's manual is rudimentary, vague, and anecdotal. The program has some AppleScript support; you can crash it by saying the wrong thing to it, but once you get the hang of things you can do quite a bit through scripting. In general, NoteTaker works pretty reliably and has a good Undo implementation, but things can go wrong, so do take advantage of its auto-save and auto-backup features.
NoteTaker is being actively developed, and many improvements will probably be appearing in future versions. If you're intrigued by NoteTaker's possibilities, now is a great time to try it out; the sooner you start bending it to your own purposes, the sooner you can provide feedback that will help shape its evolution.
NoteTaker costs $70, or $40 academic. A thirty-day demo is available as a 5.3 MB download.
PayBITS: Did Matt's review of NoteTaker help you organize
your important information? Consider thanking him via PayBITS!
Read more about PayBITS: <http://www.tidbits.com/paybits/>