projects
The Repository of Ill-Advised Ventures
A personal collection of items from times people should have known better. An assortment of totems from fraudulent, silly, or just plain incompetent ventures, especially around Silicon Valley.
Song Game
Multiplayer name-that-tune over the internet.
Send me a secret
Easily encrypt a short message such that only I can read it.
Permiscuchess
Chess for people who are good at computers and bad at chess.
ts-json-validator
Let JSON play nicely with Typescript.
Taking Types Too Far
“Solving” the Collatz conjecture in the Typescript type system.
Solving some games
My favorite way to explore a new programming language or idea is to write up a solver for some game.
-
NYT Spelling Bee explorations in Rust
- Using the enable word list without the letter
s
, the highest-scoring possible board is
a e g R i n t
scoring 3784 points! Very enteRtaining.
- Using the enable word list without the letter
- Fast Sudoku solver in Go
- Solve Spelltower from a screenshot in Python
- Solving Ghost
- Messing around with a Poker engine in Haskell
- Solving and creating crossword puzzles using Z3
Hardyhash
Winternitz one-time signatures, but you (probably) don’t totally break security if you accidentally use the same key twice
Baseball predictions
Back in college, I – along with a couple of friends – put together a scheme to predict baseball scores. It worked pretty well.
Q Bio
I run the Platform Engineering team at Q Bio, where we’re trying to change medicine from an art to a science.
Vanta
Many of my recent projects live inside Vanta, where I was the first engineer and spent four years trying to make internet security less hard.
Everything else
See my Github profile