Of all the peojects I've made over the years, not many deserve their own standing blogpost either because (a) it is too ephemeral and a thread of 512-character long microblogs is enough or (b) it is more fitting to write proper documentation for it instead (ironic when I build my blog with MkDocs). But the few that do, are here.

Projects below are sorted reverse chronologically (most recent first).

Reflow Workshop: A Journal

I'm working on it!

bash workshop

Photo of workshop

My first workshop made from scratch. Well prepared tech-wise but not social-wise.

Early Sunsets Over Monroeville

Editor window in Ardour DAW

Unlike previous engineering projects, this one is musical. I recorded the ukulele, did the vocals, and mixed them in Ardour. Result is an acoustic cover of "Early Sunsets Over Monroeville".


Part 1

Diagram of a simple computer

In July 2022 I enrolled in a course called nand2tetris. In part one of this course I built a computer from NAND gates and ran assembly on it. It was great fun.

Part 2.1

Diagram of a stack

A few days after Part 1 was finished, I entered Part 2. There were so many things ahead of me that I decided to split it into multiple blogposts. In Part 2.1 I learned about the stack machine and wrote a VM translator.

Part 2.2

In nand2tetris 2.2 I built a tokenizer for a simple language, Jack.


Screenshot of SIRTET mid-game

In June 2022 I made a game in C. It was my first time using ncurses. Also, I no longer fear pointers (although I'd still keep away from them).

One tøp song

Screenshot of desktop UI

On April 19, 2022, I released a web game made out of words that only appear in one twenty øne piløts song. It involves automation using curl, Python, and Unix utilities, but on top of it there's a lot of manual work. Here are the steps I took over the course of this project, from downloading the lyrics, to generating a dataset, and finally making a game.


Screenshot of Kanvas 0.1.1

In April 2022 my friend released a Canvas LMS desktop widget for the Wallpaper Engine. I feel happy for him, but I'm disappointed that I can't use it. So I went ahead and wrote my own Plasma widget (or applet, or plasmoid).


        All PCBs, soldered and unsoldered, and 3D printed case all laid out
        on the desk

In September 2021 I broke my wrist in a (fairly stupid) cycling accident. This led to a two-month-long quest for a pair of blinkers for my bicycle. I made all sorts of mistakes along the way, as I always do, and this blogpost has all that yelling-at-past-myself covered. It also covers some actual project details.



On April Fool's Day, 2020, I launched a mock Mastodon login page at (now defunct) that rickrolled anyone that clicked the links or buttons. It was more sophisticatedly designed than most other rickrolling attempts (it's weird to compare trolling technique, I know) in that hovering your cursor over the links doesn't immediately reveal your evil intent; the URL shown is totally legit, and it takes another round of carefully set-up nginx configs to redirect you to the classic music video.

Because of restrictions in AGPL that Mastodon is distributed under, I decided not to release the code itself but rather to write a guide on how I made it. The codeberg repo that came along was unlicensed.

As I said, this was a impulse project that's faded into the past. It is 2022 as I write this. Isn't this crazy?