Projects
things i've built, am building, or have honorably abandoned. ● active · ○ done · ◌ shelved. shelved isn't dead, just hibernating.
an agent-based building-evacuation sim i built from scratch in python with mesa. occupants react on their own timelines, follow bfs shortest paths around real walls, and queue at capacity-limited stair doors, so the bottlenecks emerge on their own instead of being scripted. v2 rebuilds the egress-deficient fourth floor of a real building i'd already analyzed by hand under nfpa 101, and it lands on the same constraint on its own. v3 sets the floor on fire. cellular fire and a faster smoke front spread over time, destroy an exit, and force occupants to reroute, and the casualty count shows the deficiency turns lethal specifically when a fire compromises the south stair (how close the fire starts to that stair correlates −0.85 with deaths).
flashing libreboot onto my x220 and rebuilding the hardware while i'm in there, so usb-c charge port, new display, and more ram. currently putting together the raspberry pi flashing rig and trying not to think about bricking it. no repo yet, but there's a build log in notes.
self-hosting jellyfin, immich, nextcloud, and a minecraft server on an hp 280 g1 running debian, with pi-hole still to set up and a diy openwrt router on the list. tailscale ties it together, so i can reach any of it from any device on any network, and my friends can actually get on the minecraft server without me opening the box up to the internet. the whole point is security, privacy, and control over my own digital utilities instead of renting them. build log in notes.
a speaker that makes sound by ionizing the air with electrical arcs instead of a normal cone and coil. the goal was handing it an mp3 or a wav and hearing that file come back out of the arcs. this was a 4 person course project where i worked mostly on the hardware, winding the roughly 1,650 turn secondary coil, doing the proof of concept research, and the design and marketing. i also drew up the circuit diagram, adapted from a slayer exciter reference build for the audio path our version needed, running arduino pwm through an optocoupler into the transistors switching the coil. i didn't do the arduino code or the teensy integration. honest ending, it never actually sang by the deadline. we cloned an existing build instead of doing the math behind it, so when it stayed silent we had nothing to debug against. shelved rather than finished, with a build log in notes.
want the gory details on any of these? most have a build log over in notes.