10 December 2017

A year with a Mac

Introduction

For a bit over a year now I've been using a MacBook Pro and while it's a decent piece of hardware the way people react when they notice it you'd think I was provided a Lamborghini as company car. I really didn't appreciate the status-symbol-ness of Apple's hardware until I got to experience it first hand.

It's pretty absurd, really.

While I feel this should be obvious I would like to point out that the below is my personal experience and opinion. YMMV.

The good

The computer is build pretty sturdily. The form factor is also ideal to drag to a meeting along with a folder to take notes in. Battery life is awesome, so unless you end up in some insane marathon meeting dragging the charger around shouldn't even be a concern.

I also like the magnetic power plug, makes just grabbing the laptop to go anywhere a breeze (and someone stumbling over your charger cable won't ruin your hardware...). Of course, this would be slihgtly less of plus if there were such a thing as a dock. Which there isn't.

The screen is also plenty nice and has a good resolution so you can comfortably use an IDE without having to rely on an external monitor, quite in contrast to the default resolution of the Lenovo machines that are often handed out.

Not having to jump through hoops to get suspend to ram to work is quite convenient as is not having the machine forcefully reboot when an update arrives while you weren't looking at it for 10 minutes. Moreover being able to actually keep the machine running for months without issues is quite convenient. The only downside here is that you might get sloppy on saving your work, but that's hardly something one can blame Apple for.

The downsides

That said, for a laptop that's used so extensively by developers it has some extremely annoying downsides.

Let's start with the single most annoying thing on the MacBook: the keyboard.

The keyboard

The keyboard is bad. Plain and simple. The only good thing I can say about it is the lighting.

The layout is some messed up version of an ISO-layout QWERTY. I'm sure Apple would call it "improved", but I beg to differ.

For starters it lacks a bunch of rather useful keys for anyone who has ever used a terminal in their life. Most notably "page up" and "page down". Now sure, you can do some gymnastics with Fn to get these keys (and similar ones, like "Begin" and "End")...

Another notable missing key is "Delete" (Fn + Backspace surely is an acceptable alternative, right?) and the same goes for all the function keys.

Apple also has its own idea of where | and ~ are supposed to be located.

The use of the command ("Apple"-key) key as a modifier over the commonly used control key is also annoying, not necessarily in itself, but because half the software you'll be using won't support it. So you constantly have to think about cutting and pasting rather than have it be an automatism. It's arguable that this is an issue with many applications not being properly Apple-ified, though I honestly don't know why Apple felt the need to go against the grain here. At least Emacs has the excuse of being so ancient it predates the commonly used keybindings... Apple really doesn't.

The travel on the keys is quite minimal as is the typing feedback. Typing on it for prolonged periods of time seems like a bad idea, even when compared to other laptop keyboards (which are already pretty unergonomical).

Now you could think: "Well, just attach an external keyboard if it bothers you that much.", yeah, well, that doesn't really work. Mac OS doesn't properly support ANSI or ISO QWERTY keyboards(!) out of the box (and I didn't manage to get things working 100% even after searching and fiddling around with custom keymaps)

Obviously if you go all in with Apple and don't have to deal with other computers on a regular basis then these issues will mostly disappear once you get used to the layout.

Mac OS

It most most definitely feels like Apple has the attitude that it knows best how you should be using your computer, customization out of the box is limited to a bare minimum. It would be easy to say that it's designed for the average-Joe but some rather commonly used functionality is available only through keybindings. Like switching between multiple windows of the same application (and if you think that's a fringe use-case you must have never written an e-mail before...).

There's a bunch of other UI nuisances, like the dock popping to the front if you use multiple monitors and get anywhere near where it would be it on the secondary monitor (which is something that can only be "solved" by making the dock auto-hide, which sometimes makes it a chore to actually get it to pop up when you need it...). Personally I just don't want it on my secondary screen at all, but that's just not an option (anymore, from what I found).

Software installation and system updates

Out of the box the only way to get software is through the Apple store, installation from other sources requires working around some security features something that is thankfully a one-time thing.

Even updates of applications which were provided with the machine try to force you through the Apple store with accompanied mandatory account sign-up where you of course have to provide your street address etc. Ignoring these updates keeps popping up an annoying "Updates are available" box every day that stays in the top right of your screen until you postpone them for another day (or just give in and tell Apple where you live). As far as I can tell there's no way to discern these updates from "real" system updates (which don't force the Apple login) without trying to apply them.

Terminal

Not much to say here, the basic terminal provided with the OS is pretty barebones and not really usable for anything but the most basic of tasks, so if you need a terminal figuring out how you can install iTerm should be a priority.

Docking

If you work in a fixed location then the fact that there's no such thing like a MacBook docking station kills some of the advantages the machine has. There are only 2 USB ports, so using an external keyboard and mouse are already pushing you towards using an USB hub if you expect to ever need to plug in another USB device. An external monitor requires yet another cable. And positioning the machine in a somewhat ergonomical way then requires yet another piece of hardware.

Conclusion

I can see the appeal of the machine for people that move around a lot, battery life is excellent, suspend to ram just works and for presentations the multiscreen support is pretty awesome (for real work the Mac OS dock issue is a bit of a bummer which I hope they'll fix rather sooner than later).

But for anybody whose whole life doesn't revolve around dragging the machine to new places all the time (eg. people who constantly give presentations, or consultants with short-term contracts) and are reliant on the battery lasting a really long time I really don't see the appeal.

The downsides are, at least to me and given the price point of the machine, such that I'd much rather use a laptop with GNU/Linux on it and spend a little extra time configuring certain things to work the way I want rather than attempt to adjust myself to the machine and deal with the constant friction of little (and not so little, like the keyboard) things not working just right.

Tags: Rant