Welcome to my website! My topics of interest are distributed systems, storage/databases, compilers, and programming languages. I also dabble in generative art from time to time. You can find my blog here.

recent blog posts

Oxidizing argparsh

argparsh has too much overhead for some usecases - in this post, I will examine why and use Rust to build a better solution.

Cycling my first century (100 mi)

For a long time, I’ve wanted to cycle 100mi in a single ride, and this past weekend, I finally did. Here’s a small write-up on my experience.

see all my posts here

projects

MonkeyWrench

  • MonkeyWrench
    • Generative AI powered tool to help use browser devtools
    • Lowers the barrier of entry to using the JS console to automate tasks or debug scripts
    • Watch a demo of the prototype here

rainbow

  • rainbow
    • Static analysis tool for C/C++ to reject invalid callgraphs, powered by clang and Cypher
    • Some example usecases are:
      • Prevent functions that assume locks are held from being called without a lock
      • Prevent functions using collective MPI operations from being called during another collective operation
      • Prevent secure functions from being called from insecure contexts

  • sPyCy
    • A python implementation of graph database with an openCypher frontend for testing openCypher tools, or for embedding openCypher in other projects.
    • Try the in-browser demo at the link above! Or try a demo of sPyCy being used to implement a webscraper here!

video-synth

  • video-synth
    • A synthesizer for visual effects! Chain together various filters and transformations and build temporal functions to animate them. The UI is definitely a work in progress and is hard to use.
    • Supported browsers:
      • Firefox (Desktop and mobile)
      • Chrome (Desktop and mobile)

what is a filesystem

  • what is a filesystem?
    • An interactive book based of the corresponding content from the cs241 coursebook
    • Features a visualization of disk blocks in a ext2/minix-like filesystem and has a command line simulator with support for commands like ls, cat, hexdump and many more!
    • Supported browsers:
      • Firefox (Desktop and Mobile)
      • Chrome (Desktop and Mobile)

  • camera theremin | Blog post
    • An online theremin that turns your webcam into a musical instrument!
    • Supported browsers:
      • Firefox (Desktop and Mobile)
      • Chrome (Desktop and Mobile)