Things 0.9.1

The biggest new feature of Things 0.9.1 is native printing. Until now we only had Mac OS X’s built-in printing support. But since Things’ to-do lists are optimized for the screen rather than paper, the results were less than desirable.

When choosing Print from the File menu, Things 0.9.1 will construct a dedicated print document which is displayed in an extra window. Before continuing with Mac OS X’s standard print dialog users get a chance to customize the document in the following ways:

  • Decide whether to print the entire list or just selected items.
  • Change the font size. Note that since the print document on the left does not (yet) represent the actual width of the paper, the text may appear to be larger than the actual result on paper.
  • Decide about the visibility of notes. If your list contains long notes that you do not want to print entirely, you can also choose to limit them to 8 lines of text.

Clicking the Print button will then invoke Mac OS X’s standard print dialog. Particularly interesting is the Layout pane. Using the Layout pane you can arrange multiple pages on one sheet of paper.

As an improvement we plan to combine our dialog with some options from the standard print dialog to create what Apple calls the Simplified Print Dialog. The idea is to have one single simple and uncluttered dialog that suffices in most situations.

Things 0.9.1 also contains the following fixes and improvements (from the Release Notes):

  • Repeating items. Fixed a bug that resulted in “after completion” option not working properly.
  • Repeating items. Resuming a previously paused item no longer crashes Things.
  • Quitting Things before closing an edited item no longer results in loosing the most recent changes.
  • The Things library is writen to disk more often now (after each edit).

Things 0.9.0.1

The new release contains 12 bug fixes and improvements related to features we introduced in version 0.9.

A notable feature of Things 0.9, that didn’t get enough attention last time, is the new bug reporting dialog. Things 0.9 is very eager when it comes to reporting errors. In fact, a little too much so. Every little error message was promoted to a crash. This is great for developers because we get a lot of error reports and have the chance to improve the reliability of Things quickly. On the other hand, some users who never saw Things crash now did so for the first time.

We remedied the situation in the following way. Things will still offer to send an error report even when uncritical errors are encountered. But the error report dialog no longer forces the user to quit the application.

We want to apologize for the inconvenience and thank everyone who sent error reports.

Things 0.9

The most substantial improvement in version 0.9 is, of course, recurring to-dos and projects. See below for an entire post describing this new feature.

Here is a list of some of the other improvements:

Choose Things Library

This is clearly an advanced feature that should be used with care. When holding down the option/alt key while opening Things, a dialog will be displayed that lets you either create a new Things library or choose an existing one. This feature is practically identical to a similar one in iTunes.

You can now store your library in a place that might be more convenient for your backup routine. Choosing a web-based location is not possible.

This feature is probably most interesting for people who would like to carry their Things library with them. Plug in a portable or USB flash drive and move your Things library from its default location Home/Library/Application Support/Cultured Code/ to that drive. Move the entire Things folder and don't forget to quit Things first! The next time you open Things, it will ask you for the new location.

Better error handling

Things will now catch more unexpected errors and also offers a convenient way to send reports via email. Due to some limitations in Tiger this feature works best on Leopard.

Duplicate

There is a new Duplicate menu command in the Edit menu.

Scheduled

The Postponed list is now called “Scheduled”. There are a couple of improvements here. Since the Scheduled list will be the home of our recurring item templates, “Postponed” no longer seemed appropriate. But more about this in the post below. Scheduled now uses relative dates and groups items under headings like “Next week”, “April”, etc.

Move to Today

When an item is postponed, there is an option to automatically move it to the Today list on the specified date.

There are also many bug fixes, some of them quite substantial. More details can be found in the Release Notes.

Recurring Tasks XXL

Early on many users told us how important an implementation of recurring tasks would be for them. Having always (mis)used iCal events for recurring tasks myself, I hadn’t seen the need for a corresponding feature in Things. So much for what difference user requests can make :). And I finally noticed that hacking recurring tasks via iCal events isn’t that great after all. For some weeks now I have been looking forward to manage my recurring activities properly. And now I can.

When implementing recurring tasks one basically has the choice of either doing a primitive version like “every x days/weeks/months” or doing it in a really flexible and powerful way: enter Things 0.9.

Let’s look at an example: mortgage payments. Things allows rules like “Mortgage payment is due on the last day every month. Remind me 3 days in advance.” For the most part of the month you really don’t need to think about the payment. In that respect recurring tasks are no different than other postponed items except that they automatically repeat. It is thus natural to let the Postponed list handle recurrence. And since the term “Postponed” didn’t seem appropriate anymore we renamed it to “Scheduled”. This is how it works:

The Scheduled list

The Scheduled list does not contain the actual to-dos you are eventually going to check off, but it contains templates instead that are used to create those to-dos. This approach has a number of advantages:

Example
  • The Scheduled list gives you a great overview of all your recurring activities. They are nicely organized by interval and provided with descriptive labels. Together with single postponed items, the Scheduled list contains everything you needn’t be concerned with just now, but will be brought to your attention on the specified dates in the future.
  • Since recurring items live in Scheduled, they don’t clutter up the lists you are working from. Instead, on the dates you specified, copies of the relevant templates are made and put into the Today list. Once completed those tasks will be logged getting out of your way until new copies are created.
  • Since the actual to-dos are completely independent from their templates, you can edit them as you wish. For example, let’s assume you want to do monthly reports that always have a certain structure. You can put an outline of that structure into the template’s note section. Every month a copy of the template is made. Consequently, each copy will already contain your outline. Each month you can then fill in different details. All monthly reports will eventually go to the Logbook where they can be review as needed.

Creating new recurring tasks

New Repeating Task

You can create a new template in Scheduled by clicking the toolbar button “New Repeating”.

Action Gear

Or you can turn an existing task or project into a repeating one by editing it and using the action gear button at the bottom right of the item.

Recurrence patterns

There are many options for creating recurrence patterns. For example, use “After Completion” for tasks like “tidy up desk” that don't depend so much on the calendar, but on the last time you've completed them. And on Leopard you can even use iCal events as a pattern (think “Birthday calendars”). Projects can be made repeating too (check lists).

Implementing recurring tasks like we did was significantly more complex than we anticipated. But I believe it was worth the wait. If I am not overlooking something here, then we now have the most powerful recurring tasks implementation available. And I hope you like it.

We've gone to great length to ensure that most bugs are fixed already. But with a complex feature like this one, it is quite likely we didn't catch everything. Please keep a close eye on it and make sure it is working as you expect. And when it doesn't, choose Things > Provide Things Feedback... from Things' main menu and tell us what happened.