I’m a software developer for The Omni Group in Seattle. I’m also privileged to help manage the internship program at Omni.

Tuesday
Jan132015

WatchKit Design and Development Videos

The good folks at Seattle Xcoders have already posted the videos of the talks David Hoang and I gave last week.

David spoke on Designing for Apple Watch. My talk was on Developing with WatchKit 1.0

I’ve also posted the slides for my talk and the source for the sample app that I developed for the talk.

Friday
Jan092015

Developing with WatchKit 1.0

Last night I had the privilege to speak at the Seattle Xcoders monthly meeting. I talked about developing apps for Apple Watch using WatchKit 1.0. It was great fun to collaborate with David Hoang, who spoke on Designing for Apple Watch.

Here are the slides for my talk.

I’ve also posted the source for the sample app that I developed for the talk. There are still a few to-do items left in the source, but hopefully it’s of some use as is.

Tuesday
May272014

Verify that Next Actions Exist

After the release of OmniFocus 2 for Mac I took a couple of days off to stretch a holiday weekend into a five day mini-vacation. Since that’s too long to go without coding, I polished up my Verify Next Actions Exist script for the updated Mac app.

This script scans all projects and action groups in the front most OmniFocus document and lets you know if any are missing a next action. I use it in my morning review to keep all my projects moving forward.

Custom perspectives in OmniFocus 2 Pro already let you create a “stalled projects” perspective. As shown in the image, you just set the perspective to Use project hierarchy and set the projects filter to Stalled.

Screen shot of Custom Perspective settings

So why this script? The script’s results differ from a stalled projects perspective in two ways:

  • The script detects action groups with no next actions.
  • The script doesn’t worry about projects that have actions starting in the future.

What Does It Do?

When you run the script it finds all the projects and action groups with no next actions and appends “(missing next action)” to their titles. If none are found, the script posts a quick congratulations notification. However, if there are projects or action groups that need some tending, the script will offer to reveal the items. Click Reveal and a new OmniFocus window will open showing the items. For action groups, their parent projects will also show.

In some cases, the project will actually be complete. There’s no next action because all the actions are done! In that case, you can just mark the item complete. Other times you’ll need to decide what’s next to move the project ahead.

Once you’ve check things off or added any necessary actions, just run the script again to clean up. The script will remove the “(missing next action)” suffix from any items that no longer need it. (If you need to get on with getting things done, you can leave the suffixes around to clean up later. Anytime you run the script it will clean up any leftovers.)

Installation

To install the script, in OmniFocus 2 for Mac, choose Help → Open Scripts Folder. Drag the Verify Next Actions Exist file into the scripts folder. You can then use Customize Toolbar to add the script to the toolbar in OmniFocus.

Share and enjoy!

(And drop me a note @curtclifton on Twitter to let me know which script you’d like me to update next.)

Changes for Version 1.0

For the curious, there are a number of changes in this version of the script since the last release (version 0.5.2). Besides getting an update for OmniFocus 2 for Mac, this version:

  • Delivers blazing speed. Well, not really blazing—it is AppleScript after all—but this version is more than twice as fast as the previous release.
  • Uses Notification Center notifications when the script detects no missing next actions
  • Offers to reveal the projects and action groups that are missing next actions, opening a new OmniFocus window to show them.
  • Includes a property to control whether single action lists are searched. By default this is set to false, so single action lists aren’t marked even when they’re empty. You can edit the script in AppleScript Editor to change this.
  • Provides better error reporting

Previous versions of the script came with a couple of extra scripts for clearing the “(missing next action)” markers from items. Now you can just run the script again after you mark items complete (or add more actions to them). The script will clean up after itself.

Wednesday
May212014

Complete and Await Reply Script

Just in time for the launch of OmniFocus 2 for Mac, here’s an update to my Complete and Await Reply script.

This script marks a selected action as complete and creates a new action, like the selected one but prefixed with “Reply on:” and placed in your Waiting For context. It’s great for email and other actions where you expect a reply but want to make sure you don’t forget to follow up if the reply doesn’t come.

There are lots of changes and improvements to this script beyond OmniFocus 2 support.

  • The script now uses Notification Center.

  • You can use a Waiting context that is a sub-context, instead of just top-level contexts. This was the most commonly reported bug in the script.

  • The script no longer adds a due date to the “waiting for” task. If you prefer the old behavior, there’s a property in the script to set the number of days from now that the new task is due. Just change this line:

    property daysUntilDue : -1
    

    to

    property daysUntilDue : 3
    

    to make the new task due in 3 days.

  • The note of the “waiting for” task will get a line that says something like “Reminder sent on May 21, 2014”, so you can keep track of when you sent the email or talked to the person.

  • You can run the script on an already “waiting for” task when you send a follow-up email. A new task will be created, but it won’t have the “Reply on:” prefix added twice; however it will get another paragraph indicating when the follow-up was sent.

Installation

To install the script in OmniFocus 2 for Mac, choose Help → Open Scripts Folder. Drag the Complete and Await Reply file into the scripts folder. You can then use Customize Toolbar to add the script to the toolbar in OmniFocus if you like.

Share and enjoy!

(And drop me a note @curtclifton on Twitter to let me know which script you’d like me to update next.)

Sunday
Apr062014

Scripts for OmniFocus 2 for Mac

At Omni we’re hard at work putting the finishing touches on OmniFocus 2 for Mac. The AppleScript interface for OmniFocus has changed to match the new, more approachable user interface. Unfortunately that means that my collection of AppleScripts for OmniFocus is in need of a tune up.

I’m spending all of my work time and some of my free time on OmniFocus 2 itself, but I’m trying to update my scripts in some of the downtime that remains.

I’ve just posted an updated version of my Populate Template Placeholders script for OmniFocus 2. This script takes an OmniFocus project, replaces placeholder text with user entered strings, and adjusts all dates by some fixed interval to match a new start or due date that you enter. Installation and use instructions are included in the download.

Enjoy!

(And drop me a note @curtclifton on Twitter to let me know which script you’d like me to update next.)