Alex Mason

Softwarrister, friend to animals, beloved by all

  • Help STL Help You

    Help STL Help You

    Today we’ll dissect some classes and functions from the C++ standard library to understand how they tick. If you feel a bit overwhelmed by cppReference.com, this should help you learn how to interpret the documentation, to reason about the available tools for a given job, and to use them to your best advantage. A Less… Read more

  • Learning PAndas with U.S. Election Data

    Learning PAndas with U.S. Election Data

    tl;dr look at this colab notebook I made. As our environments become suffused with data, Working that data effectively adds power to more and more of what we do. The old days When I was working on SIMD intrinsics and other optimizations for the libgav1 project, I ran a lot of microbenchmarks as part of… Read more

  • Let’s Read: mesh Optimization

    Let’s Read: mesh Optimization

    In the spirit of a Let’s Play, I’m trying out a format where I read through an academic paper and interpret it as I go, like a discussion seminar of one. Too often I try to read things like this without making sure I understand, and understanding is measured by the ability to explain. I… Read more

  • Dev log #6 – Triangles

    Dev log #6 – Triangles

    It’s time to drop the simple capsule shapes and build something more chunky and rocky, while retaining some elegance and regularity. That means I’m drawing my own polygons. There’s no way to make an arbitrary polygon sprite in Unity, so I turned to the 3D mesh resource. I started by downloading Blender to see if… Read more

  • Dev log #5 – Making friends with Physics

    Dev log #5 – Making friends with Physics

    I took a break from the physics to see what I could get from Unity’s Trail Renderer. The width is a curve, so I figured I would play with it to start, but I’ll leave it at constant width when I’m iterating on other features. There are a lot of parameters! Time intuitively means how… Read more

  • Math needs a Makeover

    Math needs a Makeover

    In college, my majors were Cognitive science (emphasis in computation) and mathematics (emphasis in computer science). The hardest math courses for me were the ones with the most weird symbols. By “weird” I don’t just mean Greek letters, although lowercase Zeta, Xi, Wau, and Sigma all look the same. I mean symbols that are supposed… Read more

  • Dev log #4 – Nascent stem of cracking Rocks

    Dev log #4 – Nascent stem of cracking Rocks

    Last time, I hit a wall, literally with the shots, making them bounce, but also metaphorically because I couldn’t solve the problem where I had raycasts hitting colliders from the inside and scheduling incorrect bounces. I’ve thought about this while walking my dogs several times, considering how I might cast multiple rays to project the… Read more

  • AI lmao

    AI lmao

    If I’ve learned one thing from the recent crest of AI technology, it’s that perfect really is the enemy of published. I’d best clack out my thoughts, then. Some of these sections are more like the crude ore of future essays, but I figure this will help “train” my own brain’s “model” to dress them… Read more

  • Dev log #3 – Worming roots of cracking Rocks

    Dev log #3 – Worming roots of cracking Rocks

    Let’s aim the shot. i’ll need a way to see where I’m aiming, and to use the orientation to determine the shot’s velocity. After that, I’ll need to derive the post-bounce velocity, which is also hard-coded at the moment. For simpliicity, I will keep all this behaviour on the shot object itself, but later I… Read more

  • Solving Wordle Without Playing Wordle

    Solving Wordle Without Playing Wordle

    All the Wordle solver programs I’ve seen work by playing the game like normal and computing the guess that provides the most information toward the answer. Asking the game to tell you about the letters is easy. It’s practically cheating. I’m looking for a challenge. When you finish the daily Wordle, you can copy results… Read more