Recently, I wrote a single-header library called GGUI to create debug and prototype Graphical User Interfaces (GUIs) for applications on Windows & Mac. It was designed to be an immediate-mode, software-rasterized engine that can seamlessly process input, either via buttons or sliders. The platform layer passes in a pixel buffer to| Blogmobly
Better Software Conference 2025. Where do I begin? The Talks The focal point of the conference – the talks. Each and every talk was a well-delivered package of information that would serve any programmer in any field well. That said, I did have some favourites. Casey Muratori – kicking off the conference| Blogmobly
For about a year now, I've been using Zig. My primary background is in C++, so it wasn't incredibly difficult to adapt to the way Zig does things. Additionally, there are some excellent resources for Zig online - from the source code, to the Zig guide| Blogmobly
One of the very first steps in solving a problem with code is to build a mental representation of the problem space. An engineer will ask themselves, "how do we take this real world problem, and model it to be solved in code?". Different programming paradigms can shape| Blogmobly
A GIF of the game of life in actionMy first programming language was Java, and like a lot of young programmers, I was introduced to the world of programming through the lens of Object-Oriented Programming (OOP). Moving to C broke this mold a lot, and opened my mind to| Blogmobly
What is an event system? Think of an event system as a messenger. The basic idea is that an event (say, a key press) is attached to a callback function. This event is attached at some initialization stage, then that callback function gets invoked when the event is "dispatched". The| Blogmobly
Chapter 1: My Coworker, The Programmer A shell of a man—more of a parrot than a person. My boss, a true believer in the sacred rite of Pair Programming, chained myself and this "programmer"-colleague together like conjoined twins from different planets. We shared a keyboard, but not a| Blogmobly