September 14th, 2009

Things 1.2.2 Released

After our recent Things 1.2 release, we got quite a bit of feedback on the new features. With today’s release of Things 1.2.2, we attempt to address the most frequent requests and bug reports.

For example, you can now disable Spotlight indexing. We also made it possible to enable or disable either of the two Quick Entry keyboard shortcuts independently. With these new options, we needed to reorganize the General pane to keep Things’ preferences simple and uncluttered:

To enhance consistency with the new autofill feature, we added the ability to drag multiple emails and also cards from Address Book into the notes section of a to-do. Autofill now also works with Microsoft Word 2008. Unfortunately we couldn’t add support for Entourage or Evernote due to their lack of the necessary AppleScript support.

There are many other fixes and small improvements like better compatibility with Japanese input methods, better French localization, a keyboard shortcut reference directly accessible from the Help menu, and fixes to the plug-in syntax. Please refer to the release notes for a full list.

Posted by Jürgen

August 27th, 2009

Welcome Bartek! Welcome iGTD Users!

Bartek Bargiel is an amazing person. He – a professional Java developer – became interested in the Mac and decided to learn what developing for the Mac is like. Since he was interested in David Allen’s GTD methodology too, he created iGTD, his very own task management application. iGTD quickly became the most popular free GTD-style task management application for the Mac.

things-bartek-igtd

Early on, we were very impressed by what he did. Even though he had a demanding day job, he was doing this all on his spare time. Yet iGTD had more features than Things did! Imagine our surprise when we discovered that Bartek was working for a company in Stuttgart – the very city where our office is based! We had to meet him…

It turned out that Bartek was actually working remotely from Poland, so meeting him wasn’t that easy after all. However, he managed to stop by our office a few months later. The guy who would eventually step through our front door turned out to be one of the nicest, most likable people you could imagine.

But before we met in person, Bartek let us know that he liked Things so much that he switched to it as his main task management application. And that he also decided to stop developing iGTD and recommend Things to his users instead. (Insert sounds of heads exploding)

We were speechless. And I don’t mean this as a figure of speech. We were literally speechless. Of course we wanted him as a member of Cultured Code! When we finally met him, he told us that developing iGTD completely on his own had become somewhat of a burden and that he would much rather work together with a team. What a wonderful coincidence. We knew we wouldn’t let him go, ever!

Bartek has since decided to quit his daytime job and come join us instead! Right now, he is in the process of helping his successor at his old company get up to speed.

So, I am very happy to finally be able to say this: Welcome Bartek! We are thrilled to have you!

Once it became apparent that Bartek would continue to work on Things instead of iGTD, we felt quite responsible for existing iGTD users. We asked Bartek what we needed to do to make Things a viable option for iGTD users. I’m pleased to say that Things 1.2 is the result of us taking his advice. He also requested that we give free Things licenses to everyone who donated to iGTD, and we were very happy to oblige! Everyone who donated will receive an email with one or more free Things licenses, making sure that the value of licenses will exceed the amount of money donated.

We are releasing our Things 1.2 “Welcome iGTD” update today. Our main goal for 1.2 was to bring keyboard support to a level iGTD power users would expect. One of the famous features pioneered by iGTD and subsequently copied by other task managers is the so-called “F-key trick”. For many supported applications, it allows you to quickly create a task with information already filled in for you. For example, in Safari, a task is created with a link to the currently viewed page added to the notes section of the to-do. With the help of Bartek, we have now integrated his F-key trick into our Quick Entry dialog.

For everyone interested in switching from iGTD to Things, Bartek also created an iGTD Importer you can use to transfer your data. You can download it from our Wiki.

Please also read the following article for more details on what is new in Things 1.2.

I’d like to close this article by thanking Bartek for all he already did for Things. He was instrumental for providing our AppleScript support in Things 1.1, making sure that everything was in place for the iGTD importer he has now provided for the 1.2 release. The Quicksilver, LaunchBar, and Google Search Bar plug-ins we released today are also his creation. Thank you Bartek!

Posted by Jürgen

August 27th, 2009

Things 1.2: Fasten Your Keyboards!

If you are the kind of person who enjoys increasing productivity by optimizing your daily workflow — and you’re not afraid of learning one or two new keyboard shortcuts — then Things 1.2 is for you! Here is a quick overview of the new features:

We’ve added a powerful new way of adding tasks to Things from other applications – Quick Entry Autofill – along with many new shortcuts for editing and managing all of your tasks inside Things.

Things now also integrates with Spotlight and is fully localized into 6 languages: English, German, Japanese, French, Spanish, and Russian. Plus, with the upcoming release of Snow Leopard, we have also made sure that Things runs smoothly on the new OS.

Finally, we have added plug-ins for the most popular application launchers such as LaunchBar, Quicksilver, and Google Quick Search Box. Please refer to this wiki page for more details on how you can download and install them.

As always, you can read the full release notes in our wiki.

Things 1.2

Quick Entry Autofill

Imagine the following scenario: You receive an email from a friend asking you to buy some items for his party. Previously, if you wanted to add that information to Things, you would invoke the Quick Entry dialog by pressing the system-wide keyboard shortcut. You would enter a task title and then copy over the items you need to buy for the party into the notes section. You might also want a link to the original email so you can reply to your friend once you’ve completed your errands. In this case you would have to drag and drop the email into the notes section as well. As you can see, this process is quite involved and cumbersome.

Wouldn’t it be great if Things just recognized the application you’re in and tried to extract the most useful information for you? This is exactly what Quick Entry Autofill does! Originally, Bartek invented this feature for iGTD and called it the “F-Key trick”. With his help, we have now implemented an even better version of it for Things.

If you go to the Things application preferences, you can see that there is now a second system-wide keyboard shortcut you can specify:

Of course, you can fully customize this shortcut.

Now, let’s return to our example. If you select the text that contains your friend’s errands inside his email and invoke the Quick Entry Autofill keyboard shortcut, Things will automatically extract the selected text and pre-populate the Quick Entry window with both the text and a link to the original email!

The Quick Entry Autofill feature behaves similarly in many other applications: it copies the currently selected text into the notes of the to-do and adds a link that is useful in the current context. Here are some examples: In Safari, it will automatically add the URL of the current page. In Finder, it will create links to currently selected files. And in Pages, it will create a link to the currently edited document.

Please note: After you launch Things 1.2 for the first time, you have to quit and restart all running applications for Autofill to work properly (you can also log out and then log back in to your account again to achieve the same effect). The reason is that Things uses Mac OS X Services to get the currently selected text and Mac OS X only updates Services for a given application at launch time. Also, note that for applications which do not support AppleScript (for example, Firefox), Autofill will not be able to detect the current URL or opened document.

UPDATE: Firefox actually does support AppleScript. Jesse Ruderman from Mozilla kindly helped us add autofill support for Firefox 3.x to Things 1.2.1, which is now available.

Keyboard Shortcuts

Let’s look at three examples. For a full list of shortcuts check out our keyboard shortcut overview (PDF).

  1. If you select a task and then press Command-Up or Command-Down, it will move the task up or down in the current list. If you also hold down the Option key, it will move the selected task to the first or last position.
  2. Filtering by tags is now also accessible from the keyboard. Let’s say you have a tag “home”, and you have specified “h” as the shortcut for this tag. In this case, pressing Control-h in a given list will filter it by that tag. Pressing Control-h a second time will remove the filter and show all tasks again.
  3. If you want to modify either the due date or the start date (Scheduled list), you can now do that via the keyboard, too. In the Scheduled list, postponing a scheduled item for one more day can be achieved by pressing Control-] on a US keyboard, whereas Control-[ subtracts one day from the scheduled date. If you also hold down the Shift modifier key, 1 week will be added or subtracted. The shortcuts for due dates behave similarly.

If you look at the position of those shortcuts on a US keyboard, you will see that we have chosen them to be in close proximity to one another:

If you have a non-US keyboard layout, then the [ and ] keys might be replaced by other keys, like umlauts for example in the case of a German keyboard:

The general idea is to keep the position of the keys the same no matter how those keys are labeled. This ensures that the keyboard shortcuts are easily accessible, regardless of the actual language/keyboard layout.

Spotlight

The first time you launch Things 1.2, it will prepare your existing database for Spotlight search. After this is completed, you will be able to find all your to-dos and projects via Spotlight. If you’re looking at the Spotlight search results in the Finder, you can even press the spacebar (which invokes QuickLook) and get a preview of the to-do. If you double-click the to-do, Things will become the active application and show the actual to-do.

Posted by Werner

August 25th, 2009

Introducing Forums 2.0

When we launched our forums, we spent a significant amount of time and energy trying to get it right. To make a long story short, we failed.

Today, we are re-launching our forums in an attempt to do better this time. Let’s take a look back at what we did (and didn’t do) and why it didn’t work out the way we and our users expected.

New Forums

Even though our blog and forums run on different software (Wordpress and Phorum), Chris was able to create a beautiful design that unified the way the comment section in our blog and discussion threads in our forum look like. We cut everything down to the essentials in order to create one of the most uncluttered forum interfaces possible.

When we finally launched the forums, we were very excited. Even though we never considered our forums to be anything else but user forums, we contributed quite a lot to the discussions that quickly emerged. We were happy to see that the forums attracted a number of nice people sharing their experience with using Things.

Anyone who has visited our forums lately will have most likely noticed that the times have changed. Trying to analyze the situation, I believe we made three mistakes:

  1. We never clearly stated that, above anything else, we consider the forums to be user forums. That is forums for and from users of Things. We never intended to make any official statements there. In particular, we didn’t want to discuss future features in the forums. There are notable exceptions though, which, of course, only added to the confusion.
  2. Our presence in the forums was sporadic and inconsistent. As I mentioned above, we contributed a lot in the beginning. Satisfied that everything worked beautifully, we moved our focus away. Every now and then, when an issue seemed particularly pressing, there was a sudden burst of activity from our side that quickly faded again. In hindsight, it is no surprise that users didn’t know what to expect.
  3. We never really posted forum rules. Nor did we make a strong enough effort to consistently enforce the few we hinted at. Our reluctance to burden anyone with rules surely came from the best intentions, but it was unnecessary nevertheless. Every social context has them. Not only are we used to it anyway, it is actually good to know that everyone is playing the same game.

So, what are we going to do about it?

Simplified structure. From now on, there will only be three forums: “Using Things for the Mac”, “Using Things for iPhone and iPod touch”, and “Everything else”.

The two “Using Things…” forums are exclusively devoted to solving problems and improving productivity by sharing helpful information and concrete tips related to released versions of Things. Everything else goes to, well, I guess you know where :). If necessary, we will be moving off-topic threads from the “Using Things…” forums to “Everything else”.

More consistent presence from Cultured Code. We will be encouraging every member of Cultured Code to spend time in the forums. We will be making an effort to arrange our presence such that ideally every day one of us should be around for a while.

I want to emphasize that our presence doesn’t change the fact that we consider the forums to be user forums. We will no longer discuss details of future updates or their possible release dates in the forums.

Posting rules. Everyone should communicate in a respectful and constructive way. Our posting rules are little more than an attempt to spell this out in a more detailed way. Nonconforming posts will be deleted without further notice. We also have some more guidelines, but neglecting those will not entail as harsh a consequence. Please read the full text here: Posting Rules and Guidelines.

More than a week ago, we took the old forums offline. The reason being that we wanted to bring as many topics over to the new forums as possible. Since then, we have been busy sorting existing topics into the new forums. We didn’t bother to copy obsolete discussions, and of course we also didn’t move posts that do not conform to the new rules. This process will likely continue for some time.

We hope that our Forums 2.0 will be more useful and fun than version 1.0 has ever been! Come and join the discussion…

Posted by Jürgen

August 11th, 2009

This is not a Roadmap

We are often asked about our plans for the future, and we would indeed love to discuss our plans in great detail. But there are so many reasons why it is in fact not such a good idea to publish detailed roadmaps. Today, I still would like to share a bit about what we are working on, while leaving a few secrets in the dark. After all, everybody enjoys a little surprise every now and then, right? ;)

Things for Mac

Our next release, Things 1.2, is due in about one or two weeks. Version 1.2 will be almost entirely about improving various aspects of keyboard support. Without going into the details here, let me just mention that 1.2 not only involves introducing many more keyboard shortcuts, but it also improves tabbing behavior when creating new to-dos, adds improvements for the quick entry window, provides support for Spotlight, and includes plug-ins for other apps. You might ask: “Why did those Cultured guys all of a sudden deem keyboard support that important?” Well, you’ll see when we release 1.2 – this is one of the surprises mentioned above ;).

After version 1.2, it gets more interesting. The reason being that we will have more developer resources available to us! This means that we will be no longer doing one feature at a time. Instead, different development threads (or goals) will be followed simultaneously. Forthcoming articles will have more background on the extraordinary talent we were able to attract.

Here are our priorities for the next releases: Over-the-air sync, performance, bug fixes, easier collaboration, mixed projects, and better communication of how dates work. Let’s flesh this out in a little more detail…

Believe it or not, we have been working on over-the-air sync since the beginning of this year. In the meantime, our goal changed from “something that works” (check out our competition if you want to know what we mean by that) to “a really sweet solution”. The tough challenge here is to develop a highly performance-oriented solution that works for everybody. In particular, we wanted it to work for Mac and iPhone users alike, without requiring a MobileMe account (or any WebDAV disk for that matter).

The whole issue is indeed complex and interesting enough to warrant its own blog post, but suffice it here to say that we are well under way to providing the above-mentioned “really sweet solution” :).

Performance should be pretty self-explanatory. Users with large libraries are beginning to see sluggish behavior. This is unacceptable for an application whose foremost goal is to make you more productive. While Things 1.2 will already deliver some performance improvements, major attacks on all other performance related issues will be started immediately after finishing 1.2.

Collaboration is a very interesting problem space, and I think the importance of better support for teamwork in Things is pretty obvious. We will soon make a little step forward in this area to ease the workflow when working together. We are committed to constantly improve what we are doing here in the next few months and most likely well beyond.

For some users, mixed projects are a big deal. What we mean by this is the ability for active projects to also contain inactive and scheduled items. What seems to be an innocent change is in fact also a big deal for us as developers. When conceiving Things, we very deliberately did not want to have mixed projects. We so much didn’t want it, that we even made the decision on the level of our data model design for both the Mac and iPhone version. This is the reason why we kept postponing the implementation of these improvements.

Let me close this non-roadmap with, uhh… a roadmap for Things touch:

Things for iPhone and iPod touch

  • 1.4: Repeating tasks, global search, landscape mode
  • 1.5: Push notifications, polish
  • 1.6: People support

Posted by Jürgen

June 24th, 2009

Things Wins Apple Design Award 2009

Tuesday, June 9th 2009 was a special day for Cultured Code. You might have already heard about it if you are following us on Twitter. During the week of June 8th, Apple held its annual World Wide Developers Conference (WWDC) in San Francisco. This year, an unbelievably large crowd of more than 5000 developers went to the Moscone West conference center to get the latest scoop on Snow Leopard and iPhone OS 3.0, along with meeting Apple engineers and bombarding them with questions.

The evening of the second day of WWDC is traditionally reserved for celebrating the winners of the Apple Design Award (ADA). The trophy is a very elegant cube with a transparent Apple logo that lights up when you touch the cube:

Apple Design Award

Receiving an ADA is the dream of every Mac and iPhone developer. While not as glamorous as the Oscars – we are developers after all! – the significance of the ADA for the Mac community is not unlike that of an Oscar for the film industry.

Before we flew to San Francisco, we tried to convince ourselves that we had an actual chance of winning, but our hopes dwindled when we sat among thousands of other developers that Tuesday evening. With so many other contestants, receiving an ADA felt virtually impossible. But it happened! When Things was announced as a winner, we all shared a frozen moment in time – it was a dream come true.

Winning Apple Design Award
(Image courtesy of Hussein Morsy)

Being awarded a prize for design excellence from a company like Apple means an awful lot to us. We are happy and proud; but most of all, it is an encouragement to continue to do the best job we possibly can.

Posted by Jürgen and Michael

May 11th, 2009

Things 1.1.2 and Things touch 1.3.5 Released

Now that Things 1.3.5 for iPhone and iPod touch has been approved by Apple and is now available on the App Store, we are announcing the release of Things 1.1.2 for the Mac.

Besides a host of bug fixes and smaller changes, there are three major areas of improvement which are important enough to deserve their own blog posts:

There are also many smaller (but not less important) improvements we couldn’t fit into one of the articles linked to above. Some of them fix issues that were driving some of our users crazy, such as keyboard shortcuts. ⌘S is no longer used to move a to-do to the Someday list. While the letter “S” is certainly not completely unrelated to the word “Someday” ;), pressing ⌘S is too deeply associated with saving a document in many user’s muscle memory. Therefore, the keyboard shortcut ⌘Y now toggles the active/inactive state of an item, moving next-action steps and active projects to Someday, or – vice versa – items from Someday back to the Next or Active Projects list.

Another keyboard shortcut that has changed is ⌘→ to bring up the dialog for moving items. The new shortcut is ⇧⌘F. The letter “F” refers to the corresponding menu command “File…”.

Due dates! There are so many different ways for using, or even not using, due dates to get organized. Some users found themselves having many overdue items, but ended up being reluctant to move the dates farther into the future. After all, changing a due date is probably not going to help you reach your goals earlier next time. Previously, when you you set an overdue item to “Not Today”, it was still moved back to the Today list when you re-opened Things or when you synced with your iPhone or iPod touch. The new versions of Things for the Mac and Things for iPhone and iPod touch will instead keep the items in the Next list until the next day.

If you are syncing with your mobile device, please be sure to update both Things for the Mac and Things for iPhone and iPod touch to get a consistent behavior across sync sessions.

Other improvements include:

  • A faster and more reliable software update mechanism
  • A unified way to send support inquires
  • An updated iPhone preference pane that provides even more help and feedback to new users
  • A more robust mechanism for discovering and pairing the desktop version of Things with its mobile sibling, in particular with busy networks

Don’t miss our more detailed articles below, and please don’t forget to download the new version of Things for iPhone and iPod touch. On both your mobile device and iTunes you might have to manually check for updates before Things touch 1.3.5 shows up. Enjoy!

Posted by Jürgen

May 11th, 2009

Things 1.1 Brings Extensive AppleScript Support

No Mac application can truly be considered complete without AppleScript support. We are very happy to announce that version 1.1 of Things brings full scripting support for most aspects of the application. But hold on a second, isn’t AppleScript only relevant for programmers? And what is AppleScript anyway?

AppleScript is part of Apple’s automation technologies. It is an English-like language used to write little applets that can control the actions of a computer and applications that run on it. Here is an example:


tell application "Things"
    set message to the name of the first selected to do
end tell
 
tell application "Twitterrific"
    post update message
end tell

While it may seem obvious what this script will do, let’s break it down for you. We’ll assume you have selected one or more to-dos in Things. We will also assume that you have a Twitter account and the Iconfactory’s Twitter client Twitterrific installed on your Mac, configured for the Twitter account. The above script will ask Things to return the name of the first selected to do. Then, it will make “message” a shortcut of the returned text. That text is now handed to another application – Twitterrific in our case – to post it as an update to your Twitter account.

It is easy to try the above script yourself. Just fire up Apple’s Script Editor application which is already installed on your system. Copy and paste the above script into an editor window and click the run button in the tool bar. Oh, and you may want to make sure that a suitable to do is selected in Things ;)

Of course, you don’t need to use the Script Editor every time you want to use a script. You can save your scripts and then run them by simply double-clicking them. Even more convenient, you can drag scripts into the Finder’s toolbars for easy access. For an example, check out the Browse Full Screen script from Apple’s website.

We have a section in our wiki dedicated to collecting user contributed scripts. If you are interested in automating Things, be sure to check it out every once in a while. Our Things AppleScript Guide, which you will also find there, is filled with snippets of example code which will get you started in no time. Happy scripting!

Posted by Jürgen

May 11th, 2009

Things 1.1 Brings a New Model for Working with Delegated Tasks

If you haven’t yet worked with the people feature in Things before, version 1.1 is the perfect opportunity to try it out. The new way delegated tasks are handled in Things 1.1 is much more flexible and also works much better when you sync with the iPhone or iPod touch version of Things. But lets start at the beginning.

For any person in Address Book, you can create a list in Things by choosing “Add Teammate…” from the File menu. If you have also stored the IM addresses of your teammates in Address Book, Things will automatically show their IM status in the sidebar:

For each teammate, you can now create a list of items you are waiting for them to complete. You can think of these tasks as being delegated to the respective person.

Previously, when you dragged an item – say from the Next list – onto a person in Things’ sidebar, the item was removed from the Next list and shown in the person’s list instead. This makes perfect sense since this item is now delegated to another person and hence, no longer your task. There is simply no other choice than to remove it from your next action list. Considering that the Next list has a tendency to grow very long anyway, every task not there is a good task. Or is it? In fact, many months of experience has told us differently!

There is another way to look at delegated tasks. Even though you have handed over the task to someone else to complete, you still have to make sure that the task gets done and that the results will meet your expectations. Some time after you delegate a task, you may want to be reminded to check whether or not it has already been completed successfully. In some cases, you may even want to get in touch with your teammates more often to check whether it is necessary to provide them with more help or information.

When you delegate a task, there are two aspects:

  1. The task that your teammate is supposed to complete, and
  2. Your responsibility to make sure that results are returned.

Previous to version 1.1, the behavior of delegated tasks in Things was modeled to capture the first aspect. We have now decided to give the second aspect precedence. Now, when you drag an item from the Next list to a teammate, it will show up in the teammate’s list, but it still stays available in Next as one of your responsibilities. Of course, after delegating a task, at least for some time, there is nothing you can do about it. Hence, it shouldn’t appear in your next actions list. What you can do now is to drag the task to the Scheduled list (works for tasks that are not part of a project) and enter a date in the future when you expect the task to be completed by your teammate. When that date arrives, Things will show your task in the Today list to remind you to check back with your teammate.

For complex delegated tasks that take a substantial amount of time to complete, it is now possible to combine start dates (Scheduled list) and due dates. You can use the due date to specify when the task needs to be completed at the latest. Due dates are often determined by external requirements beyond your control. By using the start date (Scheduled list) on the other hand, you let Things remind you to get in touch with your teammate to discuss intermediate results, or evaluate whether the due date can still be met. Then, you can reschedule the task based on the results of your discussion to make sure you will get back to your teammate in a timely fashion, ensuring results are delivered as expected.

Posted by Jürgen

May 11th, 2009

Syncing Areas of Responsibility and More…

For Things users who sync with their iPhone or iPod touch, the ability to sync Areas of Responsibility has been the most requested feature. We are happy to announce that Things 1.3.5 for iPhone and iPod touch now supports that. Tasks on your iPhone or iPod touch will now be nicely categorized into Areas just as they are on your Mac. In version 1.3.5, however, it is not yet possible to add new Areas.

The overarching goal for version 1.3.5 was to significantly improve sync reliability and experience. But we also added important general improvements. The most important one being Things’ ability to more accurately return back to the last screen that was shown before you quit the application. This might seem like a little improvement, but it is actually quite significant, since it solves the problem of potentially losing vital text when a phone call comes in. Previously, when you were typing away on a note and a phone call came in, you lost the recent changes of that note. Now, after you open Things again, it will return to the editing screen with your latest changes waiting for you.

When returning back to Things, it doesn’t always make sense to show the last screen you were using before you exited. You might have forgotten exactly what you did last time. Instead of making the user always navigate back through potentially deep hierarchies, we tried to find a middle ground. For example, let’s consider a scenario where a user is managing tags while editing a to-do, and then quits the app. In such a case, we do not return to the Manage Tags screen, but instead show the to-do the user was editing before.

Most of the time and effort we spent on version 1.3.5 went into analyzing user contributed bug reports, doing our own extensive testing, and obviously fixing all of the issues we were able to reproduce. This involved both Things 1.1 and Things touch 1.3.5. If you are syncing with your iPhone or iPod touch, please make sure you use the latest version of both apps to get all of the benefits of the improved sync engine.

We strongly encourage every user who still experiences sync issues to contact technical support. The best way to do this is by selecting the “Provide Things Feedback…” menu item from Things’ main menu. This will open our new unified support form in your browser with version information already filled in for you.

Speaking of technical support… Let me take this opportunity to officially thank our new support hero, Mark Simoneau. He did an awesome job before as one of our forum moderators and we are very happy to have him helping us with our increased support load. He will be assisting Oli and Michael who worked crazy hours to answer all your questions.

Posted by Jürgen