I am a Software Developer, currently employed at Akcelita Innovation Labs
Languages I know: Python, C++, JavaScript, Go, Ruby, Haskell, OCaml, C#, Java, and Bash.
Languages I am learning: ReScript, Zig
Languages I want to learn: Elixir, Rust, Lua, APL
I have a Bachelor of Arts degree from Columbia University, majoring in Computer Science
- 🌐 Web development: Ruby on Rails, Django, React, RESTful APIs, Microservices, Cloud (AWS)
- 🕹️ Game Development: engine architectures (ECS) and algorithms, particuarly those for procedural content generation.
- 🐫 Compilers and Programming Languages: Toy compilers, DSL interpreters, and now type inference algorithms/formalisms!
- 📈 Graph Theory: Graph algorithm implementation (st-orientations, graph rewriting, graph drawing, etc...)
- 🚧 Other miscellaneous topics! (stay tuned)
- 📝 SamoyedAPI: A simple RESTful microservice for supplying content to my static blog.
- 🕹️ MatchMaker: A generic, extensible game server for matchmaking 2 player games, and for hosting tournaments. Features an HTTP and Websocket API for frontend or programmatic use.
- 💎 EventAware: A Rails webapp for organizing events with unit testing (RSpec), integration testing (Cucumber), deployed on Heroku.
- 🖼️ WFCpp: A C++ library for image synthesis using the Wave-Function Collapse algorithm.
- 🐫 Part of the type theory working group for the sslang research project, working on pretty-printing tools for the type system's constraint solver.
- 🕷️ Web crawler as part of my internship with the Columbia Build Lab (private repository)
- λ Quine: An interpreter for a standalone relational programming language inspired by microKanren, implemented using Huet's algorithm for unification of lambda terms with a backtracking monad transformer.
- ✏️ Sketcher: a sketch drawing classifier using graph-based analysis and indexing.