Hi, I’m Ryan, an undergraduate Computer Science student at the University of British Columbia wrapping up my degree next year.
I like to write computer programs. My main interests lie in software engineering, where I have experience in backend development, cloud infrastructure, and full-stack engineering. Recently, I’ve been diving deeper into operating systems, compilers, programming languages, and runtimes. On this site, I write about these topics.
Outside of my own software engineering journey, I am interested in pedagogy and teaching.
Please see experience for a more in-depth description of my professional experience and university for details about my undergrad.
Projects
A more comprehensive list of my side projects can be found on my GitHub. I’ve included a link and brief descriptions of my more recent ones completed in the last ~5 years here.
FileScript - a DSL implemented in Java for searching for files based on metadata and other properties
Runtime VM - an in-progress virtual machine inspired by the JVM and .NET Runtime, implementing my own programming language
Breathe App - an air quality monitor providing insights into a space
Discover Machine Learning - an interactive introduction into the world of basic machine learning concepts with a visual block editor, targetted towards elementary-aged students
This Website - my third (or fourth, I forgot the count at this point) rewrite of my personal site. This time, I wrote a custom static site generator in Rust (got tired of keeping NPM dependencies up to date)
AnkiGPT - an integration between Anki (the flashcard program) and OpenAI’s ChatGPT API. I wrote the first version as a website (using TypeScript and Python) and later rewrote it as a desktop application using Rust, TypeScript, and Tauri.