Note to Developers

KylaSteven Frank, of Panic fame, posted a note on his weblog discussing .dmg files, .sit files and .tar.gz files as alternates to the developer question “How should I distribute my software?” After spending about an hour helping Scott troubleshoot his iBook’s php/mySQL installation last week, I’d like to tell developers my thoughts on this issue.

First, my presumptions: Most Macintosh developers are long time users of the Mac OS. They grew up with System 6 and before, and have progressed through Mac OS X. They love the platform and know it intimately.

Most Macintosh developers write software for newbies. Most Macintosh users are tried and true die-hards or at least long time users, but let me make a distinction here. Most Macintosh users aren’t developers. They don’t want to be. They just want it to work. On top of that, a lot more new Macintosh users aren’t tried and true die-hard Mac users… yet… but Mac developers can help change that fact.

One of the comments to Steven’s post says this:

“This has been in the mac forever, you put a cd in and it will tell you to drag the folder.”

It’s true that there have been application distributions that had drag and drop usability on the Mac for a long time, but non-traditional Mac users aren’t familiar with this idea. On Windows, If you download an application, buy it in a store, or a friend gives it to you, 99% of the time it’ll run an ‘installer’ that does something to your computer while you wait for it to finish. I’m not saying that installers are something I want to see on a Macintosh, but 99% of the making the switch don’t know the beauty of non-installer-requiring software.

Anyone that’s new to the Macintosh experience will not approach installing software the same way as a tried and true Mac user. Developers need to keep that in mind when distributing their software. The .dmg approach is very foreign to anyone not fairly familiar with the ways of the Macintosh. I’d go so far as to say that using disk images to distribute your software is probably one way to frustrate any user that isn’t an old-school Mac user.

Even old computer pros, like Scott, who is fairly new to the Mac OS after having used Windows and Linux for the past 20+ years, gets insanely frustrated with the Mac experience, at times, because it doesn’t operate like he’s used to. Just last week he was asking me about an installation of GLTerm, which is distributed on .dmg and wondered what the hell a .dmg was.

Disk images are not intuitive to computer novices, or Mac novices. Stuffit files are a little less obtrustive because at least Windows users are familiar with downloading .exe or .zip files. Any *nix user is familiar with downloading .tar.gz files, so those should be safe as well.

I’d like to put in my two cents on this discussion saying that I truly think that Mac developers should follow Steven’s suggestions about using .sit or .tar.gz files to distribute their software. It’s more intuitive for non-traditional Mac users and tried and true Mac users will know what to do with the file.

Think about that. If developers really want Apple’s Switch campaign to succeed, they too need to help make the transitional experience easy for those new to the Macintosh.

It’s good to hear that Aaron and Brent are both open to changing their customs to meet the needs of the user… that’s a good developer. Thanks Steven for bringing this issue to light.


5 Responses to “Note to Developers”  

  1. Gravatar Icon 1 Frank

    Some good points here, and of course the multitude of different formats is not a great thing, but a single algorithm works on all of them — keep double-clicking until directed otherwise.

    If it’s a .sit or a .tar.gz file, you’ll wind up with an installed folder. If it’s a .dmg, you’ll get a mounted drive on your desktop. Generally, double-clicking on the drive will give you a window that tells you to drag the image to where you want the software.

    Installers are good for 3 things: 1) Installing stuff that has to go in places other than the application (Windows registry, Mac OS patches), 2) Forcing the user to reboot, and 3) Controlling software distribution (it’s easier to lock down an installation procedure than a disk image).

    It’s interesting to see Scott’s Mac frustration; I used to see it all the time dealing with clients. Once you’ve learned the Windows Way, there’s a lot you have to unlearn to be comfortable on the Mac. My experience suggests the reverse is not true, although I can’t hazard a good reason why Mac users seem to have an easier time going both ways.

    The CFO of the company I used to work for had switched (we all used PowerBooks), and I bought him a copy of Crossing Platforms: A Macintosh/Windows Phrasebook, which he said helped him make the transition more easily.

  2. Gravatar Icon 2 Adam Rice

    I don’t see how .tar.gz or .sit files are preferable to .dmg files if, in either case, you wind up looking at a volume or folder view of some file to drag onto your hard drive. The program that mounts the .dmg is different, but you still get at it the same way. The only difference is that most people have stuffit set up to auto-delete .tar.gz or .sit after decompressing them, but that .dmg files remain when the image is mounted. This seems like a minor point to me. Also, .dmg files have not been widely used (except by Apple itself) prior to OS X.

    And the logic of making the Mac more Windows-like to accomodate switchers undercuts the whole point of switching, right? I see your point, but still.

  3. Gravatar Icon 3 Scott Johnson

    As the clue free Windows and *nix guy that John mentions I have to say only “Amen Brother John”.

    Seriously. The switch transition from Windows to a Mac is NOT trivial. For all the vaunted usability, Macs are as idiosyncratic as PCs at times. Here’s an example. A Mac window can only be sized from the lower right corner, not all sides as is the norm in *nix and *indows. But the dock often obscures windows. So how do you resize it?

    I’d strongly encourage Apple to setup a human factors observation lab and watch people actually try and do the switch. It’s the little things that drive people freaking nuts. Stuff like that. The need to constantly ctrl+click. The fact that delete doesn’t work in the Finder to delete a file. There are like 50 or 60 utterly annoying things that constantly remind you “We’re Mac. We’re Better But We’re Different”. I hate to say that Apple needs to become more like Windows but I suspect that Switch will do well initially and then hit a brick wall as it tries to scale past the early adopters.

    Oh and >> The only difference is that most people have stuffit set up to auto-delete .tar.gz or .sit after decompressing them, but that .dmg files remain when the image is mounted.

    Huh? I ended up with a desktop covered with .sit, .tar, .gz and .dmg files after instally just a handful of things. I mean covered. I take it this is an advanced user option?

    And this whole disc image mounting thing is for the birds. The birds.

    But thanks again John.

  4. Gravatar Icon 4 A Guy

    I have to say that this is a sore point with me right now since I’m wanting to port CocoaMySQL (cocoamysql.sourceforge.net) to Linux with GNUstep (www.gnustep.org) and discovering that the source code is only distributed in .dmg format. :-( He was good enough to send me the source in a tar.gz, but it was still disappointing to find that source code was being distributed in a format I can’t access.

  1. 1 NSLog();


Leave a Reply





Bad Behavior has blocked 4504 access attempts in the last 7 days.