All of the things labelled as Posts, so that crawlers have a place to find them.

How “AI” can help me as a programmer
My hopes for the current generation of language modelling and machine learning

What is Runtime Type Information?
How a language can work with dynamic types and provide information about a type while the code is executed.

What is Structural Typing?
An overview of types defined by their form instead of their name

Sharing data types on a multi-language project
Writing a type specification domain-specific-language to emit types, and more, for Python and TypeScript


Why UI layout calculations are slow
A look at why seemingly simple UIs take a long time to update.

My disappointment with Unity’s UI Toolkit
This newest UI offering from Unity is fraught with problems, resulting only in frustration rather than good interfaces.

Finding neighbours in a hex map
How I address and index the cells in the hex-grid of my game.

A mini-redux in React
How I created a redux-like store in React to improve my rendering efficiency and connect to a websocket multiplayer game state.

Keeping my monitor brightness after power save and switch
I wrote a script restoring my monitor’s brightness and gamma, after power savings and dynamic switches, in Ubuntu 22.04 with udev and xrandr.

Building a Halloween riddle game
A look at my personal weekend game jam project, including the new animations and challenges I faced.

System Architecture for Edaqa’s Room
An overview of all the deployed components in my multiplayer game

Highly inefficient invisible animations (CSS/Firefox/Chrome/React)
Reducing the CPU load of Firefox and Chrome due to invisible CSS animations

High-Throughput Game Message Server with Python websockets
Tracking an error in my game, stressing over a fix, and the code to replace it all


How to write a custom selector in React
Recreating useSelector for an app that doesn’t use Redux.

I Wrote an Online Escape Game
I’m an escape room enthusiast, some may say addict, and for the past few months I’ve been missing it. A friend of mine, a true

Your 30th Year in Code
Becoming a programmer can be a daunting task. After reading Your First Year in Code, you might wonder what awaits you long term. My book,

Why switch is better than if-else
In Ben’s post, he questions whether switch statements are cleaner than if-else chains. I contend they are, because they better express the semantics of the

Fluid layout animation: Invalidation and caching
Dynamic changes in layout properties, either because of user actions, or animations, requires a recalculation of the layout. Maintaining a stable frame rate during recalculation

Creating a custom author box on WordPress
How to use custom short-codes to create an author-box in a template.

A Failed Experiment with Python Type Annotations
I like Python, but wish it had static typing. The added safety would go a long way to improving quality and reducing development time. So