An Ode to Workarounds and Permacomputing

Okay this is a pretty obvious post given what I blog about, but I'm feeling really good right now so I want to share that positivity with as much people as I can.

Given the state of the current political climate, it's nice that "slices of heaven" still exist in the world, and we should do our best to support them. I'm talking libraries, small websites, libre software projects (including the small ones made as toys), etc.

But this post is about permacomputing(?), or at least my understanding of the concept, because I think it's fucking awesome, and there's a lot of interlap with the things I discuss here.

I love that many solutions work just as long as you shift your mindset.

I love that I can use a 22 year old laptop for some modern activities. Even though it doesn't support most major modern Linux distributions (and the ones supported have some problems), I can stick with an older version that works best, or use an operating system like OpenBSD and NetBSD that still has built-in support, and I'll still be happy.

It sucks that my 22 year old laptop can't run modern programs, but I can still pull out older versions of LibreOffice, Blender, Anki, etc, or even find modern programs that still compile under C, or even Rust, which has a target for the computer's lack of SSE2, and I'll still be happy.

It sucks my 22 year old laptop can't play Minecraft all that well (if at all), but there's projects like ClassiCube that port Minecraft Classic to fucking, like, everything, even my laptop, and I'll still be happy.

It sucks that I can't play modern games on a tiny computer like a Pi 4, but it's still awesome that I can emulate thousands of games thanks to the hard work done by the people who document and emulate the original console and dump the original ROMs (huge thanks to Near), and I'll still be happy.

It sucks that I can't run older versions of Linux applications easily, but it's awesome that I can just download a Windows binary of the older version and run it under WINE, which matches my silly Windows 95 and Windows 98 XFCE skins or even emulate MS-DOS programs via DOSBOX's many new forks (DOSBOX-Staging, DOSBOX-X), PCem/86Box, etc.

It also sucks that Vim is embracing AI, and no matter where you stand, AI has a ton of issues. But nothing's stopping me from compiling an older version like Vim 8.x (even if the website made it harder to find compared to two years ago). Others, such as Drew DeVault, took matters into their own hands, forking the older version to create "Vim Classic".

It sucks that the odd Wikipedia article has AI-written trash, but it's awesome that I have my own pre-ChatGPT copy of Wikipedia that I can host on my own computer via Kiwix and even search like regular Wikipedia, and as a bonus, Wikipedia now bans AI generations outright.

It sucks that the modern web is fucking garbage, but it's amazing that the small web exists, whether it be on HTTP, Gemini, Gopher, etc.

It sucks that search engines are shit now, but it's amazing that people have proposed solutions to break our ingrained habits. It's cool I can set Wikipedia as my default search engine or even utilize search engines with a whitelist of "trusted" websites (like Mojeek's "Focus") or use different search engines altogether.

It sucks that systemd is complying with the upcoming age verification laws, but it's fucking awesome that there still exist many systems out there that don't use systemd at all, including the *BSDs, 9front, etc. (Except Artix Linux. Fuck Artix).

It sucks that I can't run some modern applications on my computer running OpenBSD, but that doesn't stop me from emulating, say, a Linux environment via vmm or QEMU, and using SSH forwarding or VNC for graphical environments. (I considered emulating a newer Linux on my 22 year old computer even though it'd require a lot of patience to even boot it up, lol.)

It sucks that modern Android phones come with a lot of fucking bloatware, but it's fucking cool that I can disable them thanks to a project like Universal Android Debloater that has a user-curated list of apps and descriptions explaining what they might do, which should help extend the lifespan of the phone by saving power and battery.

It sucks that a ton of modern games require a powerful computer, but it's fucking awesome that I can make my own, for something like the Game Boy, thanks to the dev tools and guides that many have worked on for the console, and any device with a screen should be able to play it. Or that many of the indie games I love still run on my OptiPlex 7010 with an Intel HD 2500, even though on Linux I need to add PROTON_USE_WINED3D=1 as an argument for every Proton game. Or those indie games may even run on my Pi thanks to Box86. Or with some tinkering I could turn my phone into an off-brand Steam Deck by installing a Linux desktop on my phone via Termux, then compile Box86 and WINE myself, start an X11/VNC session, and play the games.

For me, it feels like every time there's a hurdle, there's like 50 different solutions around it. That doesn't make the "sucks" things any less valid, and I think we should still fight against them; I just wanted to be grateful for the amazing things we have now.

Now, if you'll excuse me, I want to chill and spend my time learning Common Lisp and FORTH, and maybe develop some game clones with some friends.

God, it's been a while since I've wrote a blog post like this.


#retrocomputing #permacomputing #ai #ramble #gratitude
GitHub - ClassiCube/ClassiCube: Custom Minecraft Classic / ClassiCube client written in C from scratch (formerly ClassicalSharp in C#)

Custom Minecraft Classic / ClassiCube client written in C from scratch (formerly ClassicalSharp in C#) - ClassiCube/ClassiCube

GitHub

@[email protected]

I need to add proper support for full fledged articles at some point