All CS Classes I've Taken at Brown

CSCI 0190 – Accelerated Introduction to Computer Science
[Pyret] Accelerated way to finish the required into sequence, touched on time-space trade off, the halting problem, graph theory, and proper testing techniques.

CSCI 0330 – Introduction to Computer Systems
[C] Built buffer overflow project, implemented C’s malloc, and a multithreaded database server.

CSCI 1850 – Deep Learning in Genomics
[Python] Built deeply nested Convolutional Neural Networks, auto-encoders and PCA and LDA graphs to analyse and classify genomic data.

CSCI 1230 – Introduction to Computer Graphics
[C++ and Qt] Implemented tessellation of standard shapes to arbitrary levels of detail, built 2d image filters, implemented a fully functional raytracer. Final Project was Beagle, explained below.

CSCI 1730 – Design + Implementation Programming Languages
[Racket] Implemented an interpreter, class systems, a type checker and a type inferencer from scratch.

CSCI 1660 – Intro to Computer Systems Security
[Bash and Python] Explored different vulnerabilities like XSS attacks, SQL injections, overriding environmental variables, privilege escalation and sniffing. Build a cryptographically secure file transfer program in Python as final project.

CSCI 1710 – Logic for Systems
[Forge and Python] Used Forge (a SAT solver) to build specifications for several graph-based systems. Also implemented a SAT solver from scratch using Python. Final project was a function generator to map given inputs to given outputs.

CSCI 1900 – csciStartup
This class allowed me to work on my startup Emit for course credit.

Beagle - Sophomore Fall (2020)

Beagle is an application I made with Alana White as a final project for our graphics class. It’s a fun program that explores the creation of cool animated shaders using the laws of evolution (mutations, offspring, evolutionary pressure), as well as the creation of trees using L-systems. I made the procedural shader module; Alana made the L-system tree module. It’s named after Darwin’s HMS Beagle.

Webiste link here. If you have a Mac, you can get a binary here to lay around with it!

Compliance by Design - Freshman Summer (2020)

This is the research project I did during the summer of 2020 as my UTRA. Compliance by Design is a research project started by Malte Schwarzkopf of the Brown University Systems Group. It’s aim is to design systems that make it easy to make databases (either pre-existing databases or to-be databases) GDPR compliant. Here’s part of the adbstract:

New laws like GDPR mean that database maintainers must now be able to respond to SARs (user requests for all their data). Usually, this means they have to manually make queries to comb through their database – this is tedious and error prone. We wanted to design a system that could do this automatically for new and existing databases, and tested and evaluated different ways of implementing said hypothetical system in PostgreSQL. Ideally, this system should not have to depend on explicitly defined foreign key constraints to generate its SAR reports. Our findings show that a promising approach would be a system that maintains database shards for user data using custom, potentially nested, indexes. The system would make use of lightweight annotations by the database developer to determine which data goes into whose shard, and use developer-provided redaction predicates to ensure sensitive data doesn’t leak into the SAR report.

My full work can be found on GitHub, and a poster summarizing my findings can be found here.

Browser Lightfield Editor - Freshman Spring (2020)

During my freshman spring I worked for Professor James Thompkin, who is part of Brown’s Visual Computing Group. During this time, I improved an in-browser Looking Glass lightfield editor that one of his former masters intern created.

I completely refactored and revamped the front end of the application, and also refactored part of the backend and optimized it. Unfortunately, at the time I left the project, it was still active research and hence the Github repository was private. Maybe, by the time you’re reading this, it’ll be public now.