I'm a university student currently studying software engineering as well as an open source developer. You may know me as the project maintainer of Principia or for my contributions to Luanti (formerly Minetest).
This is my site where I write about what I do and about whatever else interests me, in the case that someone else finds it interesting.
Back in the day when Principia originally released for Windows in 2014, the game would run on versions as far back as Windows XP. Given that Principia 1.4 was released while Windows XP still had mainstream support, this of course made sense at the time, and there was no real reason not to support it given that the tooling and dependencies at the time were still compatible with it.
Fast forward to today with Principia as an open source project. While the Windows version should still run as far back as Windows 7, our usage of modern toolchains, dependencies and system libraries such as UCRT means that hard to truly guarantee far into the future as the ecosystem moves forward. However, this has always been something I wanted to change one day, bringing Principia back onto Windows XP and producing a fully open source build of the game that can run on it.
On the 5th of February Anthrophic published an article on their engineering blog detailing the creation of a C compiler using a team of parallel Claude agents over the course of two weeks. The compiler in question is called Claude’s C Compiler (ccc for short) and is a ~180k line Rust codebase that they published onto GitHub.
Of course, this announcement raised a lot of questions about the accuracy of their claims and the usability of the compiler, as well as the implications of a swarm of AI agents allegedly being able to write a full C compiler. It claims to be able to compile the Linux kernel, along with many other high profile C projects, but does it actually work? I became intrigued, and decided to try compiling a Hello World program, my game Tensy, ClassiCube, and finally the Linux kernel.
This is a blog post chronicling the initial development of a physics-based water game of sorts using C, Box2D, SDL3 and OpenGL. The idea of it is something I have been wanting to make into reality for a long time, and the concept is inspired by one of my favourite games of all time.
Yesterday I released the first official version of Tensy on itch.io. It is a puzzle game where you match numbers that sum up to ten, with a nice pixel art style and some tracker music soundtrack, available for a very wide range of platforms. It has been in development for a while, and you have likely read posts mentioning it in some way on my blog for the last year.
When you’re considering making a previously private Git repository public, with all the history potentially spanning back years, it’s rarely an easy decision. The repository and its history may contain all sorts of things you don’t want to inadvertently publish, whether it be sensitive information or even just embarrassing things you never expected to end up being public when developing it in private.
The simplest way would be to just clean up the final state of the repository. Then create an empty repository importing everything into a new initial commit, throwing away the old commit history. But this also throws away a lot of context and history of the project. If someone else interested in your newly opened repository ever wanted to look back at how something was done or why a certain decision was made, it would be much harder without the commit history.
XMPP (also known as Jabber) is an open chat protocol for instant messaging. It is also federated meaning that everyone can talk and communicate with people on other XMPP servers, one-to-one or in multi-user chats (MUCs). It supports transport layer encryption using TLS, as well as end-to-end encryption using OMEMO.
Prosody is a modern XMPP server written in Lua that aims to be simple and very light on resources. I’ve been running my own XMPP server using Prosody for the past couple years at this point, and this blog post is a guide from what I’ve learned for setting up an XMPP server using Prosody, complete with HTTP file sharing for sending images and other files and MUCs for creating group chats and public chat rooms on your server.