Hello, I’m Nathan!
Below are things I have written and projects I have worked on.
# Reckless Drivin
I’m working on a rewrite of the Macintosh game Reckless Drivin’. Jonas Echterhoff shared the original source code in 2019, and I have been working on my rewrite ever since. Despite starting with the original source code, the project has involved a lot of reversing to understand the binary format for the game assets. I occasionally write about what I have learned and share progress updates:
- Unpacking LZRW-compressed game assets from resource forks
- Rewriting Reckless Drivin’ in Zig
- Resource decryption and generating registration codes
- Deserializing resources with Zig comptime metaprogramming
- We have pixels! And some undefined behavior…
- Color lookup tables led me to realize I was using incomplete game data for several years
zf is a fuzzy finder that is optimized for filtering filepaths.
Ziglua is an idiomatic Zig wrapper for Lua and Luau. Building something cool with Ziglua? Or want to get involved? Chat with us on Discord!
# Other projects
- workspaces.nvim and sessions.nvim: simple workspace and session plugins for neovim.
- projectile: a Blender addon to apply initial velocities to rigid body objects.
- Blender: I participated in the Google Summer of Code in 2019 and 2020 improving the outliner editor. My commit history shows other areas I contributed to.
- macOS doesn’t like polling /dev/tty
- Writing to the macOS clipboard the hard way
- Some thoughts on Zig testing
- My thoughts on Vim, terminals, and GUI editors
- Catching undefined behavior in Zig cc
- Exploring the inner-workings of custom Git commands
- Consistency and precision in Zig’s type system
- Zig naming conventions
- Running a Hugo server on local and public networks
- Funny variable names
- Light The World sheet music