Technical Work
Recent Coursework
Maths
- Probability measures and martingales
- Continuous martingales and stochastic calculus
- Information theory
- Financial derivatives (self-study)
Comp Sci
- Artificial intelligence
- Physics-informed neural networks
- Deep learning in healthcare
- Concurrency
- Lambda calculus
Hard C
Hard C is my personal crossword engine designed to create New York Times-style themeless puzzle grids. Free crossword software is available online, but they can take crazy amounts of RAM and battery, and grid-filling operations can take hours to complete if my grid is very wide open. I created Hard C to counter those weaknesses in speed and power.
Filling a crossword is an NP-complete problem, so my saves in efficiency came from exploiting domain-specific patterns. I developed a heuristic called "proximity" which outperforms other standard choices for CSPs when applied to themeless grids. Hard C gives me greater control of the number of concurrent threads and how much they interact, so I can control how lightweight my engine is if I plan to just let it run in the background. Hard C is built off of an open-source Rust project called Ingrid, by Ryan Fitzgerald.
Foornal
Short for "food journal", this mobile app lets users track their nutrition just by taking pictures of their meals.