I’m working on the Linkage app for Mac, and I’m a little annoyed at the online comments about installers in general and Windows in particular. I appreciate many of the shortcomings of the Windows MSI files and how a simple drag-drop action to install an app is simple. I have a problem with how fans of the Mac portray people who question this paradigm and how they never address the issues associated with the drag-drop installation method. Let’s look at honest pros and cons:

Windows MSI Installers

Pros

  • When the user double-clicks the MSI file, they get a set of options for installing the app. These include where to install it, whether all users or only one can use it, and whether to install optional files.
  • Users don’t need to know the file system and where files are installed — they can pick defaults.
  • Uninstalling the app will remove most or all of what was installed.

Cons

  • The installation process can change the system a lot and in ways that are invisible to the user.
  • The developer had to do A LOT of work to create the MSI file. It’s certainly a con for me.
  • Uninstalling the app causes the app to lose any settings.
  • the MSI file is yet another executable file that the user might not trust and could contain evil code.

Mac DMG Files

Pros

  • When the user double-clicks the DMG file, they can run the app from Windows, which shows the DMG contents.
  • There are no options besides dragging the app to the Applications folder.
  • The installation process does not change anything in the system.
  • Uninstalling the app only requires dragging the app file to the trash bin.
  • App settings are not lost during the uninstall.

Cons

  • There are no options besides dragging the app to the Applications folder.
  • A new Mac user may not find the process intuitive, and it may not be obvious exactly what the Applications folder, or rather the shortcut to it, might be. For all they know, they are dragging the app to someplace evil.
  • Any settings are kept on the hard drive, so the app is never fully uninstalled. To remove leftover files, a third-party cleanup app might be needed.
  • There is no consistent UI for the installation process. Every app must create a DMG disk image file and then convey to the user that this is an installation file and that the user must drag the app to the Applications folder. Nothing is built-in.

One thing to remember is that some of the arguments people make against the Windows method of installing files are related not to the installation process but to how Windows apps might share or use DLL files (files with library code from various sources). The issue with DLL files is NOT related to the installation process itself.

I would prefer to ask a question and then have the user answer it. The drag-and-drop installation method confused me for many months, if not years, after I started using a Mac. I had no idea why I was doing this when the OS should have done it for me. I see no benefit in running the app from the DMG file, so the extra option of dragging the app file around is just extra work. I would much rather double-click a file and click “yes” than double-click a file and drag another file to a folder that seems like it’s just locally inside the DMG file. And I hate that there is no built-in way to uninstall an app on the Mac. Even on Windows, apps can’t be trusted when leaving their files behind after an install, and both operating systems should not have left things like this.

So now I’m stuck trying to make a nice DMG file that tells the user to do that drag-drop thing. I’m thinking that maybe I can get the app to ask to copy itself to the Applications folder and not even have that drag-and-drop install feature. Ultimately, I will do what is most familiar to Mac users, not me. My goal is always to get the users what they need, regardless of my opinions on how things should work. Okay, that’s a joke since the Linkage app was designed to have a UI that is different from every other CAD package out there. But that’s part of why I made it. I certainly didn’t make it so I could screw around with how the installation process works on a Mac.

And I’m sure that most Mac fans are cool—just not those on Reddit who feel the need to insult users who might prefer an installer app rather than the drag-and-drop mechanism on the Mac.