Interested in what I do?

Take a look at some of the projects I've been working on below.

example image

Spell Checker (Search Tree)

C++ Console Application

As an assignment for my Data Structures course in second year, I wrote a binary search algorithm and sequential search algorithm, then timed and compared the results of a thousand searches with each.

In addition to the searches, I created a spell checker (well, sort of) which used a custom binary search tree to check words in a text document against a provided list of dictionary words and print misspellings to the console.

example image

Blog App

JavaScript/JQuery Web Application

In my Rich Internet Applications course in second year, I was assigned to make a mock CMS page where users could create, edit, update, and delete blog posts using JQuery Ajax calls.

For the back end, a JSON server is used to store the blog posts and provide a simple RESTful API. On the front end, posts are displayed in a table that can be sorted by any of the columns' headers.

example image

Ball Catcher

C# Game

This is a game I wrote as an assignment for my Advanced OOP class in C# using Windows Forms and Microsoft's GDI+ API. The premise is simple: catch the balls and dodge the grenades, all while being denigrated by mysterious background text.

  • Catch every ball possible - you lose a life for each missed.
  • Dodge the grenades! If one hits you, you'll lose a life.
  • Ball Types
    • Blue: Regular Points
    • Yellow: Extra Points
    • Pink: +1 Life

Want to catch some balls? Download below and see if you can set a high score!

example image

Maze Navigator

C++ Console Application

This is a C++ console app I wrote for my Data Structures course in second year. It uses a custom queue class and a breadth-first search algorithm to solve mazes read from text files. The results are output to the screen and written to a text document (mazeName_solution.txt).

Don't believe it can solve any maze? Generate your own here and pass it to the maze solver like this:

MazeReader mazeReader;"maze.txt");
example image


JavaScript/JQuery Web Application

TwoNote is a JavaScript/Jquery-based web application that serves as an alternate interface to Microsoft's OneNote. It uses OAuth 2.0 and the OneNote JavaScript API for authentication, and features rich text editing through TinyMCE to provide users the ability to create, read, update, delete, and filter notes. All changes made are reflected in the OneNote folder of the active user's OneDrive account.

Pretty cool, right? Try it out in the demo below to create and edit your own OneNote notes!

example image

LocalNote (SQLite)

C# UWP Application

I created LocalNote as an assignment for my Windows C# course in second year. It uses the UWP framework and a local SQLite database to provide users the ability to create, read, update, delete, and filter their notes. Rich text editing allows for bold, italicized, and underlined text.

This is actually the second version of LocalNote. The original did not offer rich text support and saved notes as local text documents instead of writing to a database. If you'd like to see the old version, you can find it here.

example image

Text File Duplicator

C# Console Utility

This is a very simple text file duplication utility I created when I found myself in need of several hundred test files for one of my school assignments.

Simply launch the application from the console like this: FileDuplicator [source file path] [number of duplicates] and the specified number of duplicates will be created in the same path as the source file. Each duplicate will be numbered based on its index (e.g. fileName_1.txt, fileName_2.txt...).

example image

Random List Generator

Python Console Utility

This is a simple console utility written in Python for creating delimited lists of random numbers within a range and writing the output to a text file. I used it to generate lists for testing my external merge sort algorithm.

To generate a list, run the script ( and follow the instructions at each step.