The Blog

I don't tend to make blog posts often as it takes quite a while to write them, but when I do, it's usually something I care about - discussions about software design, open source, and the occasional essay written for a class that I've decided to reuse.

Needless to say, these posts are always a work in progress, and I welcome any feedback or criticism of my writing.

For updates, feel free to follow me on Twitter or Mastodon - or use this blog's RSS feed.


🔗 Minecraft Data Pack Programming | Dynamic Backgrounds in Unicorn Utterances' Preview Images


Declarativ: an experimental React-like HTML framework Audio Automation: using Java's MIDI APIs with Kotlin Flow


Animating SVG Icons on the Web Ethics of Artificial Intelligence


Federated Social Networks Ethical Source and Subjectivity Free Software and RMS Open Source in Education JavaScript: Productivity over Proof Thoughts About Aptoide's 'Play Fair' Campaign Right to Repair 🔗 Introduction to Android: Contexts, Intents, and the Activity lifecycle | 🔗 Joining Freenode IRC: A Guide |


🔗 Continuous Integration with Travis CI for Android | CSS Submodules Exceptional Traveler AAAAAAAAAAAAAAAAAAAAAAAHHH Client-Side JavaScript Attribouter Hello World