$ cat post/the-monolith-ran-/-the-proxy-swallowed-the-error-/-root-remembers-all.md

the monolith ran / the proxy swallowed the error / root remembers all


Title: Linux on the Desktop: A Curious Experiment


May 7, 2001. I’m sitting in my office, headphones plugged into an old HP desktop with a dual-core Celeron and 512MB of RAM. It’s a bit clunky by today’s standards, but it’s still a beast compared to the Pentium II 300MHz systems many of our users were running back then. I’m working on a small project: porting a web application from Windows to Linux.

This is a strange experiment for us. At work, we’re still primarily using Windows servers and development environments. But in my spare time, I’ve been experimenting with Linux desktops and servers, convinced that the OS would eventually take over the world. I’ve set up an office copy of Mandrake 8.1 on this HP, and while it’s not perfect, it’s surprisingly usable.

The Setup

Mandrake is pretty straightforward to install, but it quickly shows its age as a desktop environment. The GIMP is clunky compared to the Windows versions, and even simple tasks like opening a text editor can take an inordinate amount of time. I spend most of my debugging time not with code, but with XFree86 configurations trying to get proper hardware support for this ancient laptop.

Despite its limitations, Linux’s promise is exciting. The open-source community is vibrant, and there’s a sense that everything is possible if you just tinker enough. And let me tell you, I’ve been tinkering. I spent the past few months setting up a web server in Apache 1.3 on an old Dell OptiPlex with Sendmail and BIND. It’s a simple intranet site, but it’s running perfectly stable.

The Debugging Session

Today, I’m facing an interesting challenge: a bug in one of our custom applications that was working fine on Windows but is now causing issues when deployed to the Linux server. This app uses ActiveX controls and COM objects, which don’t work well (or at all) with Wine. I’m trying to figure out how to get the same functionality without relying on these problematic components.

After some research, I decide to use a Python script to replicate the logic of the ActiveX control. It’s a bit hacky but gets the job done. This experience has me thinking about future projects: if we’re going to move our entire infrastructure to Linux, we need better tools and libraries to replace these proprietary technologies.

Y2K Aftermath

The year 2001 was still fresh in people’s minds as a time when everything had to work perfectly or else. The aftermath of the Y2K scare meant that everyone took a second look at their systems and processes, making sure nothing would fail again. We’ve already done our due diligence with the server-side software, but now I’m starting to wonder about client machines.

I spend some time looking into how we can ensure Linux desktops are as reliable as Windows ones. We could start by providing dual boot options or even virtualization solutions like VMware’s Workstation (version 4.0 at this point), so users can run their applications in a safe environment while still benefiting from the stability and security of Linux.

The Future is Here

As I close up my laptop for the day, I feel a mix of excitement and frustration. Linux on the desktop feels like it’s just around the corner, but we’re not quite there yet. There are too many applications that simply don’t work or require extensive workarounds. But with each day, more companies start adopting open-source solutions, and it’s clear that the future is here—just maybe not in the way I expected.

Tomorrow, I’ll have another debugging session, but this time, I’m going to push harder on making our application fully cross-platform. Linux might be a challenge now, but soon enough, it will be where we all do business.


That’s the state of things for me as of May 7, 2001. A mix of curiosity and determination, with a healthy dose of frustration, to push through to the future.