The State of macOS for Software Developers

I vividly remember the time when I switched from Linux to (what was then called) Mac OS X for working. Back then, that was mostly Ruby on Rails (remember mongrel_rails?) and JavaScript development (Hello IE6 and debugging with alert() popups👋 — I don't miss you).

The Mac platform has served me really well for a long time. I loved the "it just works" feeling that can come from a good combination hardware and software. It also got me into developing for the Mac platform itself. With developing small Cocoa apps and command line tools first and later working on various iOS apps, the Mac became my natural working environment and didn’t make me look back into the Linux or Windows world.

Recently I have been wondering though if this is still the case. A lot happened on Apple’s side as well as mine. Some of Apple’s hardware choices, like the Touch Bar, recent keyboard issues and the ports situation on MacBook Pros are still puzzling to me. The Windows Vista-like nagging for permissions that started with macOS 10.14 and got worse with 10.15 feel like paper cuts to me.

In The Talk Show Episode 272 Rich Siegel put it quite well:

"It feels like the Mac is becoming less and less a developer platform for people who aren't actually targeting Apple OSes"

The whole segment of that episode is worth listening to.

I’m finding myself in exactly that boat: I hardly do any macOS or iOS app development any more. Through Clojure I have found my liking to Emacs as a development environment, which makes me way less dependent on macOS. Additionally, Safari’s developer tools are lacking compared to Chromium’s and Firefox’.

I can’t say where this is going but right now it definitely makes me reconsider my choices. I just ordered one of those sleek-looking, expandable PineBook Pros that come with Linux preinstalled and run on an ARM64 CPU. It definitely won’t be able to serve as my main dev machine but for $200 it will serve me as a "what if" experiment to see if returning to Linux for dev could work for me.

Your thoughts? Find me as @kommen on Twitter to discuss!