Nicolaas Kaashoek
Contact: nicolaas at princeton DOT edu
You can find my CV
here.
About Me
I'm a current PhD student at Princeton working in the SNS group. I completed my Bachelor's and Master's degrees in Computer Science at MIT in 2020 and 2021 respectively. I am broadly interested in distributed systems and operating systems. For my Master's thesis I built CheckSync, a system that enables multi-threaded checkpointing of Golang code to allow programs to efficiently make snapshots of their current running state and resume from those snapshots.
My thesis can be found here.
Research Projects
Projects
Below is a list of the final projects I've worked on during my time as a student, as well as a brief description of each one.
-
Wanderlust (Fall 2019): Built a web application designed to give users personalized hiking trail recommendations by parsing GPX data for the trails and feeding it into a recommendation engine. Wanderlust also adapts difficulty scores for trails based on other trails hiked by users to give them a better personal expectation of how strenuous the hike will be. Final project for 6.S080, a data science course at MIT where Wanderlust's poster won a best project award.
-
SEAMS (Spring 2019): Designed a secure auto-grader for complicated student code after discovering a vulnerability in the auto-grader used by some MIT courses. Final project for 6.858, Computer Systems Security.
-
Ouranos (Fall 2018): A decentralized filesystem focused on delivering accurate versioning information to all users. Final project for 6.S974, a special seminar on distributed systems led by Professor Robert Morris.
-
6.035 Compiler (Fall 2018): For 6.035, the compilers course at MIT, my team built a compiler for a language defined by course staff from scratch in Scala. The class ended with a competition to see whose compiler produced the most optimized code, which we won. Here are three pdfs documenting our journey implementing key pieces of the compiler.
Publications