Last week I received a new Macbook Pro from my workplace to replace the old one. I had an absolutely terrible experience trying to set it up in conjunction with still using the older Mac.

This is the third time in more than three years across different work places that I’m using that as my development machine and I feel that I’m at a good place to form opinions as running it as my daily driver – working for around 8 hours a day.

I’ve read various discussions, and read a lot of time over the internet that one reason Mac is used as a development machine is because it just works, or everything just works out of the box with minimal issues. I think in some ways it does, it’s not terrible to work with, given that I just use it with closed lid, while connecting an external monitor, camera, mouse and keyboard with it. I don’t use the speakers or the mic because I use an external set of headphones and mic. So probably I just use it as a desktop machine, a very, very expensive desktop machine.

Although as a developer, I don’t use the core features that the OS itself provides – I’ve run Parallels on it while doing Web Development using C# and these days run stuff in Docker to virtualize a Linux OS (Debian and Alpine).

It’s a good thing that I don’t really use a lot of Apple apps because using them everyday is a very frustrating affair. And I say Apple because I’ve not been using a lot of third party mac applications because I’m still a Debian guy at heart.

  1. Mail app doesn’t work as intended, and had random issues where it would just take one or two CPU cores and I had to kill it.

  2. Calendar keeps working, until it doesn’t. There have been several instances when I had to reset the calendars on the Mac.

  3. The new UI looks a lot like it was only made for touch users in mind, even on a laptop. The notification center is just crazy with tiny close buttons, and if I miss it and click on the notification it just opens up all the notifications

  4. Bluetooth didn’t work for the longest time. I could connect my devices on the old mac, but couldn’t connect them to the new one. I made sure that I would forget them on the old Mac before I connected them.

  5. Login screen would hang at least 1 out of three times if I used touch id. It would just hang and not work.

  6. To date my external monitor only works consistently with one of the two USB-C slots on the left side. If I plug it in the other one it doesn’t work until I try connecting it a few times

  7. I have an iPhone but don’t use the iCloud storage because I have setup a NextCloud. There is absolutely no way to stop iPhone from reminding me everyday to sign up for the paid iCloud subscription

  8. The Spotlight has stopped working many, many weeks ago. It just keeps indexing my files.

I just want to point out that I’m not a big user of Mac, so I can’t really say if the quality has eroded over the years or was it always the same. Most of the text I type is written in Emacs, most of the websites I browse are opened in Firefox, I use KeepassXC as the keystore, I use the terminal to run commands, I use Fastmail for mail. Every application I use is driven by speed instead of the UI, so I’ve never seen the benefit of immersing myself into the Apple ecosystem.

I don’t really use Mac applications on a daily basis, but when I think that someone somewhere (my company’s IT team) is paying $3000 for the machine that I use, and Apple is making 40% gross margin on its products, I would expect absolutely no fault in their hardware or software (ok, As a developer I know that is impossible but one can only dream).

In my view, using Mac as a development machine is really beneficial for keeping the same set of hardware across all the developers. It kind of makes a ton of sense for the IT/Provisioning team, and to a lesser degree to the developers to use it as a really expensive development machine. But damn it Apple needs to have better QA for hardware and software for the price they charge for their devices.