Software

  • penrose: A Rust library for writing your own X11 tiling window manager.
    • The design and API of the library is built around splitting the code base into IO logic that interacts with the X server and pure logic that implements the core window manager functionality.
  • ad: My attempt at writing my own terminal based text editor from scratch.
    • This has turned into a bit of a playground for API design and digging into implementing lower level functionality such as a regex engine and virtual file system wire protocols.
  • structex: The structural regular expression engine that powers the editing language in ad.
  • simple test case: A tiny Rust proc-macro for writing parameterised tests.
    • I prefer to have as little magic and framework between my tests and the logic under test.
  • sandpiles: Simple fractal generation using the Abelian sandpile model.
  • raymart: a simple ray tracer that supports loading .obj files
    • Started off just with following the wonderful ray tracing in one weekend before growing additional features. Taking things further is going to involve learning how to write shaders.
  • dalbrack: Playing around with SDL2 to make a roguelike from scratch
    • Really this ended up being a playground for looking at procedural generation and rendering.

Photography

I'm not great at coming up with names for my photography projects, so in the interest of putting a pin in it I've settled for the following two categories:


Video

  • penrose from scratch: a tutorial series taking an extended look at what is involved in writing your own X11 window manager using penrose.

    • The code for the resulting window manager can be found here on GitHub.