My Own Journey to Free Technology

Jul. 31, 2022 [technology] [proprietary] [libre]

Despite the staunch views I now hold, I have not always been immersed in libre technology. In fact, I grew up in a family with IT roots under parents and grandparents who worked, in some capacity, in tech. The home of course was placed entirely on Macrosuck products which, in the course of this journey, I had to work to break away from. And perhaps that is why today I have such an intense perception to platform lock-in. WARNING: Long post ahead.

1993-1995

The earliest system I remember using was some MS-DOS (don’t ping me for details, I was literally a toddler) Dell media center desktop. It had the first text to speech synthesis I’d ever encountered, some flip book animation program, and a couple of games. I would later research to discover these games were Cosmo’s Cosmic Adventure and some other Apogee Software titles. And, being a DOS system, that Dell provided me my first contact with any command line interface.

1995-2002

Later we had gotten a family desktop running Windows 95 (or 98, again, I was just a kid) as our first internet connected machine running over dialup. Around that time I began experimenting with writing “books” in Office and tried, while failing miserably, at creating animations in Dreamweaver. I didn’t actually use the internet much except for Starcraft battlenet. Among the other games were Lego Island, which is now something of a cherished relic in PC gaming.

2002-2009

That desktop was eventually retired in favor of a Windows XP laptop, but by then I had gotten my own personal Dell Dimension series desktop. That was the first place I began digging around in the internals such as replacing the mouse cursor with an animated cursor (I templated it from the racoon character in the Gameboy title Links Awakening) and system sounds. Issues with games drove me to do my first operating system reinstallation and driver setup, from disks. Years later I ended up installing a graphics card, a new hard drive, additional memory, and a wireless adapter. It was then that I realized it is even possible to build a computer entirely from individual components.

But before I had any chance to explore computer building, I brushed paths with Linux. There was a Popular Mechanics article around 2003 or 2004 that detailed turning an Xbox into a full PC by installing some distro. I ended up researching what this outlandish “Linux” thing was only to fall in love with the flexible animated GUI (compiz) videos and people showing off Ubuntu with a rotating desktop cube workspace. Without a second thought, I went ahead and burned an Ubuntu download to a disk and tried to install it on my Dell Dimension. It failed because my BIOS didn’t recognize the disk. I also tried installing it on the family laptop only to reach the same issue. In retrospect, my noobish self probably just incorrectly burned the disk as a non-bootable or incorrectly formatted media.

So I gave up for a while on pursuing Ubuntu and refocused my effort on finally building my own PC. I drew up some plans around a cube case chassis but never had the money to go through with it until I was old enough to work.

2009-2013

It was in 2009/2010 that Minecraft had finally pushed me over the edge. Trying to run such an intensive game on a single core Pentium 4 proved a woeful experience. And when I investigated upgrading the motherboard, I discovered that Dell underhandedly uses their own screw hole layouts to prevent standardized motherboard form factors from being installed. That’s where I first learned of the term “proprietary”. So instead, I took up a temp job to save up for parts and, by then, the Intel Core i series had been introduced. I ended up building my dream system consisting of:

All stuffed into a compact micro ATX case and installed Windows 7. As far as gaming goes, it was a breath of fresh air. I did what any young guy who just built a computer would do and put it through the gamut of high end games. That year, a movement was beginning to take off in the form of REEddit’s r/pcmasterrace. I was keen to hop on the bandwagon immediately and shit all over console peasants. Somebody made an edit to the master race hierarchy meme, placing “glorious Linux master race” over the king’s throne. I didn’t understand his criticism at the time. As r/pcmasterrace grew, it became painfully obvious that many there only cared about access to games.

PCMR got flooded with members who constantly made exceptions for consoles, especially Nintendo, ignoring the whole point that exclusivity and artifical barrier building is responsible for all the pointless restrictions we were fighting to begin with. I made a breakaway group which maintained a focus on choice and freedom against things like DRM which accrued a paltry following. But that exercize only made clear to me just how few people actually were into PC for the choice and freedom. I found out hard that PCMR wasn’t and couldn’t really be my tribe.

In the meantime, the Minecraft experience had me finally dive back into Linux to host a server. A friend of mine had donated his old desktop to me, a dual core Pentium D Dell Dimension, which was perfectly capable for a small server of 2-6 players. I took a very brief crash course in MineOS (My appeciation to Wil Dizon “Hex Parrot”, all these years later) which is where I first cut my teeth in Bash terminal. It gave me a familiarity with SSH remote management, changing and moving files in terminal and setting up services such as Mumble. By then there were several spare computers available to me to play around with finally installing Ubuntu on, but I was perturbed by the Unity interface and once again wrote off the idea of running Linux on my main desktop.

2013-2015

That first build gave way to a smaller ITX system since small form factors are a favorite of mine. It was built with the intention to use the up and coming Window$ 10 and I had already been using 8.1 for some time. There wasn’t much thought of Linux until somebody rather close to me found themselves stuck with a Chromebook, keeping them from participating in games with the rest of my group. I thought “simple enough, I’ve heard Chromebooks can be freed with ‘Linux Mint’”, offered to take the laptop and liberate it. An install guide suggested dropping into developer mode after removing a write-protect screw from the motherboard, and overwriting everything with the Linux Mint installer. The interface was so intuitive (unlike Ubuntu at the time) that it left a very good impression on me.

It was shortly before that Chromebook liberation that Edward Snowden brought the world’s attention to the massive spying ring being run by the US and other governments. Already, I was uneasy with the prospect of Window$ 10 introducing a cloud assistant, Sky Drive (One Drive) and connected Microsoft Accounts. In retrospect, I was a fool to even have willingly used 7 or 8. I then committed fully to ridding myself of all things Microsoft, Google and whatever other crap I’d been using. But there was a problem: I still had projects tied up in Window$-only software.

I had a game project in Unity, which I ended up conceding to the abyss of vendor lock-in. But I also had home movie projects that were tied up with Window$ Movie Maker (XP version) that never rendered out due to Movie Maker’s crash prone nature. The rescue consisted of installing Window$ Vista Movie Maker which was still compatible with XP’s .WSWMM format. From there, the projects were saved to a newer format accepted by Window$ Live Movie Maker which could finally render the pieces without crashing. Once that was freed, I could finally install Linux Mint.

Linux Mint was still packed with proprietary soyware but my main goal at the time was to maintain as much compatibility as possible with the things I had extricated from Window$. This was during the transition period that AMD had going between fglrx proprietary graphics drivers to amdgpu open source drivers. I still made sure to keep proprietary wireless firmware, Steam, Minecraft & MCEdit, 7Zip, and even a period of time with other crapware like Goolag Earth since I hadn’t discovered Marble yet. My backup scripts, originally written in Batch, needed to be adapted to Bash which taught me a whole lot about the right and wrong ways to do things in shell scripting.

Next, I began converting my files into free formats. MP3s became OGG Vorbis, .rtf/.doc(x) turned to .odt, and Minecraft worlds converted into Minetest worlds. Tools needed replacing; Sony Vegas was replaced with Openshot and Kdenlive, Bandicam replaced with OBS Studio, among others. It forced me to reevaluate how I did everything with computers. And, often, the libre solutions were more minimalistic. A trend that delighted me.

2015-2017

Eventually, it became obvious that Linux Mint was too cluttered for me. I didn’t want to have to deal with opting out of proprietary defaults. Debian became the clear choice, being upstream, and being possible to install via netinst as a blank slate. And my time at some FOSS conferences made me aware to the issues of proprietary BIOS firmware and the hardware rootkits that were being built into CPUs. So on the systems I had at the time, I was disabling AMD PSP where possible and building up my fleet of pre-ME/PSP boards. I even reached out to an engineering firm who had been doing Coreboot ports and they qouted me $10,000 for one of the Opteron boards I had. The price was prohibitive which wasn’t too much of an issue since that same firm went on to produce their own motherboards a few years later, much more affordably.

The system was rebuilt, minimalistically with Debian, around using libre wireless firmware and without proprietary packages outside of firmware-amd-graphics. It served well for two years while I made excellent ground in my security & privacy goals. This was the first time I hadn’t really played games as the device took on more the role of a tool than a toy. It is also where I graduated from scripting to programming. I was dipping my toes in writing game mods. I developed a front end suite for orchestrating the monitoring of system security tools. And those older scripts that handled my backups became overengineered in the midst of my enthusiasm.

2017-2019

By now, I was using almost entirely self hosted solutions and my dependence on external resources were reduced to a minimum. I finally got the Unix philosophy and building solutions for only one’s own needs. The findings and guides that I have been distributing really took off around this time. I cut all things wireless out of my setup. My work in the professional field opened me up to just how great ethernet really is.

2019-Today

My latest computer was built around one of the motherboards produced by that aforementioned engineering firm. I finally have a system which does not try to manipulate, force or spy on users in any discernable capacity. Something which I trust and, through a long road of experiences, now understand many of the internal components both hardware and software. It’s been so successful that I haven’t had to even consider any new build since. I think I’ve finally found a fitting tribe, and they are not gamers, not enthusiasts of shiney new tech, and not permissive open source updoooters. They are those who can see the dilineation between technological freedom and technocratic tyranny.

I was also introduced to the suckless philosophy. And, while I have yet to adapt all my tooling over to suckless solutions, many are now minimalistic TUI or command line programs. In fact, losing the display server on my system wouldn’t be too much of an impediment, albeit quite inconvenient. In an odd way, I have come full circle all the way back to that kid in the 90s who was just messing around with command line on a minimal, simple desktop. I do wonder how much more advanced my knowledge would be today if only I persisted in trying to get that Ubuntu disc to work 17 years ago, or if Canonical’s Unity desktop hadn’t been so repulsive. It’s a journey and, if you’re anything like my former self, start exploring liberated tech now rather than later.