Iowa Code Camp Slides are Up!

I’ll be speaking at the Spring 2011 Iowa Code Camp on “Developing with Objective-C 2.0 for Mac OS X and iPhone OS”. Check out the slides here. I’ve also started a list of good Mac OS X and iOS development links. Hope you’re registered for the event - it promises to be lots of fun and learning! Enjoy!

When is a PDF file not a PDF?

I decided to put the Aperture 3 manuals on my iPad. Navigated to the folder in Finder and dragged the files Aperture 3 Keyboard Shortcuts, Aperture_3_User_Manual.pdf, Aperture_Frequently_Asked_Questions.pdf, and Exploring Aperture 3 to iTunes. When I looked into the Books section of iTunes, only 3 out of the 4 were listed – Exploring Aperture 3 was missing. Tried it again to no avail. Double-clicked the file and it opened fine in Preview. And then I looked carefully...

The file certainly has the PDF icon but it says “Kind Application” and did not show the Quick Look preview of a normal PDF file.


Lightbulbs go off. This is an application bundle. So I right clicked on it and selected “Show Package Contents” and was rewarded with a tree structure starting with Contents. Drilling down I got to Resources which contained a number of .lproj folders with the name of a different language. Mac OS X developers will recognise these as internationalised resources associated with an application. So I went into the English.lproj folder and was rewarded with the real Exploring Aperture 3.pdf file. I made a copy to my Aperture documents folder and then dragged this one into iTunes and voilà – it was added to Books! So if you ever have a problem with a PDF file which doesn’t act like one – such as being unable to drag it over to iTunes, take a look - it might well be an application suitably disguised as a PDF!

Dock Fun in OS X

I found this out in Snow Leopard – if you left-click and hold down the mouse button on a Dock icon for an application, then the screen fades and shows all that app’s windows. Even the hidden ones! It’s like Exposè, but only focussing on that app. There’s a thin line near the lower third of the screen below which are displayed the hidden windows. Very nice!

Review of MailTags

Here’s the review of MailTags from indev software which I did for Allison Sheridan at the Nosillacast Podcast hosted at This is a follow up to the review of their Mac OS X Mail application plug-in Mail Act-On. Mail Act-On lets you go through your e-mails and process them quickly - filing, copying, tagging. Did I say tagging? Well, here’s where their plug-in MailTags comes into the picture.

MailTags is a Mac OS X Mail application plug-in much like Mail Act-On. It’s from indev software at What MailTags does is it lets you add tags to your mail messages, and much much more.

So - as always, what’s the problem to be solved? more...

Command ⌘ symbol

Just found out how to insert the Apple Command key symbol . It’s the symbol with Unicode hexadecimal 2318. I saw this post on Mac OS X Hints Forums which told me the Unicode value. The steps are on my page Insert the Command Key which assumes that you’ve already got the Character & Keyboard Viewer menubar icon set up. If not, simply follow the steps at Add the Keyboard & Character Viewer to the Menu Bar. Thanks Allison for telling us about ScreenSteps and

iTunes and Firewalls

My sweetie Sarah had an issue with iTunes 10.1.2 on her new MacBook Air. A dialog box would keep coming up with Do you want iTunes to accept incoming network connections? showing Deny or Allow buttons everytime she launched iTunes. I experimented on my iMac 27” and found that I had the same issues when I enabled the Firewall and had either Share my library on my local network on the Sharing panel or Look for iPod touch, iPhone and iPad Remotes on the Devices panel checked in iTunes’s Preferences. Either of these items would make iTunes listen for an inbound connection.

After some Google-fu I came up with this Apple Discussion Thread. Here’s how you check:

  1. Open up a Terminal window (Utilities > Terminal)
  2. Type in the command codesign -v /Applications/ and press return

If you get /Applications/ a sealed resource is missing or invalid, then the iTunes version in your Applications folder is missing a file which tells the firewall that it’s OK to take inbound connections. You can see that there’s a checkbox for Automatically allow signed software to receive incoming connections when you click on the Advanced... button in the Firewall page in System Preferences > Security. This is checked by default, and lets the Firewall automatically allow iTunes to accept inbound connections – but due the missing signed resource, the Firewall instead prompts you to allow iTunes each time.

The solution was to uninstall iTunes, download, and reinstall our iTunes from Apple’s site. The codesign command now returns nothing - which is good! And the dialog box does not appear anymore!

Review of Mail Act-On

Here’s the review of Mail Act-On from indev software which I did for Allison Sheridan at the Nosillacast Podcast hosted at But first, as always, there's a problem to be solved...

You like to be able to triage your e-mail inbox in your quest to attain inbox zero nirvana. My problem always has been that in order to get that inbox to zero, I had to move the e-mail to a folder to file it away. This of course meant either dragging the mail item to the appropriate folder - many times inadvertantly filing into the wrong folder.

Alternatively you could use the menu command Move To or Copy To and scroll down to pick the folder - not terribly useful if you had several bills to file away and you had to pop the menu, scroll, and click to select the same folder.

Of course you could create rules to automagically file the items away but for me, that meant “out of sight, out of mind” and I didn’t get to look at that e-mail anyway. And what's more you'd have to tweak the rules time and again when new e-mails need to get categorised.


Add Prefix String Example Workflows

I’ve just added a couple of workflows which use the “Add Prefix String” Automator Action.

  • Download PDFs from Airnav - which lets you type in the identifier for an airport and then proceeds to download the aeronautical instrument approach chart PDFs for that airport to a specified directory. You will want to change the directory in the Automator workflow.

  • Search in IMDB - which puts up a dialog to enter text which will then be searched for in IMDB

The workflows can be downloaded as a zip here and are also linked off the Software page.

Add Prefix String Automator Action

I wrote an Automator action to prepend a string to an input string, since I needed to add a web URL to a word. It was a little convoluted to get around writing it but the Automator Tutorial for Applescript Actions at Apple’s Developer site was extremely helpful. I decided on an Applescript based action since it was a little easier to write. You can download the “Append Prefix String” action from the Software page or directly from this link. I’ve also included a link to the source files on the Software page.

Sample workflow below:

Add Prefix String workflow

Screen Sharing in Snow Leopard

Just discovered that you can create a shortcut to open a Screen Sharing connection. Essentially you do one of the following:

  • Using Automator - Use the “Run Shell Script” action with the following text:

    open vnc://

    You can use either the dotted-quad standard IP address or the machine_name.local Bonjour syntax.

  • Using Safari - Type the following address in the location bar:


    When you hit return, Screen Sharing launches and connects to the specified computer. Again you can use the dotted-quad or Bonjour syntax. You can now drag the shortcut to the Desktop and double-click that to connect.

Though I have not tried, I’m guessing that you should be able to connect to any VNC server.

The article I found is in Apple Discussions.

Things: To-dos restored!

A cautionary tale! Always have several backups of your data in different places... I sync’ed Things on the iPhone with the work iBook at the end of the day and noticed that several entries in the iPhone’s Today list were called “<missing title>” - not good. Searched on the Cultured Code support and came up with this link - seems that several people had the same problem, and recently too! Here’s what I did to recover...more...

PromptPuppy: A cute little teleprompter

Just purchased PromptPuppy - it’s the little brother to PromptDog. It might be a “puppy” in name but PromptPuppy is no lightweight application though - it has one thing which I haven’t seen in a low cost teleprompter application - the cue arrow. This helps you focus on where you are reading from in the narration text. I’ve read from a text file when doing reviews and sometimes have found myself hopelessly lost in the mass of onscreen text characters, leading to multiple takes for a review. I’ve used PromptPuppy (10 day free trial) and did the review in one take.

Another neat thing is using the scrollwheel to control the speed at which the text scrolls - neat. The spacebar is used to toggle prompt mode on and off. Send a suggestion to allow you to save the window size, line spacing and font settings - this would make it so much easier to set up.

The folks at, who make PromptPuppy and PromptDog, really take care of their users’ questions - got a couple of very quick responses. Got pointed to PromptDog / PromptPuppy by Cali Lewis (GeekBeat TV) in her “Behind the Scenes” episode in which she mentions PromptDog.

Best of all, you can install PromptPuppy on two computers - how neat is that! It runs under Mac OS X and Windows as well, and the two computer license covers either (or both) operating systems.

PS Do remember to note down the special referral code shown on the PromptPuppy site so that you get a discount when you decide to purchase it - every little bit helps!

Codafy - FireBug for RapidWeaver

Do check out Nimblehost’s Codafy plug-in for RapidWeaver (@realmacsoftware) - FireBug for RapidWeaver!

Republishing using Unity 2.0

Just got the Unity 2.0 theme from Nimblehost (@nimblehost) - looks really neat with lots of controls. Will be tweaking the layout of FreeRangeCoder in the days to come. One thing which sold me was the automatic reformatting of the site when iPhone / iPod touch devices are detected. Looks like the iPad doesn’t have any special reformatting at all - but then it’s got a big screen!

Safari Extensions: Cool Stuff Found

John F Braun and Dave Hamilton from the Mac Geek Gab have a Cool Stuff Found segment in their podcast. Here’s some neat Safari Extensions which I shared with them:

  • Sessions - which saves the set of tabs and can restore them. Even saves the tabs when Safari quits so you can reopen them when it restarts. This will help with Tim’s question in MGG #282
  • Reload Button - yeah I need that reload button!
  • Ultimate Status Bar - comes up to show the moused over link, replaces the “always on” status bar.

Share and Enjoy! PS this should also work with Safari on Windows too...

Safari 5 and PDFs & TIFFs

Just discovered that Safari 5 renders PDFs in place and if you mouse down to the bottom of the window, a translucent overlay appears for zooming, viewing in Preview and saving to the Downloads folder. Used to have a PDF plug-in but now no more!

Additionally TIFFs will also render in place and you can drag and drop them to a Finder window. Have been looking for a way to view TIFFs on the US Patent Office’s website - and now it’s built in.

I’m beginning to like Safari a whole lot more!!

Review of Things up on NosillaCast

Check out my audio review on Things in Episode 250 from Cultured Code at NosillaCast. Thanks!! Full text of the review in the body of this post (click on More!)more...

More on Things

I’m glad to say that keeping with the Getting Things Done mindset has been working beautifully. Firstly, it’s remembering to keep track of all my projects and actions using Things for the iPhone and Mac. When I can’t do that, I jot the task or action down in my Livescribe notebook or a small 3x5 flip notebook which I keep in my purse. Later when I have the iPhone or Mac, I transfer the task items into the electronic brain.

I’ve also emptied my e-mail inboxes for home and work - yes, there are NO messages in ANY of my inboxes! I triage my inbox each time mail comes in and move things to @Action, @ReadReview or @Reference mail folders, as mentioned by David Allen in his book. Then when it comes time to take action, I sweep through my @Action folder and dispatch them. Any e-mails which I need a response to, get filed into @WaitingFor - which I review regularly to keep track of the response.

It’s been almost 2 months since I started on my voyage with GTD, prompted by articles in ATPM (About This Particular Macintosh). It takes discipline to focus, organise references, gather tasks and determine next actions but the result has been worth it. My brain feels a whole lot less stressed since I’ve started putting all my project tasks and actions into Things - even home chores! I still need to sort out my filing system at home and at work - I’ve bought a Brother P-touch PT-2700 labeller (which works with Mac OS X) for home, and use the Brother labeller from my lab at work.

Things - my To Do list

Been using Things for the iPhone and Things for Mac OS X. Another set of clean apps which transparently syncs between Mac OS X and the iPhone. Check out Cultured Code's website for more information. Highly recommended. I've got the Audible version of "Getting Things Done" by David Allen and will be listening to that - Things uses that paradigm in its design.