my opinion on macos

July 2, 2017

In the last post about iOS, reader Wolfgang Lonien asked:

Would be interesting to hear your opinions about MacOS vs. Linux and BSD. How much of it is open like in BSD, how much is the proverbial “walled garden”?

The answer is complicated, and I’ll answer it in two parts.

Open vs Closed

The commercial version is closed. It’s not open like Linux or BSD. macOS as it’s now known (and was known as Mac OS X in previous incarnations) is closed, along with the many support frameworks and applications that come bundled with it. It’s shipped pre-installed on every Mac that Apple sells, ready to run as soon as the new Mac is powered up. This simplifies things greatly. The problem with this pat answer is that while the official binary version as shipped is closed, Apple has released the source code in a limited form for an open version known as Darwin.

Darwin is the source to an operating system composed from NeXTSTEP (later OPENSTEP), elements from BSD, and the Mach microkernel. NeXTSTEP was the underlying OS for Steve Job’s NeXT computer, the computer he developed when he left Apple in 1987. When Steve was re-hired by Apple in 1997, one of the stipulations placed upon Apple upon re-hiring Steve was that Apple would buy NeXT. Apple then announced that the next official Apple OS for the Mac would be derived from NeXTSTEP/OPENSTEP. It was finally released as a public beta in 2000 as Mac OS X. At the same time in 2000, the core elements were released as open source as Darwin under the Apple Public Source License. The Cocoa and Carbon frameworks in particular, as well as many higher-level tools, remained closed.

Here’s what uname -v shows in ITerm2:

Darwin Kernel Version 16.6.0: Fri Apr 14 16:21:16 PDT 2017; root:xnu-3789.60.24~6/RELEASE_X86_64

In the first ten years of Darwin, up to 2010 and Darwin 8.0.1, Apple released a binary ISO to help install Darwin. After 2010 it has only been released as source code. Apple has never released the iOS variant for ARM.

I’m sure this sounds terrible to the purists, but I personally don’t care. The OS works, it’s solid, and I love the desktop. After over 30 years working with graphical desktop operating systems from Windows 1 through AT&T System 3, IRIX, UnixWare, Solaris, and on through Windows 10, I find macOS to be the most refined of them all. It’s notable that macOS is the first, and only, BSD variant I work with. I’ve tried many times in the past to install Free BSD and Net BSD on hardware and virtual machines, and I’ve given up every time due to one stupid glitch after another with the installation. I have no love for any other BSD except Apple’s macOS.

Walled Garden vs Open Installation

Apple’s macOS has its own App Store where you can purchase thousands of applications. It’s not ideal, and many have complained against it since its introduction in 2011. My biggest complaint is that I can’t update apps purchased outside of the app store within the app store. Biggest example of this is my purchase of OmniGraffle. While the App Store shows I have it installed, I have to go to the Omni Group’s website to pick up (and pay for) major upgrades. Free minor updates come via the application itself. It’s an annoyance, to be sure, but it points to a key positive point: You can install any software you want without having to use the App Store.

I have, for example, HomeBrew, through which I have the latest releases of gcc, python, and R; Google’s Go language, Mozilla Research’s Rust, Oracle Java (version 8 update 131 for now), NetBeans 8.2, JetBrains Toolbox with four of their IDEs, Xcode, Visual Studio Code, Android Studio, PowerShell for macOS, Sublime Text, Iterm2 (because I absolutely cannot stand Terminal), VirtualBox (with several Linux VMs), Office 365, GitHub’s desktop, Unity, Blender, Lightroom, and on and on and on. In short the system is wide open to serious development tools and just about anything that can be installed and/or compiled to work on macOS.

As for the App Store, it’s good about delivering updates/upgrades to macOS and all the Apple tools that came pre-installed. The only thing I’ve installed from the App Store are “minor” applications like Bear (in fact I think that’s the only thing I’ve installed from the macOS App Store). macOS isn’t locked down the way iOS is, and I appreciate that, the same way I appreciate that iOS is as locked down as it is. My iPhone has become a vital part of my personal and work life, and if it wasn’t as locked down as it is now, I’d lock it down hard myself. It’s one of many reasons I switched from Android (Samsung Galaxy) to an iPhone back in 2015. Android is far more easily hackable and rootable than iOS; way too easy.

One More Thing

macOS is UNIX Certified, specifically The Open Group UNIX® 03 standard. I tend to pay attention to standards in my line of work, and the fact that macOS conforms to the UNIX standard, instead of calling itself UNIX-like, adds to the value of the overall computer system I use for my personal and professional work. Neither Linux nor the free BSDs are there, and probably never will be. That doesn’t mean I won’t use them, but then again, it also means I won’t walk away from macOS nor the hardware on which it runs. I depend on all my tools, and I want them to be the best quality tools I can possibly afford. macOS definitely fits in the quality tool category.

One response to my opinion on macos

  1. 

    Hi Bill,

    thanks for the very good history lesson. Aaahh, fond memories of a time when I first read about that NeXT cube (archived here), and I thought wow, that’s the future!

    I personally don’t have the need for a Mac or anything else than Debian on my self-built hardware at the moment, but two reasons for asking were:

    1. My wife isn’t very happy with her current Nexus 5X (and I’m not happy with Google’s update policy for older devices, which means no Pixel phone), and

    2. Our daughter starts composing on the piano a bit, and for that there’s nothing like Logic Pro X in my humble opinion, and if it were only for the realtime chord abbreviations which that shows (if you play the correct bass note of the chord of course, otherwise it could be any chord substitution as well).

    Like I said, no personal need right now, but should I ever decide to use things like Lightroom, Photoshop, or even Logic Pro X or ProTools, then after listening to Paul Davis’ (from Ardour/Jack) recent talk in France, to which I’ve pointed in an article on my own blog, it would be pretty clear to me that it would be a Mac instead of Windows, even if I could (and do occasionally) run the latter on the same hardware I already have.

    Thanks again, and
    cheers,
    Wolfgang

    Like