Hi! My name's Riley and I'm a fourth year student at the University of Waterloo triple majoring in Computer Science, Pure Mathematics, and Combinatorics & Optimization.
To learn more about me, check me out on github or see my resume.
Working on low latency options trading.
Working on low latency software
Worked on the Character Animation team
Worked on the Limits and Trading Compliance (LTC) team
Worked on Jasper's frontend, backend, and infrastructure. Select projects include:
Cancelled due to COVID-19
Worked on Jasper's frontend, backend, and infrastructure. Select projects include:
Just some things I've done that are kinda cool. Some projects start with lowercase letters; no my grammar is not actually that bad, these are just repo names :)
Note: WIP - more media coming
tsp_art was inspired by a picture I saw online of an emperor penguin drawn using a single line, although this link attributes the origins of art form the to Robert Bosch. The idea is, given an image, to find a representative subset of pixels and then find a minimum weight Hamilton cycle on the induced sub-graph of said pixels (if this is confusing, see the pictures below).
Despite beginning with only tsp, this repo is evolving into a general purpose operations research library, and as I learn more about the subject I provide more and more of my own implementations (with an artistic twist when I can!).
Vir is both a bad pun and a clone of the popular Vim editor serving as my cs246e final project. Impressive features include C/C++ syntax highlighting, command multipliers, linear undo, and the ability to edit multiple files simultaneously. Of course, Vir also supports the standard movement, copy, delete, and search commands from Vim. In fact, just for fun, this part of the HTML was written in Vir!
Due to academic integrity issues, I can't make the Vir source code public, but I have linked the design document here and have provided some screenshots below.
In highschool, myself and 4 friends entered into the York Regional ROBOCUP qualifiers wherein we had to design a pair of robots capable of autonomously playing soccer. We swept both the local and national qualifier, making us the representative of Team Canada for the 2017 ROBOCUP competition in Nagoya, Japan where we ultimately finished with a 4-3 record. My involvement with robotics in high school, and this experience in particular, taught me a lot about leadership and really began my passion for STEM.
As part of the enriched offering of cs241 we had to develop our own Lax compiler (Lax is essentially Scala with type hinting, ie: a functional language). The course was structured in such a way that, once we learned about a topic in class, we would then need to go and implement it ourselves. Some of the features that go above and beyond standard compiler behaviour include Cheney's double heap for memory management, type-checking, CYK parsing, closures, nested procedures, and tail call optimizations.
Just your everyday cliche machine learning project, except this one is packaged nicely in a Jupyter Notebook! Implements a plethora of algorithms to serve as automated chess opponents, ranging from minimax with αβ-pruning all the way through Monte Carlo Tree Search (MCTS) and more.
For my grade 12 computer engineering summative, I decided that I wanted to create a bionic hand (kind of like ???). The final project wasn't quite as cool since high gear ratio linear actuators weren't in the budget, but I did manage to produce an extremely high torque prosthetic hand that was able to mimic human actions picked up through electromyographical sensors.
@TODO: insert video of prosthetic crushing a coke can as I close my fist.
My quarantine project is to consolidate my course notes into one convenient place (S3) in one convenient format (pdf) so I can have them available if need be. Also latex notes look really cool!
Unfortunately, writing latex takes FOREVER so I'm doing this moving forward with the exception of old courses I found sufficiently challenging and/or interesting, though often these are the same thing.
@UPDATE: Yea, none of that happened.
However I'm going to make an effort to keep this somewhat up to date going forward!
See below for my partial notes in archived courses, as well as my current notes (which will hopefully be completed this time) under current courses.