My Remember The Milk Workflow

January 29, 2009

Remember the Milk is one of the most popular online “To Do” list web applications. In 2008, it won a Webware 100 reward in the productivity category. I’ve been using RTM to keep track of my daily tasks for about 7 months, so I thought I’d explain a bit about how I use it.

You’ve probably heard about David Allen and his book “Getting Things Done.” Although I haven’t read “Getting Things Done,” I’ve gathered quite a bit of info about Allen’s methods from around the web, and have learned a lot about how to build a personal productivity system just by browsing through the Remember the Milk user forums. Although there are other online task applications that offer more features—many that are even geared towards GTD—the “general-purpose-ness” of RTM has a certain sweetness to it that makes it my current choice. RTM doesn’t have many special categories to label your task with, but that’s okay: my system heavily relies on tagging. Not only does this make it easy to use and maintain, but it also gives me the ability to build an entirely new system without worrying about the application’s constraints, if I ever wanted to.

There are three foundations rules to my system:

  1. Every task in my system is either a lone task or a part of a project.
  2. Every task is either next, waiting, future, someday.
  3. Every task can only be done in a certain context.

The first rule should be rather obvious: everything that needs to be done either completes the goal or is part of a bigger picture. Single tasks get a “lone” tag, while tasks belonging to a project receive a tag called “-project_name.” Yes, the dash is supposed to be there. Preceding certain types of tags with special symbols is something I learned from the Remember The Milk forums. Part of the benefit of this is obvious when tagging: RTM’s auto-completing immediately shows me all my current projects when I type “-”; but it really shines when coupled with a few greasemonkey scripts I’ll mention later.

Before moving on, let me explain a few of my project conventions. RTM doesn’t natively support projects, but with another greasemonkey script, you can add that functionality. I won’t explain how to use the script here, since you can read about it from the links below, but I’ll say that you can have a project title, as well as sub-projects, and theoretically sub-sub-projects (but I haven’t had success with those). I declare project headings by giving them a priority of 1, although this isn’t necessary. I just do it so I can view all projects at once by searching priority:1. Then, sub-tasks have a priority of 2.

Bullet Two: A next action is either a lone task or part of a project. All lone tasks are next actions (if there were anything in their way, they would be part of a project). Anything that can be done in a project is a next actions. I denote next actions by using a priority of 3. They also require a context, an energy level, and a time estimate (which is the only one that is not a tag). The context is the important one; I have energy level and time estimate in there just for completeness, and because it was easier to build it in when I started than to put it in down the road when it really becomes useful. Energy level tags are @@high, @@medium, and @@low. A context is basically the environment you do a task in, or where it is done; these tags are preceded by @: I’ve got @web, @home, @email, among others.

There are two types of waiting tasks: secondary tasks that are waiting for me to complete primary tasks, and tasks that can’t be done until other people do certain tasks. I don’t specify the first kind in any way; when I’m waiting for someone else, my task gets a tag of “wait.” The difference between waiting tasks and future tasks is that future tasks have a specific date they are done on. This isn’t a due date: think of it as a reminder system. For example, 4 times a year, I do a “deep clean” on my computer; I don’t have to do anything for this until that time comes, so I have a task with a specific due date and a tag “tickler.” Setting this task to repeat every 3 months reminds me to keep my laptop running smoothly.

Finally there are someday / maybe tasks; these are things I may want to do one day, but aren’t current; they’re just ideas. Example from my list : Design a new cereal bowl.

This seems like a lot to think about when you simply want to list a task, but once you have it all implemented, the system does all the work. The key to it all is Remember the Milk’s best feature : Smart Lists. Basically a saved search, a Smart List is a list of tasks that have a certain criteria. For example, my daily tasks list is a Smart List that looks for tasks with a priority of 3 (next actions) as well as tasks due today or before today.

There’s so much more I could say about the way I use RTM, but I’ll end this by listing the greasemonkey scripts I use and show you a few screenshots.

Make sure to read the documentation for these if your going to use them; a knowledge of JavaScript would be useful too.

Remember the Milk without scripts

RTM_original

Remember the Milk with scripts

RTM_scripted

If you have any questions, please, ask in the comments!

Windows 7 Impressions

January 21, 2009

Well, it’s been a week and a half since the Windows 7 beta was released. I’ve been using it 97% of the time, with only short jaunts back to Vista about once a day.

Obviously, the biggest feature is the newly-endowed taskbar. It’s a whole lot easier to work with applications than in previous versions of Windows.  At the Professional Developers Conference, Microsoft’s principal design manager Samuel Moreau said of the new taskbar, “there is one face of your application; it is the place where we expect you to launch [the program], switch to your task, and be notified” (Design Principles for Windows 7). Instead of having multiple ways to get to an  vista-taskbar application (i.e., a desktop shortcut, a quick launch icon, etc.) for a certain program, you only need to have one, always-accessible button pinned to your taskbar. What’s interesting about this is that the functionality to pin a program to your taskbar has been in Windows for several versions, and a taskbar button for all open apps has been there since the inception of the taskbar in Windows 95. Now, Microsoft has merged these features into one. In the screenshot above, I’ve a single program open (Vista on top, 7 on the bottom); notice how the shortcut in Windows 7 has become the face of the opened app.

Another cool feature of the taskbar is colour hot-track.  Technically, this is a normalized colour color-hot-trackhistogram across 27 different buckets that extracts blacks, whites, alpha channels, and greys and uses the most dominant RGB value to paint the button with the mouse. Practically, this just lets the application shine through by using its icon’s colour in the buttons highlighting. 

Windows 7 makes working with many windows open a lot easier. To maximize a window, you simply show-desktopdrag it to the top of the screen, or use the keyboard shortcut WinKey + UpArrow. Have you ever been moving documents between two folders and adjusted both windows until they each took up half the screen? Windows 7 makes that easy: just drag your windows to the sides of the screen or hit WinKey + LeftArrow / RightArrow. The “Show Desktop” button is now more than a shortcut: it’s built into the far right side of the taskbar. Obviously, clicking it will bring you to the desktop, but just hovering over it will show you the desktop, as well as the outline of any open windows.  (Click image to enlarge.)

Networking computers has always been a challenge; at the very least, it’s time-consuming. Microsoft aims to change that in Windows 7, at least for home networks: introducing the “HomeGroup.” Since you need at least 2 PCs running Windows 7 to have a HomeGroup, I haven’t been able to give this feature a try, but the Windows 7 website says that “HomeGroup makes it easier to connect to other computers and devices on a wireless home network, so you can share files, photos, music, and printers throughout your home.”libraries

So if HomeGroup lets you connect to the content on all the (Win7) PCs in your home, how do you access that content? Enter Libraries. A library is a collection of folders, ideally showing similar content. Neat thing is, you can connect to folders from other computers and interact with the files on them as though they were on your PC.  (Click image to get a better idea of the libraries concept.)

There are dozens smaller perks in Windows 7, too: things like improved search, jump lists, and better device management. Altogether, I think Microsoft has done a great job with Windows 7, and look forward to seeing the final version.

Windows 7 Beta Prep

January 9, 2009

I'm getting ready for Microsoft to release the Windows 7 beta some time today! I've done a fresh backup , installed a download manager to help with the ISO file, prepared a partition on my laptop and even convinced myself to use Internet Explorer for the occasion (I'm not risking anything). I've got Google Alerts for " 'Windows 7' Beta" coming to me as-it-happens and I'm leaving Gmail open. This can't be missed! Let me know if you get Windows 7!

Windows Live Writer

January 8, 2009

This is a test of my new blogging app: I’m giving Microsoft Windows Live Writer a try. I think it’s going to work really well, mainly because it actually applied the styles of my blog to the post as I write it so I get the idea of what it’s going to look like after publishing

I really like the fact that it uses clean, standards-based HTML: it even using my paragraph styling, which blogger doesn’t by default. (I have to go add the HTML tags.) Of course, I can flip to source view whenever I want, but it doesn’t look like there’s going to be a need for that.

What do you use to blog?

Bookmarking

January 7, 2009

I've recently decided to use Evernote as my bookmarking app. For the last year or so, I've Google Bookmarks; and that has worked well, but I wanted to have all my notes, clips, and bookmarks in one place, and for me, that's Evernote: I like it's powerful tagging and searching, as well as the fact that it covers all major platforms (Windows, Mac, etc.). After deciding to use Evernote for bookmarks, I had to 1) figure out how to get my current bookmarks into Evernote, and 2) what system I would use for incoming bookmarks.

After googling around a bit, I rediscovered Evernote's feature to import bookmarks from Delicious. That was great, although I didn't use Delicious (I'm not into social bookmarking). I set up a Delicious account, and easily exported my bookmarks from Google Bookmarks to an HTML file, and then into Delicious, and finally into Evernote. This whole process didn't take long at all, but it did take a while to clean up the results: for some reason, not all my tags from Google Bookmarks made it to Delicious; not sure if this was a problem in the exported file from Google or the importing limitations on Delicious. I had to re-tag and sort through all the imported bookmarks, but once that was done, the result was a clean database of bookmarks.

It wasn't so easy to figure out how to get new bookmarks into Evernote. In a lot of cases, I can use the Evernote web clipper bookmarklet ; it's great if you want to include part of the page in your note. However, if just want the bookmarks, sans extraneous text, you can't just not select any text: the bookmarklet will clip the entire page. And since the bookmarklet makes a call to an external script, it wasn't adjustable.

Then I tried to work with Evernote's ability to email notes into your database. Starting with the Gmail This! bookmarklet, I tweaked it so that it would include any selected text, plus the meta description of the page, if it had one. I set it to fill the "To:" field with my Evernote email address and here's what I ended up with (don't forget to customize it with your own address).
I was pretty happy with this, but one thing bugged me: when emailing notes, Evernote sets the source as "Emailed to Evernote." That's not as nice as the web clipper, which shows the page's URL as the source. So I went back to the drawing board and came up with a better Delicious bookmarklet . Yes, a Delicious bookmarklet: what I'm going to do (for now anyway), is bookmark with Delicious and then import them to Evernote. I just took the default Delicious bookmarklet and added a small but important feature: It will auto-fill the "Notes" field with the meta description of the page, as well as any selected text. When importing Delicious bookmarks, Evernote puts the URL of the bookmark in the source and brings your Delicious tags as well.This process creates an extra step—having to import the bookmarks from Delicious to Evernote—but it also gives you a backup copy of your bookmarks. My plan is to import to Evernote once a week or so.

So that's how I'm doing my bookmarking; what do you use? What service do you use? or do you prefer in-browser bookmarking?