The random musings of a software developer

Macworld/iWorld 2013

3rd and final day at Macworld/iWorld 2013. It’s been a fun show.




PopClip Dash extension fixed

Just received a tweet from Pilotmoon Software that the PopClip Dash extension has been fixed.

On my way to Macworld /iWorld 2013

Typing this from the air enroute to San Francisco for Macworld/iWorld 2013. Lots of things to see, seminars to attend, but most importantly friends in the Apple community to connect with. See you at the show!

Of Dyson and Design

I’ve been thinking recently about the reasons why I’m so drawn to the Dyson family of household products. I believe it’s the elegance of superb industrial design applied to ordinary things about the house. We have a Dyson DC-17 Animal upright vacuum cleaner and here’s what I like about it:

  • when you turn it on, it starts in a known state – the vacuum begins ingesting dirt and the brush roller will come on when you lower the handle. This has been referred by many interface designers as the Law of Least Surprise. Some of the vacuums I have used power up in the state which you last left. Goodness knows what that might have been, given that it might have been a week or more ago!

  • it automatically adjusts for carpet height. The degree which you move the handle down sets the brush roller height to match the carpet height being vacuumed. My old Eureka had a dial to set the height – is this carpet a setting of 3 or 5? Who can tell?

  • it has a transparent dirt collection container. This to me serves two purposes: you can see the dirt being actually sucked in (yes, it’s working!) but more importantly, see when it’s full. My Eureka has a bag, tucked away on the inside, under a lid. Full, empty, or almost full – I have no idea.

  • The on/off controls for the vacuum and brush roller are easily reachable, clearly marked, and designed well. Yes, you can even turn off the brush roller for hardwood floors. My Eureka has a flap switch you step on the left to turn it on and off, and a round button on the right to unlock the handle. Both are not marked, you just have to know. It also doesn’t have a switch to turn off the brush roller.

  • Small things matter. The HEPA filter in the Dyson needs to be washed every 6 months. This filter is marked with the digit 6 with an underline beneath it to indicate not only the number of months but also to differentiate 6 from 9. There’s a tap icon to indicate what needs to be done, no words in multiple languages, just 6, an underline, and a tap. Details, I know, but it counts.

  • The new Dyson vacuums have a ball which contains the vacuum motor, it lets you manouevre the cleaner deftly. But did you know that Dyson invented the ballbarrow? Design reuse there!

  • Dyson has recently introduced a fan without exposed blades, the Dyson Air Multiplier which was an innovative reapplication of the vacuum cleaner motor. This fan was reinvented as the Dyson Hot which incorporates a heating element and became an electric heater which circulated warm air. There is a video and article from the Telegraph discussing the engineering in its design. There’s also the Dyson Air Blade – a neat way to dry hands in restrooms.

You can see where these design ideas can help us build more engaging and useful applications.

To wit:

  • Always uphold the Law of Least Surprise. Design for the most expected user experience. Take for example the iPhone camera activation button on the lock screen. If you didn’t know how to use it, you might tap the camera button and immediately see it bounce up and reveal a sliver of the camera app, a cue to perhaps think about sliding the button up to reveal the entire camera app.

  • Make things as intuitive and easy in the application interface. Hide complex computations and lookups so as to present results succinctly. Take guesswork out from the functionality exposed by the interface.

  • Show that the application is working – put up a spinning cog or progress bar. If the application uses storage – maybe a bar indicating storage space used would be beneficial, especially when the colour of the bar changes to say, red, when nearly full.

  • Make controls obvious in their use and stick with design guides and commonly expected behaviour (law of least surprise, again).

  • Details matter – it’s what separates the truly elegant applications from the run of the mill ones.

  • “Whevever possible, steal code” – Jon Bentley, Programming Pearls. Jon wasn’t referring to the misappropriation of software, but of the reuse of code. I’d also add “Whenever possible, contribute code” as a corollary.

  • Innovate. Come up with clever ways of doing things, and using things ingeniously to make other things

Fix for Dash PopClip Extension

My favourite extension PopClip has an extension for my favourite developer reference application Dash. However, with the 1.7.7 update of Dash there has been a subtle change in the name of the OS X Service which allows search in Dash. This used to be “Look up in Dash” and is now “Look Up in Dash” – notice the slight change in case. Unfortunately OS X Services are case sensitive and as a result the PopClip extension does not work.

I’ve tweeted the developer of Dash @kapeli and they’ll be issuing a fix to the extension. In the meantime, to fix it yourself:

  1. Quit PopClip

  2. Go to ~/Library/Application Support/PopClip/Extensions

  3. Control- or Right-click on Dash.popclipext and select Show Package Contents

  4. Open Config.plist in TextWrangler or some other text plist editor and change:

    <key>Service Name</key>
    <string>Look up in Dash</string>


    <key>Service Name</key>
    <string>Look Up in Dash</string>

    with a uppercase U in “Up” and then save the file.

    If you’re using Xcode, change the key “Service Name” to “Look Up in Dash” with the same uppercase U.

  5. Restart PopClip

WordPress client for iOS – Poster

Just checking out Poster. It uses Markdown to annotate the post. My plan is to use it as the primary posting app for Free Range Coder when I’m on the go. Will be giving it a shakedown at Macworld | iWorld this coming week. Most importantly, it supports TextExpander touch! And it’s a universal app too. What more could you ask for?

No comments

Markdown on Save Improved – improved!

A new version of the Markdown on Save Improved WordPress plugin has been released. This fixes the Remote client post problems. Hurrah! MarsEdit works again for Markdown posting!

Powered by WordPress