All of the things labelled as Posts, so that crawlers have a place to find them.
UI Engine Layout: Additive, Partitioned and Layered
Layout determines how children are positioned and sized within their parent element. There are three approaches to placing child elements within a parent: Additive: The
UI Layout: Working with Pixels, Points and Density
Devices have various physical resolutions and densities. One phone may be 10cm wide and have 800pixels across, while another may be 8cm wide and have
Dissecting my Rusty Superhero Bots — The code review
I chose Rust as the language for the Botters of the Galaxy contest. My code structure was suitable enough to get me to the
Dissecting my Rusty Superhero Bots — A contest post-mortem
I made it to the top Legendary League in a bot programming contest. This is the first such competition I’ve done, with a language, Rust,
UI Layout: Natural versus dependent size
Elements have either a natural size, a dependent size, or combination of the two. The size of an element influences its placement. The user and
Drawing a bitmap in the window (Leaf-SDL #2)
Read Update #1 Syntax Error I addressed two problems since last update: A bad error message, and an image loading error. The bad error
Fixing some vector drawing issues
I fixed several issues with the vector drawing in Fuse. A few of them seemed somewhat obvious, so as with all such issues, I wonder
New Game: A quest for graphics (Leaf-SDL #1)
I’ve started a journey to make Leaf more visual. You may have seen some of my videos about complexity, complete with shaky mouse drawn
Innocent growth of technical debt
I’ve spent the last several days unravelling the mystery of the Each feature in Fuse. It’s a powerhouse feature that has managed to accumulate a
Debugging a defect with a shared argument
While writing some error handling helpers, during my algorithm stream, I encountered a defect. It’s a tricky one dealing with the passing of shared arguments
Should function arguments be reassignable or mutable?
Working on a defect in Leaf I had a question: should function arguments be reassignable within a function? Are they just like local variables, or
Interview Question: A two-player card game
I’ve been asking interviewees, over at interviewing.io, to write a simulation of a two-player card game. It’s an engaging question, revealing a lot about their
Are global variables bad?
We hear it often, “global variables are bad, avoid using them!” But is this actually good advice? Simplified blanket statements are already a bit suspicious,
What is a closure?
You’ve heard the term, you’ve probably even used them, but what exactly is a closure? It’s a combination of data and code that have become
Hidden complexity in cute animal pictures
You head over to your favourite link site and click one of the pictures — or let’s be honest, you ctrl+click all the pictures. Your
Adding += and friends to Leaf
Yesterday I finished a rather simple Kata from Codewars: the sum of a sequence of numbers. It was straight forward to implement, but I felt
Why I’m not a fan of pair programming
Pair programming feels like a lingering ghost. Its adherents proclaim it to be the best approach to coding while the rest of us just continue
What is reactive and stream programming?
Reactive programming is a paradigm that creates permanent relationships between values. Rather than one-time calculations, a reactive expression updates its result whenever the source value
Debugging a synchronous callback in loop defect
A bug snuck by me while adding a new feature to Each: a behaviour in Fuse that dynamically adds UI elements. I had to change
What is declarative programming?
Declarative programming is a paradigm that expresses the desired result, not how to achieve it. It uses rules and constraints to describe a user interface,
Embedding a text file in C++ code (with Scons)
I needed a way to embed a text file in my C++ code. I recently introduced Leaf code into the Leaf compiler and didn’t want
I’m proud to be a programmer
I’m a programmer. If you think that means I write code, you’re wrong. As a programmer, my job is translating ideas into a working computer