July 2009

Reading Lukas Mathis’s latest post on ignore the code reminded me of a similar rant I let loose over 2.5 years ago on a LifeHacker.com “Mac Switchers Guide.” The commenting system over at LifeHacker has become needlessly complex (I can’t even link directly to a particular comment), so I’m reposting my comment here. My comment is in response to the common myth that installing programs on a Mac is some kind of Utopian dream, while doing it on Windows is like going through Purgatory. As a Mac-head myself, but one who can think outside the realm of fanboi-isms, I respectfully disagree.

First, here is LifeHacker’s section on “Installing apps” on the Mac, making it sound like it should be common sense to anyone who knows how to use a mouse.

Installing apps

This may seem like somewhat of a no brainer for Mac veterans, but when you switch to a Mac from a PC, you may find the installation process of new applications a bit confusing at first. That’s because, in general, there’s absolutely nothing to it. When you download an application (generally in the form of a compressed .dmg file, which will mount as a drive when you open it), you’re pretty much done with the installation process. You can run an application (marked by the .app extension) from anywhere on your computer, and there’s really no installation to it. Broadly speaking, the installation of a new Mac app generally consists of moving the new application to your Applications folder. Many apps make this very simple, like the mounted Firefox .dmg above.

Unless you have your own system for arranging apps on your Mac, copying new apps to the Applications folder is a good practice. What you don’t want to do is forget to move the app from the .dmg folder to your hard disk.

I responded in the comments, with some info that might actually be helpful to switchers (and a requisite amount of snark):

[U]nfortunately, the issue of application installation needs to be emphasized yet again, in addition to the previous comments. Apple seriously needs to update their guidelines or make actual restrictions on how programs should be installed. Even though it’s supposed to just be drag-and-drop (i.e. drag a .app to the Applications folder), it’s never quite that simple. First of all, the .dmg paradigm is broken. Plain and simple, it just doesn’t make sense to normal people. Why should you have to mount a virtual drive (a completely foreign concept to people who have never mounted an actual drive to begin with), then copy an app from the virutal drive onto their regular drive, unmount, then delete the DMG? If I didn’t know what a DMG actually is, I would be terrified of unmounting/ejecting it (if I even knew I had to do that), much less throwing it away. What happens then? Does the program get thrown away too?

But even if you understand the mounting/unmounting situation, installing a program can still be difficult or confusing. I’d say about 60% of the programs I’ve downloaded/installed are simple .app’s, where I drop them manually into my Apps folder. However, there are some that come in .pkg (package) files. You don’t drag/drop those, you open them, which starts an installer, which will then copy the .app and associated files to Apps for you. But how do you know what is a .app and what is a .pkg? Well, I know from the icon, but many people wouldn’t. I have to wonder, how many people, who have been told time and time again that they just have to drag/drop into the Apps folder, drop those .pkg files into Applications, then run the installer everytime they try to open a program?

Finally, you get a myriad of installers that are somewhere in between simple drag/drop into Applications or a full-blown installer. Those are ones that might pop-up a simple install screen (like the Firefox screenshot above) to help guide you. But those are also confusing. What is that firefox window trying to tell me? Is it instructing me to drag the .app from the mounted disk into my Apps folder? Do I drag the FF icon in the pop-up to Apps? Is that little icon of the Apps folder in the pop-up just an icon, or is it a symbolic link to my actual Apps folder, so that I can just drag the FF icon to the Apps folder icon? Sometimes the mounted disk image has a symbolic link to my Apps folder, so in the mounted disk, I can drag the .app directly to the link. But if I didn’t know what a symbolic link was, I would be completely confused. Why can I see all my Apps from this disc image? What happens if I close and delete this disk image? Do I have to access my Apps folder via this disk to run my new application?

And don’t even get me started on uninstalling applications. Just drag/drop it into the trash? Ha, yeah right. 3rd party applications like Yank! or AppZapper [or AppCleaner] are essential if you actually want to delete programs from OS X.

As much shit as people give to Windows installers and uninstallers, I never had a problem with them. 95% of the time, Windows installers are simple executables that open a wizard where the user rarely has to do anything other than press “Next” a bunch of times. Then hopefully people will get rid of the installers after they’re done, but if they don’t, it’s not a big deal. At least it won’t mount any virtual drives whenever someone starts that program, or present them with many, ambiguous ways to install or copy or move the program. Only a limited number of Windows programs do you download the actual executable instead of an installer, and these are usually reserved for “power user” utilities like PuTTY and DVDShrink, so people using these should know how they work.

Given these problems alone, I have a hard time agreeing with the commonly held conception that Macs are so much more beginner friendly. I shutter at the thought of visiting a “Mac beginners” computer and finding it littered with DMGs that mount and unmount everytime they want to run a program.

My little rant was justified by several follow-up comments by other readers that showed I wasn’t completely off-base:

@joelion: this was a genius comment, i got a macbook last week and this answers (i think) all of my questions …

to folks who think the firefox installation is intuitive, i’d say that while the “installation info box” is cute, it left a good few things unanswered. i still didn’t get why there was this 3d rendering of a white rectangle with a firefox logo on it on my desktop …

Hey joelion –

I just bought a mac and I was going batty trying to install Firefox. Why is it mounted? What the heck do I do now? Dear god I was ready to return the thing and buy a Lenovo. Thanks for the big write up. Very appreciated.

@joelion: Thanks for going a little further into .pkg vs. .dmg installations – I’m sure it’ll be helpful to more than one reader

of course, some readers didn’t get it:

I see your point about .dmg files being weird but I think you’re seeing this as a one sided problem. There are way too many methods in the Windows world to installing an app, it could be

– a plain .exe with no install (if .dmg is confusing then .exe and the rest is too), like uTorrent
– InstallShield (the 3rd party tool)
– .msi (many different versions of MS’s tool that require a lot of developer time)
– InstallAnywhere (and the other 3rd party installers)

Each one of these has a different look & feel (although this might be slight), confusing the user experience. I agree that maybe .dmg files should be auto-ejected or auto-mounted but then I wonder about security and flexibility.

He says there are “way too many methods” to install an app in Windows. Despite his list of 4 “methods”, there are really only 2.

  1. The “plain .exe” with no install, which I covered in my comment. This is where you simply download an .exe and can run it directly. I said this is mostly used for “power user apps” like PuTTY, and I think uTorrent fits this bill too. Nevertheless, I don’t think it’s necessarily confusing – it would be akin to downloading a .app directly on the Mac. The only “problem” I have with downloading .exe’s directly in Windows is that you then have to find a place for the .exe to live, usually involving creating a folder in “Program Files”, then manually creating shortcuts in your Quicklaunch bar and Start Menu, etc, etc. On the Mac, even if you download a .app, you can just move it directly to /Applications, which is nice.
  2. InstallShield/.msi/InstallAnyware/3rd Part Installers – these are all basically the same. Different look-and-feels, maybe, but you’re still just pushing “Next” a bunch of times for the most part. They provide basically the functionality as .pkg on Mac, they just don’t look as good.
  3. OK, there are at least 3 ways, if you include .zip files and other ways to package executables and installers. But that’s not the point!

It wasn’t my point to defend Windows’ installers – I don’t give a damn about how good or bad Windows installers are. And if your only defense for what installing on a Mac is like is “yeah, well, look how bad it is on Windows,” then you’ve lost the battle. Mac developers (and Apple) shouldn’t strive to be “better than Windows.” They should strive to be great, and the mess that Mac installers are in now is not great – in fact, it’s downright bad. Apple needs to step up on this issue and take control. It looks like it’s too late for Snow Leopard, so…. maybe in OS X 10.7? Wishful thinking, and anyways, we’ll be mostly done with the next Presidential election by the time that’s out – plenty of time for countless new Mac converts to get frustrated and confused on their shiny new machines.

After a 3+ year blogging hiatus (mostly because nothing as interesting has happened in my life since living in Germany for a year. well, except for the whole “getting laid off” and company going bankrupt thing) I’m reviving this blog to post some random thoughts/comments/essays that I don’t think or expect anyone to find particularly interesting, but mostly for my own safe-keeping. i.e. if I post my thoughts here, they’re much less likely to get lost forever on my hard drive. So… read at your own peril from now on.