I Love Linux, But I Daily Drive a Mac for This Reason
macOS
Quick Links
-
macOS Gives Me the Best of Linux
-
macOS Wraps Unix in a Layer of Polish
-
macOS Means Apple Hardware
-
Homebrew Gives Me Linux Software
Summary
- macOS provides access to prized Linux features like Unix compatibility, essential tools, and scripting capabilities.
- Apple’s operating system offers a user-friendly user interface, excellent reliability, and efficiency; while Apple’s approach of designing software and hardware in unison puts compatibility issues to bed.
- Apple’s approach to software development with tools like Xcode can frustrate, but tools like Homebrew and services like GitHub bridge the gap to the best Linux software.
Linux is a wonderful operating system, and its open-source license is commendable. But for day-to-day work, I can’t give up macOS.
macOS Gives Me the Best of Linux
I started using macOS out of necessity, initially for cross-browser testing, and later for full-time work in a company that used Macs and only Macs. At the time, I’d used Linux (and even Unix) quite a bit, so I looked forward to the promise of a user-friendly GUI with a POSIX underbelly.
“POSIX” means, roughly, “Unix-compatible.” Interestingly, macOS is fully POSIX-certified, while Linux is not, although it’s mostly compliant.
As soon as I booted up, I went looking for familiar Linux goodies and I wasn’t disappointed. Using Finder to explore the filesystem, I found a familiar directory structure, albeit one with some Apple quirks. The presence of per-user home directories, with permissions protecting them, reassured me that I was working with a true multiuser system.
What’s more, those familiar directories (/bin, /sbin, /usr/bin) contained all the vital tools I relied on: diff, grep, curl—you name it. Opening up the Terminal app, I could run these in the same way I previously ran Linux commands. Using bash (now zsh) as a scripting language, these tools can be combined in countless ways to achieve everyday tasks easily and reliably.
macOS also included the more ‘beefy’ Linux goodies that I was used to, like the Apache web server, programming language interpreters and compilers, and version control via the ubiquitous git.
macOS Wraps Unix in a Layer of Polish
Let’s face it, the best things about Linux are its underlying architecture, its open philosophy, and its built-in command-line programs. Nobody says, “I use Linux because it has the best GUI.” That’s not to say GNOME or KDE aren’t good; they’re just not the main selling point.
macOS could hardly be more different. Since I moved from Windows as my daily driver to macOS over ten years ago, I haven’t looked back. After a short time getting used to it, Apple’s OS has always looked good, worked reliably, and got the job done.
While macOS occasionally attracts criticism for being a walled garden, this is one of its greatest strengths for me. When I was younger, I soaked up the intricacies of my systems like a sponge, whether I was using Windows or Linux. I tweaked, configured, and chased error messages; anything to avoid doing productive work! Now I just want to get stuff done, tinkering be damned.
Sometimes, I’ll run into a situation that leaves me cursing Apple’s heavy-handed approach. But these cases are far outweighed by all the times I haven’t had to worry about which driver I’m missing or why an upgrade has suddenly made my audio not work.
And most of the Mac interface utilities are good-looking, with excellent usability. The Dock operates smoothly and is available when I want it, hidden the rest of the time. The global menu bar is, for me, a huge improvement over per-window menus. I love the look and feel of Launchpad and the fact that all these apps strongly adhere to a consistent design ethos. With macOS, I actually enjoy looking at the GUI, in a way I never quite did with Linux and certainly never did using Windows.
macOS Means Apple Hardware
One thing that’s key to the controlled environment in which macOS thrives is the stock Apple hardware. I found running Windows on a self-built PC, with commodity hardware, to be a trial. Every so often, one component would start behaving strangely, proving incompatible with others. Upgrading parts of a computer, only to discover more problems as a result, started to feel like a game of Whack-a-Mole I could never win.
Apple’s hardware is every bit as restricted as its software, but the ecosystem is rock-solid as a result. I can’t remember the last time I had to power-cycle a crashed macOS or restart my machine to install software. My MacBook Pro lasted me a good ten years before I replaced it with an M2 Mac Mini that I expect to last just as long.
Apple Mac Mini (M4)
$30
$569 at Amazon
See at Apple
Even though Windows and Linux boast ever-increasing hardware support, there’s very little in the PC hardware world to compete with Apple’s trackpads or Retina displays. I’d miss macOS if I bought into Linux full-time, but I think I’d miss quality, reliable Apple hardware even more.
Homebrew Gives Me Linux Software
For a long time, there was still something missing from macOS, something that was an essential part of the Linux ecosystem: software. Although the bundled command-line tools are excellent, there are still apps—both terminal-based and with full GUIs—that I need. But Apple’s “half-in half-out” attitude to open source used to hold back some of the best Linux apps available.
Thanks to Homebrew—and supporting apps like Cork—this is no longer the case.
With Homebrew, installing software on macOS is as quick and easy as using a Linux package manager. With thousands of utilities and apps available, many Linux tools are provided either directly or as equivalents. The popularity of Homebrew has helped open-source software thrive on Mac more than ever.
Another pillar that has helped support the open-source movement on the Mac is GitHub. GitHub is the most popular host of open-source software, and it’s vital for community projects big and small. GUI clients like GitHub Desktop and GitKraken make development more approachable for Mac users, but the very existence of GitHub helps to ensure programmers can collaborate on Mac software more easily than ever.
Apple’s development environment, Xcode, is still frustrating and the insistence on retaining a closed-source, monolithic approach continues to put a strain on innovation, but initiatives like Homebrew and GitHub have definitely transformed the landscape for the better.
I still use Linux all the time, whether I’m ssh’ing into remote servers, or running a distro in a virtual machine using UTM. But, for day-to-day desktop work, macOS is the best compromise I’ve found between a walled garden and an open ecosystem. It gives me the best of both worlds, and I can still pretend I’m living the Linux life.