Like everyone else, I need to keep track of lots of bits of information. Some of those bits are as simple as the brand of salad dressing my wife likes; others are as complex as an outline for a multi-year project at work. Whatever the size, origin, and purpose of these bits, I keep track of them all by saving them in a reliable system of plain-text notes--a system that enables me to find any bit of information whenever I need it, in a form that makes sense to me when I do.
This system is based on two simple principles: All notes are saved in plain-text files, and I follow some basic but strict guidelines for creating and storing them.
What is a note?
For starters, I clearly distinguish between notes and tasks. For me, a task is something that requires action. I am an OmniFocus user, and all of my tasks are stored there.
Notes, on the other hand, contain a single idea or a concrete plan. For example, I have one plain-text note containing a list of my favorite books and another one for the books I want to read in the future. I have a note that explains how to reprogram my car stereo when my battery dies, another with the measurements of all of the rooms and furniture in our house (furniture shopping sometimes happens unexpectedly).
My system is largely based on many short notes, each one simple and specific, rather than a bunch of longer ones. But those short notes can be aggregated and searched, forming a complex network of related information.
The tools I use
I store all of my notes on Dropbox. Doing so means I can get access to them from any computer or iOS device, and via the Web; I also get version control (through Dropbox's history and restore functions), which has been a lifesaver on those occasions when an application eats my notes. While iCloud is becoming a more common cloud-syncing option among text editors, it still has a long way to go to be as ubiquitous and reliable as Dropbox.
All of my plain-text notes are saved in a single Dropbox directory titled, oddly enough, Notes. Storing all of my plain-text notes in a single directory means that I have just one place to search for whatever I want.
Using that single repository also makes it easier to use a variety of text editors. I create and search for notes on three kinds of devices--my Mac, my iOS devices, and my work PC--and I use Dropbox-enabled text editors on all of them.
On my Mac, I use NVAlt fork of Notational Velocity. I can find any note in my Notes folder on Dropbox using the NVAlt omni-search bar: NVAlt can search both a note's title and its content. NVAlt also supports OpenMeta tags for use with applications like Tagit.
On iOS, my primary app for taking and finding notes is WriteRoom from HogBay software. The app is simple and fast, but its best feature is that (like NVAlt) it can search the contents of all of my notes. WriteRoom is universal, so I can use it on my iPad and iPhone.
I also use Nebulous Notes on my iPad. It doesn't search as well as Writeroom, but it has a powerful supplemental keyboard row which makes me more efficient when writing.
On my Windows PC, I use the TextDrop web app. TextDrop can be configured to use any Dropbox folder, and it provides MultiMarkdown previews (see below). While TextDrop does not do full-note text-searching, it can search titles. It can also give each note its own direct URL for bookmarking.
How it actually works
Given those tools, here's how my workflow typically goes:
Let's say I'm on the way to work in the morning, and remember that I need to start planning a birthday party. I grab my iPhone, open WriteRoom to create the following short note:
Actual on October 10
Celebrate on October 13
Later that day, I'm at the office and lunchtime rolls around, so I grab a couple of seconds to get back to my party-planning. I jump into TextDrop in my Windows PC's Web browser and starting compiling a guest list. Because I don't want to pile all the party details in one long note, I create a new one just for that list:
Michael Birthday Guest List
- Kevin and Judy (+2)
- Don and Courtney (+2)
That evening at home, I'm sitting at my Mac and open up NVAlt to create a list of gift ideas. Again, I don't need to find my other notes or figure out where to insert the new information; I just create a new note for gifts:
Michael Birthday Gift Ideas
- Toaster Fridge
- iPhone case
- New keyboard
- Macworld subscription
As the weeks go by, I build up a collection of similar notes for other party details--party invitation text, a grocery list for birthday-cake ingredients, and so on. Each of those notes is independent of the others, but together they all form a project. The key: they're all connected by metadata.
You'll notice that each of those notes contains material--often set off with punctuation such as @ and _--that isn't part of the note body. That's metadata.
For example, I add the date the note was created. The files' time-stamps may not be reliable long term, especially when syncing through an online service like Dropbox. So I insert a date of my own at the top of each note. I also include information there to establish context. For example, my birthday party notes are have _party in a Project field. That lets me search for all notes with that string and see all notes related to that project.
I also follow MultiMarkdown syntax in my notes, which provides rudimentary formatting in plain-text and makes it possible to convert such text to HTML, Microsoft Word, PDF, and other formats. MultiMarkdown defines some standard document headers; in the notes above, date: is one.
I add tags to notes, too, to identify those notes more specifically and make them easier to find. I use a limited number of tags in note titles but many more in note headers. The latter are the strings prefixed with @. Some of my common tags are @work, @home, @recipe, and @Mac.
Perhaps the most important bit of metadata for any note is its title. I have one rule when I give a note a name: The title must serve a purpose in the distant future. It should tell me something about what's in the note long after I've forgotten writing it. A title like Cake is relatively uninformative, but a note entitled Birthday Cake Recipe for Michael is easier to identify.
Never toss a note
One final comment. I rarely delete a note. If I am done with one, I move it to an archive folder. Why keep all of those old useless notes? Because I may need them someday, even if I don't need them now.
So, for example, I'll archive my notes about Michael's birthday, because it will make planning next year's party that much easier. My entire archive currently amounts to about 3MB. By moving the notes when I'm done with them, I limit the library of active notes I use every day, but I still have access to the old information at any time.