A multiplayer, web-based implementation of the board game Ricochet Robots.
- Frontend written in Elm, a pure functional language that compiles to Javascript and promises "zero run-time errors"
- Backend written in Elixir, another functional language, built for concurrency and fault tolerance
- Supports dozens of simultaneous connections, with chat, polls, server settings, and more
- Asynchronous solver compares human solutions against an optimal search
A catalogue of sea shanties, historic and modern.
- Built upon Craft CMS, a flexible content management system
- Populated with hundreds of hand-collected songs, albums, books, and references
- Integrated melodies from the Digital Tradition database with ABCjs
- Preliminary attempts to use Python's tensorflow for optical music recognition (OMR)
- Built a basic recommendation engine using tf-idf.
A portable, personal use version of the team-based board game Codenames.
- Play near a computer or cast to a large screen television — no shuffling cards!
- Decode the board with the Android app (unreleased) or the web-based spymaster decryptor
- Select from diverse, alternate language, or custom wordlists
- Scan the QR code in app to quickly find the corresponding decrypted key
Garden-planning based around NOAA-reported frost dates.
- Dynamic SVG calendar written in Elm, exportable as a PDF
- Simply input your ZIP Code and select species to create a calendar
- Use the pre-computed closest weather stations to each ZIP Code to query NOAA for frost dates
- See recommended planting dates & practices based around these frost dates
County-level chloropleths to display data from the USDA Forest Service FIADB.
- Identify geographic information through prominence of tree species
- Data obtained using a Python API wrapper for the EVALIDator HTTP API
- Visualization provided by Leaflet, a Javascript library for interactive maps
Microcontroller-based PID Relocker
Automatically re-engage interrupted PID controller feedback systems.
- Controlled by Sparkfun's FreeSoC2 development board
- Monitor calibration and lock status via serial communication and a Python GUI
- Re-engage interrupted locks on a millisecond timescale
- Custom printed circuit board with Gerber files for robust reconstruction
The culmination of my years of atomic physics research at JILA.
- Strong light-matter interactions in a high-finesse cavity
- Large amounts of quantum entanglement created with quantum non-demolition measurements
- Operating the first entanglement-enhanced matterwave interferometer
- Bonus: a laser-cooling protocol based on Landau-Zener adiabatic passage and Raman transitions