Just about every app now comes with the ability to tell me when there’s a new version available.

Which is good. As far as it goes.

Only a few do it as well as MarsEdit which does the following:

MarsEdit Update Available

  • It tells me what version I have, and what version is now available
  • It gives me a complete list of the changes right there
  • It gives me 3 reasonable choices with a good default (install update).

This isn’t complicated stuff, but why don’t more apps do it like that?

Minor suggestion: although I suspect almost everyone would assume 1.1.5 to 1.1.6 is a free upgrade, tell me it’s free. Ever since BareBones charged charged for the 8.5 update of BBEdit, I find myself more wary of this (who charges for point upgrades? How can there be enough to warrant charging me an upgrade fee but not enough to change the version number?)

Change the top line to something like “A free update to MarsEdit is available.”

Even more minor suggestion: I’m on a dialup account. Tell me how big the update is before I have to make a decision. If it’s 1-2 megabytes, I’ll download it at home; otherwise, I’ll wait until I’m at work.

It’s a minor suggestion because after saying “Install Update” this window appears:

Downloading Update

and tells me how big it is. The more important thing to notice here is that I didn’t have to go to the MarsEdit website to download the update. It’s doing the work for me. Why? Because it’s a computer, and computers are supposed to make our lives easier. So why should I have to fire up my browser, load a web page, find the link to download, and then download it, when you could do it for me?

No answer? Because it’s clear that the app should do this. Yet many don’t, even apps from very respectable Mac developers don’t always get this right.

Once the download has completed, MarsEdit continues to tell me what’s going on::

Extracting Update

and then:

Ready to install

That’s it. I clicked the button, MarsEdit restarted with the new version.

John Gruber just wrote about (and followed up about) the difference in how easy something feels vs how many steps it takes. Well this is both easier and takes fewer steps.

The “hard way” of updating an app that tells you a new version is available:

  1. Click Update
  2. Wait for web page to load
  3. Find download link
  4. Quit app manually
  5. Mount DMG when the download completes
  6. Copy app from DMG to /Applications folder
  7. Eject DMG
  8. Decide to throw DMG away or keep it (and if keeping it, where to store it)
  9. Relaunch app

Are any of these steps difficult? Not really, although sometimes finding the download link can be more of a challenge than necessary if the developer expects you to know, for example, that you need to click on the name of the app to download it.

But compare the above to “the easy way”

  1. Install Update
  2. Click Install and Relaunch

7 fewer steps, and the two required steps take nothing more than pressing the Enter/Return key twice.

I hope more and more apps will follow this path in the future.

It’s a little thing, but little things mean a lot, especially if you want your users to be using the newest version of your software.

UPDATE: Daniel Jalkut was nice enough to inform me that he’s using a modified version of Sparkle Plus to do this. I’ve seen other apps using similar methods and I hope that it catches on with lots of different developers. See also Sparkle’s homepage and a list of apps using Sparkle.