Recently I was making sure my main laptop is ready for travel1, which mostly just entails syncing up the latest version of my music collection. This laptop is a Thinkpad X200, which turns 11 years old in July and is my main workstation away from home (though I bring a second monitor and an external keyboard for long trips). This laptop is a great piece of hardware. 100% of the hardware is supported by the upstream Linux kernel, including the usual offenders like WiFi and Bluetooth. Niche operating systems like 9front and Minix work great, too. Even coreboot works! It’s durable, user-serviceable, light, and still looks brand new after all of these years. I love all of these things, but there’s no denying that it’s 11 years behind on performance innovations.
Last year KDE generously invited me to and sponsored my travel to their development sprint in Berlin. One of my friends there teased me - in a friendly way - about my laptop, asking why I used such an old system. There was a pensive moment when I answered: “it forces me to empathise with users who can’t use high-end hardware”. I showed him how it could cold boot to a productive sway desktop in <30 seconds, then I installed KDE to compare. It doubled the amount of disk space in use, took almost 10x as long to reach a usable desktop, and had severe rendering issues with my old Intel GPU.
To be clear, KDE is a wonderful piece of software and my first recommendation to most non-technical computer users who ask me for advice on using Linux. But software often grows to use the hardware you give it. Software developers tend to be computer enthusiasts, and use enthusiast-grade hardware. In reality, this high-end hardware isn’t really necessary for most applications outside of video encoding, machine learning, and a few other domains.
I do have a more powerful workstation at home, but it’s not really anything special. I upgrade it very infrequently. I bought a new mid-range GPU which is able to drive my four displays2 last year, I’ve added the occasional hard drive as it gets full, and I replaced the case with something lighter weight 3 years ago. Outside of those minor upgrades, I’ve been using the same desktop workstation for 7 years, and intend to use it for much longer. My servers are similarly running on older hardware which is spec’d to their needs (actually, I left a lot of room to grow and still was able to buy old hardware).
My 11-year-old laptop can compile the Linux kernel from scratch in 20 minutes, and it can play 1080p video in real-time. That’s all I need! Many users cannot afford high-end computer hardware, and most have better things to spend their money on. And you know, I work hard for my money, too - if I can get a computer which can do nearly 5 billion operations per second for $60, that should be sufficient to solve nearly any problem. No doubt, there are faster laptops out there, many of them with similarly impressive levels of compatibility with my ideals. But why bother?
Articles from blogs I follow around the net
This post gives an overview of the recent updates to the Writing an OS in Rust blog and the used libraries and tools. I moved to a new apartment mid-October and had lots of work to do there, so I didn't have the time for creating the October status upd…via Writing an OS in Rust December 2, 2019
Since 2016, thousands of Gophers around the world have helped the Go project by sharing your thoughts via our annual Go Developer Survey. Your feedback has played an enormous role in driving changes to our language, ecosystem, and community, including the…via The Go Programming Language Blog November 20, 2019
I’ll soon be working full-time on open-source software! I’m pleased to announce that I’m joining Sourcehut. Huge thanks to Drew DeVault for making this possible. I also want to thank everyone supporting Sourcehut and allowing it to grow. Being able to do …via emersion October 15, 2019
Generated by openring