I’ve reviewed a number of to-do-list programs over the years, devoting most of that coverage to software that favors ease of use over features. As I noted in my review of TaskPaper, many of the task-management apps out there “have difficult learning curves and require you to master the program’s intricacies before you can even start using it.” On the other hand, many of the programs that are simple to use don’t scale well—once you need to track more than a few lists or projects, you run into the limits of that simplicity.
Cultured Code’s Things
is the unique exception. At $50, it’s the most expensive to-do-list apps I’ve tested, but it’s a true standout thanks to a great set of features and an interface that makes it a good fit for nearly any level of task management: It’s simple enough to use for the most-basic to-do lists—you can start using it with nary a peek at the manual—but it’s powerful enough to handle a full-blown Getting Things Done (GTD) workflow.
When you first launch Things, you’re presented with your Inbox, a central place to put miscellaneous tasks. If you’re the type who needs only one list, this is where it goes: click on New to add a new to-do and name it. Although you can stop there, you can also add tags (which are like categories), notes, and a due date. (If you drag an e-mail message from Mail to the Notes field, you get a nifty link directly to the message.)
By clicking on the tiny Action menu on the right-hand side of a task’s entry, you can also make a task a repeating event, so a new iteration of the task is automatically generated based on the schedule you choose. Repetition schedules include daily, weekly, monthly, or yearly; x days after you complete the current iteration; or whenever a new event is created in a particular iCal calendar. (Things doesn’t have priority rankings. You can either manually prioritize items in a list by dragging tasks up or down, or you can use tags to simulate priority levels.)
When you’ve completed an item, clicking on its checkbox marks it as complete. Completed items are automatically moved to Things’ Logbook immediately or at the end of each day, week, or month, depending on your preference. (You can also log completed items manually.) To remove an item from a list without completing it, you have two options: deleting an item moves it to Things’ Trash; canceling an item strikes out the task’s text and then moves the task to the Logbook at the next cleanup, keeping it around. The differences between the two options are subtle, but useful.
One thing I like about Things’ interface is that instead of a bunch of different columns for data that may or may not exist for each task, Things shows due dates, tags, and other info only if that info exists. So you get a clean, uncluttered appearance. In fact, even much of that information is hidden until you click on an existing event, which might be a turnoff for some people; an option to always show this info, so you can see it at a glance, would be useful. (I also find it odd that if you’ve assigned tags, but no due date, tags appear at the very right of an item’s entry, but if you have both a due date and a tag, the due date steals the right-hand position; in other words, tags aren’t positioned consistently.)
If you do use tags and due dates, a convenient filter bar automatically appears at the top of the window, letting you filter the current list’s view by tag, by schedule, or both.
Of course, most people in the market for Things don’t have a single list, so you can create as many lists—Things calls them projects—as you need. Projects appear in the Active Projects list on the left-hand side of Things’ window; click on one to view its tasks. Each project functions much like the Inbox, and you can move an item from a project to the Inbox, or vice versa, by dragging it from one to the other or by using the File action. (A couple differences between projects and the Inbox are that you can assign tags and due dates to entire projects, and completed items remain visible in project lists so you can see what you’ve accomplished on each project.)
A neat related feature is the Projects view. Click on Projects in the Focus section on the left and Things shows you a list of every project. To the left of each is a blue bar that shows the number of tasks in that project, as well as your current progress on the project as a whole via the proportion of the bar that’s “filled in.” You can also use this view to mark an entire project, and all its tasks, as complete.
Things also provides a number of other Focus views. My favorite, by far, is the Today list. You can add items directly to Today, but the list also includes anything from other lists you’ve manually marked as Today (by selecting an item in its “home” list and clicking on the Today button), as well as anything—again, in any list—scheduled for today or overdue. (If an item is from another list, the name of the host project is shown next to the task name.) In other words, as it’s name implies, Today is a list of tasks you want to complete today.
What makes the Today view unique is that you haven’t actually moved any of these items; they all continue to reside in their original lists, in their original contexts—the tasks just appear in Today, giving you a simple, at-a-glance list of things you want to accomplish. This unique approach to tasks helps you focus on what actually needs to get done each day, and helps keep you from getting overwhelmed by list after list of tasks that may not need to be completed for days or even weeks.
Other Focus views include Next, which displays any tasks created in the Today list and the top three items in each project. The Scheduled view displays all repeating tasks, as well as any tasks you create from within the Scheduled view. (Confusingly, it doesn’t display one-time scheduled tasks created outside the Scheduled view; those are presumably covered by the Next view.) Finally, Someday is a place for you to create or move tasks, or even entire projects, you don’t want to deal with right now—a sort of “I’ll get to this sometime, but for now, I don’t want to be bothered by it” bucket. Doing so hides the tasks and projects in other views.
If you take advantage of tags, it’s easy to create new tags using Things’ Tags palette, and you can even create tags that are a subset of higher-level tags. These sub-tags are useful because they let you filter views by either the higher-level tag—which shows items with both that tag and any sub-tags—or just a particular sub-tag. For example, we’re currently doing some remodeling to our home, so I’ve got both a Home tag and a Home: Remodeling tag. When I filter a view by the Home tag, I see items tagged with either Home or Remodeling; when I filter by Remodeling, I see just Remodeling tasks. You can also assign keyboard shortcuts to tags to make it quicker to apply tags, including batch-applying tags to multiple items.
Things offers plenty of other features I could spend pages covering: a quick-entry box lets you press a keyboard shortcut to create a new task from within any program; you can create new tasks by dragging URLs or text onto Things’ Dock icon; the Dock icon can display the number of due items; you can sync various types of tasks between Things and iCal to-do lists; a Search field lets you search all task fields, or just the title, notes, or tags field; you can create Areas Of Responsibility that can contain both projects and individual tasks; and you can create Teammates—people with whom you’re working on tasks—and assign particular tasks to those people.
Finally, Things has one other, um, thing going for it that really makes it stand out from the crowd: a great iPhone app, also called Things, that includes most of the key features of the Mac version and automatically syncs whenever both versions are launched on the same local network. Unfortunately, Things doesn’t currently sync between Macs, either locally or via MobileMe; such a feature would be a nice addition for those who want to use Things on multiple Macs.
Over the past few years, I’ve bounced between many different task managers; each was appealing in its own way, but none ended up sticking, for one reason or another. (For example, TaskPaper’s lack of iPhone syncing meant I eventually stopped inputting new tasks, as it was important for me to have my lists with me on my phone.) Things is the first app I’ve continued to use many months after I first started testing it. While Things is on the expensive side, it offers a unique combination of ease of use, a great interface, and flexibility that sets it apart from other to-do managers I’ve used. And if you’re an iPhone user, right now the combination of Things for Mac and Things for iPhone is my favorite task-management system.
Updated 4/2/09, 2:30pm: Added note about the lack of Mac-to-Mac syncing, an omission that was factored into Things’ rating but omitted from the original article.