Nice to meet you!
I am currently a student at the University of Toronto specializing in the ever-popular field of computer science. My interests lie in game design, web development, computer science education, and human-computer interaction. Aside from those related to my main interests, I've also completed courses in artificial intelligence, databases, and software engineering.
My hobbies include doodling, gaming, and making things. As an undergrad, I've had the pleasure of working on a variety of projects with not only other students, but also a handful of faculty members. I hope that, through this page, I'll be able to showcase some of the cool things I've had the chance to work on!
Since 2014, I have held various teaching assistant positions at the University of Toronto. As a teaching assistant, my responsibilities include holding office hours wherein I would answer student inquiries, running labs and tutorials, grading assignments and tests, monitoring online discussion boards, and invigilating exams.
Courses I've TA-ed are as follows:
Supervisor: Michelle Craig
I created various Python and Bash scripts to aggregate, analyze, and parse data related to research in computer science education. In particular, we worked to determine the effectiveness of exam wrappers.
This research culminated in a paper ("Exam Wrappers: Not a Silver Bullet") presented and awarded Exemplary CS Education Research Paper at SIGCSE 2017.
In addition, I supervised fellow undergrads as they worked to create video lectures related to C programming.
The Programming Course Resource System ("PCRS") is an online teaching tool which provides video lectures and coding questions to students, and is used in various University of Toronto CS courses.
My contributions to the project include recording and editing said video lectures pertaining specifically to C programming. In addition to video creation, I also created various problems for students to solve, and had a hand in writing some of the video scripts.
A list of topics covered by PCRS-C can be found on the PCRS-C website.
Badgepack is a community-based badge/achievement system. This system allows users to create and invite other users to their communities, through which users may earn badges for their accomplishments. Within a community, owners may create badges by supplying a badge image, name, and description. After a badge has been uploaded and made publicly available, moderators may gift badges to community members.
In addition to the basic community functionalities, users may also display badges they've earned on their own user profiles which are viewable by other Badgepack users. Furthermore, communities also feature leaderboards through which users can compare themselves to others, and see how they fare.
Created as a solo course project for a web development class, the Untitled Farming Game is, as its name suggests, a farming game. This small browser-based web app allows users to create an avatar (using premade assets), plant and harvest crops, and interact with other users through a simple marketplace.
Taking third place for Artistic Achievement at the 2016 Level Up! Showcase, Chrominance is a game which combines art and (a tiny bit of) horror to create a spooky yet pretty atmosphere. In this game, players control a cloaked figure who must collect prisms to bring light back to their world. However, the player is not alone in the world. In any given stage, there may be monsters wandering around, ready to chase the protagonist.
To survive, players must blend into their environment using their magical colour-changing cloak. By successfully hiding, monsters will forego chasing the player and return to their usual route. Aside from changing cloaks, players can also toss and leave behind projections which will temporarily stun monsters.
Chrominance was created using Unity3D and written in C#, with 3D models made in Blender. This project was created as a collaboration between some UofT and OCAD students for an Introduction to Video Game Design course, featuring a team of 8 students working together for 7 weeks.
Water Tiles is an educational puzzle game which brings awareness to the hydrologic cycle and how it works. In each stage, players are presented with a specific configuration and must perform a certain combination of actions in order to modify the terrain so that water reaches certain goal destinations. Such goals include flowers, crops, and aquifers.
Actions which users may perform include digging grass and soil, planting seeds, and applying fertilizer to tiles. In addition to the layout of the stage, players must also keep factors such as temperature, time, and wind direction in mind.This project was created using Unity3D, written in C#, and made under the supervision of Steve Engels. Water Tiles is a collaboration between myself and Sophia Huynh.
Eggonomics is a cute browser-based game which teaches players basic math skills such as addition, subtraction, multiplication, and division. Players must pay attention to changes in market prices, and take advantage of moments where merchants will pay a premium for certain goods.
ext2minator is an ext2 file system visualizer. Created as a course project for "Introduction to Software Engineering", this visualizer is a useful tool for those who are learning (or are interested in learning) about the ext2 file system. In recent terms, ext2minator has been used by students enrolled in an operating systems course.