My personal productivity dropped to pretty much nothing after joining Amazon. It wasn’t just that corporate life sucked all the creativity out of me. The Amazon both brought and coincided with some substantial life changes, such as moving across the country, setting up a new house, and my daughter starting real school. Our lives are completely different compared to what they were three years ago.
Adding to this was the fact that using the computer just wasn’t fun anymore. Various hardware and software decisions, especially the keyboard and the lack of ports, made modern Apple laptops less desirable to pick up and use. A stuck ‘r’ key was the last straw and I decided to go back to the last time I really had fun when using a computer. I was going to get a modern laptop and install Linux!
Apple’s ecosystem seamlessly blends hardware, software, and cloud for a lot of use-cases and requires some forethought for properly moving off. These were the key software trade-offs I made:
- iCloud storage -> Dropbox
- iCloud keychain -> BitWarden
- Apple Music -> Spotify
- Messages -> Signal
- iWork -> Google for Business
The double combo of out of the box Linux support and browser based applications made this switch doable. It was time to see if the grass truly was greener.
With that out of the way, I put an order in for a IBM Thinkpad X1. Then I waited. When I finally got to unbox it, I was immediately impressed with how it felt. The laptop is light, but doesn’t feel cheap. The case materials have a nice softness and warmth striking an interesting contrast with the cold metallic feel of Apple’s laptops. The keyboard is expansive and the slight curvature of the keys, along with the key compression, makes for a pleasant typing experience. There are plenty of ports and the screen can tilt a full 180 degrees.
After a brief boot to verify that everything was working correctly, I opened the bottom case and popped in a new single state hard-drive. A trivial exercise that was once again a contrast to the Apple experience.
The initial Ubuntu install went fine and in an hour I had shiny, new Linux desktop ready for me to login. Things started going downhill fast. The Ubuntu login screen gives you a choice of environments for login. Apple’s mono-culture was starting to wear on me and I wanted choice. However, very good by default is much better than a collection of okay options. The first major roadblock was getting a decent experience with a high DPI display. I’ve always run my laptop displays with fractional scaling never thinking that this wasn’t a thing on other platforms.
I found a tweak to enable experimental features and to my surprise found that the “dead” X11 did a better job than Wayland, the window manager of the future. Great except the touchpad was totally unusable on X11, but somewhat acceptable on Wayland.
This wasn’t the end of annoyances. The hack that got fractional scaling to work on GTK+ didn’t apply to apps written with QT so occasionally you’d open an app with microscopic text. Manually toggling the touchpad made the laptop usable, but it wasn’t pleasant.
I spent countless hours scouring the internet for scripts, learning which config options to update, and finding threads to explain now broken behavior, like when “suspend-on-lid-close” stopped working after an update. Nor was there some killer app that was waiting for me at the end of the tunnel. Software on MacOS is really good, iTerm especially, which I’ve always found strange since if a Linux machine should be good at anything, it should be using the command line. Even web-based software isn’t the same, since the fonts and scaling is alway a little bit wonky.
In the end, none of this was fun and this laptop started gathering dust.
I really appreciate the efforts that people make to bring Linux to the desktop. It’s admirable what gets done and what works, often without any official support from hardware vendors. Yet, as one gets older, time stops being as fungible as money and I’ve discovered that using a computer brings me more joy than tweaking the computer. I just want to get something that lets me quickly get to the fun stuff of building things with high level languages.
The real shame is that there is so much to like about the Thinkpad hardware.
WSL2 does a decent job of providing a Linux subsystem that behaves the way I would expect. Much of what I have to do is server administration and I can install and use all my favorite tools pretty seamlessly. I still haven’t found a perfect iTerm replacement, but cmder is close enough. All the other software I’ve paid for has both Windows and Mac versions so I don’t have to discover new tools there. As an added bonus, I now have access to all those Steam games I never got to play before.
Some major annoyances remain. NTFS doesn’t work great with Linux. Editing Windows files form WSL can lead to some strange results. Which is also why this post was written in Sublime instead of VIM. I also still generally like the Apple interface better, especially on a single screen device.
There is some irony in using Windows to avoid a monopoly, but breaking free of Apple’s vertical integration hasn’t brought consumer benefits either. Apple’s services aren’t perfect but they do a decent job of working across all devices all the time. Each device is an all-in-one center and it’s rare that I have to find a specific machine to do a specific task. Software still wins out over hardware. So maybe the next post will be on an M1 Macbook Air.