Blog

Retro-Modern Programming Projects

I’m not sure why I’ve always been fascinated by OS and language development. Lately, the focus has taken a new shape - building tooling and environments that call back to things I used to like about computing. I think this is probably a larger trend with a larger community interest in TUI based applications likely helped by AI frontrunners. In any case, I’ve returned to building Wyrm and am trying to make peace with being OK whittling away at something I know I’ll likely never finish. I’d like to track development somewhere - and I really don’t want to deal with the social media “why are you duplicating effort” meatgrinder.

Read more →

Returning to Textux

Holy Crap. 3 years since I last wrote here.

I’ve been rather busy doing interesting things professionally, while trying to also tackle a lot personally. I thought after COVID and finishing a Master’s degree, writing here and hobby projects would flow easily. Despite a lot of encouragement from my partner, I’ve struggled to find the energy to enjoy tech.

It took some serious and prolonged effort from my partner hitting me over the head for me to realize that despite working at a “good” company: I need to find some creative outlet and enjoyment outside. Working professionally as a SWE, I’m not certain what that REALLY looks like – but I do know, writing about tech was always a massive part of the “hobby.” The passion for the hobby was in my playing with the FOSS community. Something that largely died during a tough time in my personal life as I entered the professional world 20 years ago.

Read more →

Two Decades of Tech Blogging

In my last post, I noted that I was switching away from Wordpress to a roll-my-own-solution. I took the last handful of posts, and started the work of converting posts to the new blog format. I never realized until I started converting, that this blog has existed for well over 20 years at this point.

The world of open source is dramatically different today. Sometimes I get a bug up my rear to go take a look at projects I used to work on or people I used to work with. I’ve been in the corporate world so long that each time I come back to the land of open source, I’m amazed by the change that happens over what seems like few years. The initial focus of this blog was on my attempted development of a new Linux distribution. This turned into being a package maintainer for the upstream of Foresight Linux. It’s hard to believe that Foresight itself died roughly 8 years ago.

Read more →

Time to Ditch Wordpress

Fighting blog software is tiring.

After some serious consideration, I’ve decided to roll my own software for this site. Why? Wordpress is a fairly massive security liability, and I’d like to avoid the ongoing maintenance effort (or cost of hosted service). Worse, I’ve found that each new version focusing more on being a full-fledged CMS and less on simple blogging. And - yet worse - I’d like to nuke MySQL / MariaDB as a “thing” on this server.

Read more →

Wyrm: Chipping Away at ELF

Since Wyrm is utilizing a bootstrapped Scheme variant, building data structures and writing files is surprisingly difficult. Scheme provides the ability to express almost any construct, but without standard libraries every tiny detail most be determined.

The “actual” Wyrm system will eventually provide low level data structures and type support. Any construct utilized by “Mini Scheme” will require duplication between both the Wyrm Scheme implementation, and the “generic” Scheme based system. Writing the ELF decoder, the first obvious challenge to address is some form of structured data support. Normal scheme applications might use a SRFI-1 based “associative list”. Ideally, Wyrm will implement an associative container with “better performance”, but for now, utilizing a wrapped associative list works well. Given the newly defined “dictionary” type, the next hurdle is implementing basic support for serializing structures. For this, a new ’encoding’ structure is created. With a defined dictionary type and serialization structure, implementing basic support for the primary ELF file header is simple.

Read more →

Wyrm: Baby Steps for ELF

With the July 4th Holiday, I enjoyed a 3-day weekend but intentionally limited the time I spent hacking on Wyrm. There’s a lot to unpack in creating a full operating system and toolchain (even with a limited scope). Instead of jumping into full fledged implementation, I took the opportunity to brainstorm and structure the project.

Given we’ve got a hugeeeee amount of work ahead in bootstrapping a kernel and toolchain, the big question becomes “where to start”. For this project, I’ll be trying to maintain a “Test Driven Development” practice. A unit test framework also creates a simplified environment for early development.

Read more →

Introducing Wyrm

For a long time, I’ve maintained various iterations of low level operating system logic or programming language interpreters. The earliest iterations focused on recreating QBasic and DOS. Newer iterations focused on various technology stack ideas (the last being microkernel and exokernel based approaches). The only time my software stack ever ventured out to be seen by others was… as sample code for a job interview.

I’ll be covering this project on the podcast - but, before adding the glitz to the idea, I find myself wanting to sit and write about the idea. Starting with the why and for and what.

Read more →

RC 0x02: Linux Packages

Over lunch, my brain is popping up questions of back-burnered personal tasks. The peril of a software development career is continuous return to build systems, packaging, and best practices for distributing software. Over the years, I’ve seen and maintained a number of Linux packages, build systems, embedded distributions, and containers.

With the newer releases of Ubuntu, Canonical has been heavily pushing their “snap” standard – which, as a user, I find less than desirable. The big complaint is weird breakage on basic things – like clicking a link in another application opening in a new browser instance (and worse, without my privacy extensions enabled!).

Read more →

RC 0x01: Modelling Text

I’ve found my growing collection of “Note.txt” files floating around in random directories to be an unbearable way of keeping notes. I’ve debated moving those into some sort of Wiki form – but at present, I’ve decided to move documents to this blog in the hopes that others might find them useful. I’ll be labelling these posts as “Research Comments” and numbering them in publish order for my own reference. These documents are not intended to be academic or authoritative in nature – they are research notes collected with links to other documents.

Read more →

After Hours and Season 2 Preview (Ep 14)

In this episode I’ll talk a bit about plans for the next season of Zombie Coder, and review some of the lessons learned over the past several months. Look for more episodes to resume after the new year!

Read more →