Game Development

Coincidence (2022 - Present)

After reading a book about legal systems very different from ours, I was inspired to create a new game studio where no one is in charge. So far, we've only shipped a card game, but we hope to release some proper games over the next few years.

Zachtronics (2011 - 2022)

Most of the games I've worked on were made at Zachtronics, the studio I founded and ran as my day job until 2022. We shipped 13 commercial titles, most about programming and automation, a few about war, one about feelings, and many with solitaire minigames.

ZACH-LIKE: A Game Design History (2019)

All of my older games are available in the Steam version of ZACH-LIKE, which also includes my 400 page game design book that covers everything I designed up until about 2018. You can buy a print-on-demand copy of it here.

The Zachtronics Podcast (2015 - 2020)

Over 6 years I managed to record 10 episodes of a podcast where I interviewed indie game developers, and then later interviewed people other than indie game developers. We also tried playing classic AD&D once.

Educational Games (2012 - 2014)

I also designed a few educational games (MetaboSIM, HabiTactics, and FAKTR) for a company called Amplify while working at Zachtronics. The link above goes to an interview where I talk about the experience.

The Lab (2016)

I briefly worked at Valve, the real-life communist space utopia that sometimes makes video games. Most of my time there was spent working on Xortex 26XX, the world's first VR bullet-hell shooter (as far as I know), which is available as a minigame in The Lab.

Educational Tools

Minimalist Java Game Framework (2022)

This is a Java version of my minimalist C# game framework, which I made so that you don't have to teach your AP Computer Science students C# just to let them make some games. It has no dependencies and should work on any operating system. I have not tested it very much, so please email me if you find any bugs or performance issues.

Programming the Arduino (2022)

This is an updated version of my ZachLabs Arduino curriculum. It's shorter, more straight-forward, and includes a visual block-based code editor to make C++ easier for students with no prior programming experience. I used it while teaching an introductory robotics course for high school students.

Ultra-Minimalist Python Game Framework (2022)

This is an even more minimalist version of my minimalist game framework. It uses Python instead of C# and involved a lot of weird design decisions made for the sake of simplicity, like only supporting a screen resolution of 150×100 and requiring the use of a web-based sprite editor that exports strings instead of files.

Digital Logic Design Lab (2022)

I designed this lab as a self-directed introduction to digital logic design in reponse to a week of unplanned remote instruction for my otherwise very hands-on introductory robotics course. It's meant to be used with a digital logic simulator, like the web-based demo that I used and had great success with.

ZachLabs Arduino (2021)

This is a constantly evolving Arduino tutorial, along with a list of parts for a corresponding kit, that I created while volunteering in an AP Computer Science Principles class at a local high school. It's sort of structured like a Zachtronics game, with a scaffolded sequence of 16 micro-projects.

Minimalist C# Game Framework (2020)

This is a minimalist game development framework, written in C#, that I created for an advanced high school level programming course. It's a lot like the game engine we use at Zachtronics, in that it's very simple and presents a plain immediate-style API for managing input, graphics, and audio.

NetClicker (2020)

Although this is not the first website that allows a teacher to see live responses to multiple-choice questions, it might be the simplest. Create a room, ask a question, and automatically see the responses. It's completely anonymous and free, with no need to sign up for anything.

Projects and Articles

Usenet Archive (2022)

A browsable and searchable archive with lots of old Usenet posts from 1981 to 1991, originally found here as a collection of tape archives. I attempted to group the messages into threaded conversations, but inconsistencies in formatting led to some messages going missing or being placed out of order.

One Weird Trick For Generating Clickbait (2021)

I got access to GPT-3 thinking that I'd use it to generate game content, but the only entertaining thing I've managed to do so far is generate a bunch of chumbox-style clickbait headlines. Here are my 200 favorites combined with random photos from Google Image Search.

HACK*MATCH for the NES (2021)

After the success of porting SHENZHEN SOLITAIRE to MS-DOS, Keith and I ported HACK*MATCH, the action-puzzle minigame from EXAPUNKS, to the NES. It took us almost two years, mostly because Keith wrote a C compiler for the 6502 for us to use. This article covers some of the implementation details. You can buy the game here.

Windows Media Player Skins (2020)

In connection with an episode of the Zachtronics Podcast about early 2000s media player skins, I captured videos of a bunch of Windows Media Player skins in a Windows XP virtual machine. You can see them all in this somewhat horrifying gallery.


Curious about game development technologies that we were slightly too young for, Keith and I ported the solitaire minigame from SHENZHEN I/O to MS-DOS. The link above goes to our write-up. At one point you could buy this on a floppy, but for now you'll have to settle for the disk image and artwork and make your own.

Creating the Alien Writing in Infinifactory (2015)

A short write-up I made ago about creating the alien language for Infinifactory. It didn't mean anything, but that didn't stop our players from trying to figure out what it meant.

The Programmable Typewriter (2015)

When we switched offices years ago I found an old electronic typewriter, which I ended up hacking an Arduino into so that you could type and run BASIC programs on it. This article isn't particularly rigorous, but does walk through my thought process while reverse engineering it.

Project Gibson (2014)

Although it's not widely known, the primary inspiration behind TIS-100 was a mostly unsuccessful attempt to build a self-hosting Z80 computer using period-appropriate components called Project Gibson. Although Keith and I never finished it, the first half is documented here, with some photos and videos of the computer in action.

Reverse Engineering Star Wars: Yoda Stories (2014)

This is probably the most popular article I've ever written, and is about my experiences attempting to reverse engineer some assets out of an old Star Wars video game. I still get emails about it, although it's mostly people who want the sprites, which you can conveniently download here.

Zachtronics Industries (2005)

This is my personal website from my senior year of high school, which is when I started using the "Zachtronics" moniker that I'm still using over 17 years later. It's surprisingly on-brand, with a made-up programming language for the Z80 and a badly designed turn-based wargame. A lot more laser tag than now, though...

Printable Puzzles

Advanced Dungeons & Diagrams (2019)

A much better logic puzzle that I made to go with the AD&D episode of the Zachtronics Podcast. As you solve each puzzle you create a map of a dungeon, complete with corridors, monsters, and treasure rooms!


Another questionable logic puzzle, this time about Japanese plastic model kits (like Gunpla), which I'm obsessed with despite not having the patience for. I wanted to make a video game about them for years but never succeeded.

CODON (2013)

One of my first attempts at designing a paper logic puzzle. It's themed around the idea of how DNA encodes the instructions for building proteins, something I've always found intriguing. It's not very good, unfortunately...

SpaceChem Puzzle Book (2013)

An adaptation of SpaceChem into a paper logic puzzle. I made an early version of this when we did a small run of SpaceChem discs in 2011, and then later turned it into this booklet for a giveaway at PAX in 2013. When you flip the book over it becomes the "Ironclad Tactics Battle Book", a small two-player print-and-play version of Ironclad Tactics.