Developer experiences from the trenches
Fri 02 August 2024 by Michael Labbe
tags rant
Recently I had a conversation with a composer who was planning on buying a $5,499 Mac Studio to record music. “It’s the only computer I’ll need to run all of my VSTs and play back all of my tracks”, he remarked. With 24 cores and 64GB of RAM, it sure seemed likely to me. “Are you sure you couldn’t do that on a MacBook Air?” I prompted, genuinely curious about where the resources were going. He seemed taken aback that it might even be a possibility.
Whether or not he needed the extra headroom — and you can make the argument that you would weigh down a lighter recording computer with VSTs and track layering — it was a good reminder that marketing like Apple’s makes people equate professional significance with higher end devices. Today, most base model CPUs are good enough for most people. Most professionals do not quantify their computing needs before making a purchase, and so many computers being sold are unnecessarily overpowered. Device marketing encourages this. Over the past couple of decades we benefitted from those gains but I don’t believe it’s true anymore for many tasks if you choose the right software.
A hobby of mine is to achieve my intended computing result with the least amount of computing power and dollars I reasonably can. For example, this blog post is being written on a refurbished $250 Thinkpad humming along on a Linux Mint MATE desktop running only Emacs.
It is refreshing to not be precious about an expensive laptop, and to be able to just toss it in a bag. Unlike modern buggy gaming laptops that lack ports, it also wakes from sleep with 100% consistency. I still own a highend workstation, but I am finding many computing needs can be covered by devices that shipped 5+ years ago: browsing, editing, messaging, some music composing and even coding smaller scale (read: not Unreal) projects.
Microsoft has announced the end of life of Windows 10 on October 14, 2025. Many highly capable computers including Threadrippers, Dell XPS laptops and other older highend configurations will be unable to run Windows 11 in a secure, supported way. That said, Steam Hardware Survey, as of this writing, has Windows 10 counted as more popular than 11.
This situation has created a rising tension, and one of two things is likely to happen:
Next year will be a great opportunity to pick up refurbished hardware that can do most computing tasks after doing an install of FreeBSD or a Linux distribution. Linux Mint is my preference — it feels supportive of the user like Windows 2000 did, has no obvious subversive agenda, is Ubuntu package compatible, and is entirely snappy on lowend hardware that is slated for deprecation by Microsoft.
Turn Microsoft’s e-waste into your next workhorse computer.
On-device AI is being shoehorned where it has no business going because it is perceived as being able to push tech company valuations. It is being foisted on consumers whether they understand it or not. Meanwhile, we are being told we have to upgrade to new processors and operating systems to receive these fun new experiences.
There is a lot to be said about AI, but as far as my computing device goes — I’m totally fine with staying on the beach while the corporate agendafied first wave hits everybody who jumps in the water. Consumer on-device AI is not going to be a part of my professional workflows until the waters have settled and the hype has passed.
The refurbished device market stands to become very saturated if AI features motivate users to abandon their existing computers. Buy the dip!
By using a refurbished device on Linux you are virtually guaranteed to avoid the first generation of consumer on-device AI which is likely to involve annoying or even dangerous missteps.
Users coming from Apple to other operating systems seem to demonstrate a sensibility — they want to love their new PC, tablet or phone. This is because the device is the nexus of the experience in the Apple world. The hardware is second to none and you can end up experiencing entirely bug free workdays if you stay on a well-manicured path. Jumping from a Macbook Pro to an unconfigured Thinkpad on Ubuntu would be like going from an Americano with cream to gritty camping coffee prepared with a hangover.
A shift in mindset about what matters is helpful. I have found it productive to not focus on the device so much as I focus on getting the result I am looking for in my work. Loving the hardware is not the point, and it can be freeing to find the workflow that gets you the result you need outside of loving a device. Imagine how much you can achieve outside the binds of device love!
October 2025 is looking like a great time to pick up a dirt cheap first generation 16-core Threadripper, install Linux on it and have it perform phenomenally for a decade or longer. Now, if Microsoft could just deprecate some of those previous-gen GPUs…
Mon 05 January 2015 by Michael Labbe
tags rant
I enjoyed consumer computing in the early eighties. I started programming on a Commodore 64 at a single digit age. Even with only 64KB of RAM, I was hooked. Too young to afford the raw resources necessary for creating physical things, I was able to sit at a computer and build worlds. By five I had written a racing game in BASIC. By six, I had made a game called Ninja which was my love letter to 80s ninjas, replete with cutscenes. (Yeah, I had played NES Ninja Gaiden by this point).
For me, computers have always been about making things, and not just games. Using them as a base for invention, learning and experimentation is incredibly enriching and rewarding. This, my personal approach to computing, has become increasingly dissonant with the direction of OS X and Windows. Jumping between the two as I shipped a commercial project, I became increasingly held back with a focus on closed-ecosystem communication and link sharing rather than creative and technical productivity.
When you run third party software to replace every meaningful piece of user-facing functionality that ships with the OS, it is time to take stock of how misaligned your creative endeavors are with the direction of your OS vendor. Stepping back, I realized I don’t even like where commercial operating systems are going anymore.
Linux, in 2015, is still difficult to set up correctly. EFI BIOSes, binary NVidia drivers, webcams that work in a degraded state, sound systems that are deficient in execution. If you love computing, these are all worth overcoming.
Once you have made the (oft-frustrating) investment of smoothing your way towards an actual, working Linux desktop, there may actually be a lot less friction to getting real work done. Gone are the mandatory workspace transitions animations, the need to convert vcxproj files to get libraries to compile and printer driver toast popups. Even if there isn’t a true sense of control (you can’t or won’t really influence most open source projects in reality), the people who do have that control haven’t chosen default settings that represent a bias in opposition to your interests. I enjoy Linux Mint’s defaults the most, by the way. Thanks to Dan Leslie for this recommendation.
It won’t be a small investment. Open source is the land of time consuming false starts. There are many software projects which claim to be finished but lack serious features. There are legions of bad alternatives, and it costs real time and money to investigate each one of them to figure out what is a complete, sane and functional choice.
A solid example of this is Linux C/C++ debugging. There are plenty of GUI wrappers for GDB out there but most of them are horrible and the ones that aren’t have considerable trade offs that may grate against your personal preferences. I had the fortune of attending Steam Dev Days last year, where Bruce Dawson introduced me to QTCreator. (Youtube, ppt) I have been using it for basic logical debugging on a 300kloc C++ codebase for a year and I haven’t gone crazy, yet.
Intent is an important, loaded word. We need to correctly apply the term “user hostile” to software that does something that a user ostensibly should not want. Shoehorning a full screen tablet experience into an OS built on APIs that clearly have not been dogfooded at scale by the vendor is user hostile. Putting social tracking cookies via a share button on a webpage is user hostile. Forcing your OS to have no browser competition through corporate policy and application signing is user hostile.
It is important to know the difference between user hostile software and bad software. Bad software may become better — it needs more time, more users to provide feedback, a better process, more experienced developers. User hostile software will not get better. It directs resources based on values that ensure a future of friction for creative and productive people.
I have seen talented, experienced developers publicly give up on switching to Linux, lashing out against bad software that is damping their forward motion. It is frustrating to hit a snag and it is a good idea to warn people against expensive blind alleys in open source. However, I wonder if these people, who often have similar creative origins to mine, would still have the tenacity to re-amass the experience necessary to contribute at the level they currently are. Building an alternative workspace that empowers your trade is hardly as difficult as becoming an experienced developer in the first place. Patience borne of the love of the craft must be plied to building tools we can all rely upon.
People who care about the future of computing will benefit in the long term by warning against user hostile decisions companies make and instead, make an effort to use to software that aims to serve them by working through the frustrating blind alleys and false starts. Software simply doesn’t get better without users. Usage is contribution.
On on positive note, I recently rediscovered the Raspberry Pi and Arduino communities and some of the great projects that have been attempted. A lot of the spirit of the early days of creative computing is couched in modern hardware and software hacking and the “maker” community. As an exercise, you can Google a cool project idea, append it with Raspberry Pi and usually find someone who has experimented with it. This is a tremendously fun rabbit hole.
Fun!
Tue 16 December 2014 by Michael Labbe
tags rant
I have been on the Internet for 19 years, and on BBSes for four more before that. This is the first year where I have found myself reflecting on trends and deciding that the Internet is poised to lead its users towards permanent entrenchment in negative experiences and outcomes. The Internet has jumped the shark. It can un-jump, but it won’t in 2015. That’s my prediction, and here’s what you can do about it for yourself.
Let’s assume, for starters, that you are using the Internet to enrich your life in some way: you are here because you want to learn something, meet someone, or make something and share or sell it to people. Sure, there are always cat pictures and all of that cheap entertainment, but that’s not what I’m talking about. I’m assuming you are interested in getting something valuable out of your time using the Internet.
The most disturbing trend we’ve seen on the Internet in 2014 is an uptick in the severity and frequency of harassment of minorities. Gamergate and its response are both bolstered by Twitter, a web service that acts as a leaderboard for mobs: retweets, follower counts, replies and favourites are tracked. Ideas that need more than 140 characters to express are scattered. This damages discourse. You could not ask for an architecture that enhances mob mentality over rational discourse any more than what Twitter provides.
Public places will never be safe places on the Internet. While that is no justification for harassment, complete safety cannot be a technical or customer service solution. If anyone can join and re-join, it is not possible to achieve complete safety. This is history repeating itself as anyone who spent time on IRC or on bulletin boards will attest. Unfortunately, this time the business models of the companies hosting these services depend on growth which can only be achieved through openness. It would appear from the actions of social companies that they believe closed communities do not scale VC-funded businesses or publicly traded companies.
Next up, we have the problem of overdependence on “the cloud” for consumers. Because many companies are primarily offering cloud-based solutions for your data, it has normalized the idea of cloud solutions for many people.
The consumer cloud is, in many cases, a tax on complacency — in some cases, quite literally a fee and in others, a sacrifice of privacy and control over your personal data. It costs more than the price of a 2TB hard drive — which could store many collections ten times over — for the permission to stream your music from Spotify for a single year. Once you’ve paid Adobe $120 a year to store your photos, that’s it — they have you on a plan because they have your photos. All of these services can be replaced by a couple of hard drives and a Synology product. Then you have complete privacy, and you are not at the whim of a huge company whose interests are at cross purposes with yours, at best.
If you told a photographer in 1990 that many of her peers would consider paying a company a yearly fee to hold her own photos in the future, she would look at you very oddly. How dystopic.
The last problem I want to address isn’t particularly new to 2014, but it isn’t getting any better, either. We get our information from social feeds now. Google famously ended Google Reader, asking us to get our news from Google+ instead. Sadly, people don’t use Facebook and Google+ to pass around truly useful information. Nine times out of ten, you get articles that amount to fodder for small talk and dinner conversations. This seriously degrades the utility of what you read on a daily basis.
I target these three problems because they are examples of companies routing us towards a less informative, more troubled Internet. They do it because they are operating at a cross purpose to our own: to scale their customer bases. I expect these assaults on meaningful Internet time will continue and increase in 2015.
You can take the Internet back for yourself. I recommend these three things:
Create closed communities; defend the ones you have already. If you run a company, take a stand. Create safe places for like-minded people and keep them that way. A chat window (Skype, Tox) with ten productive, smart people who contribute ideas and talk to each other is more rewarding than a stream of social updates running at cross purposes. Curate new friends from your Internet acquaintances.
Host your own data and services. If you have tech know-how, it’s satisfying and fun to take this back. It’s about as hard as setting up a router (read: easy) to buy and use a Synology product and Cloud Station. 10TB of Dropbox-like syncing with complete privacy and no monthly costs, anyone? Run a Subsonic server to stream music to your phone and stereo. Host your own photos for fractions of a penny per shot.
Fix your information diet. Start by blocking, hiding and un-following. Disable push notifications for almost all of your apps. If you use Gmail, use filters to suppress all unsolicited emails that make it in your inbox. Now that you’ve cleaned up, it’s time to get back to RSS. Use Feedly or similar. Build your list of blogs back up. Start blogging, yourself. Contribute useful information back.
It’s unrealistic to assume that these companies will change their ways. But you can make your time on the Internet that much more enriching and valuable. The great news is that we still have the computing freedom to sidestep these trends.
Page 1 / 1