CSC494 Summer 2015 Reserach Project: SQL Visualizer (DeMASK)


A backend and frontend for a SQL visualizer which takes a valid SQL query and deconstructs it into intermediate steps, showing tables and other meta-information at each step. It is intended to help a beginner learning SQL with understanding how a query is executed and what effect statements actually have. A sample page and server to try it out are included, as well as instructions on how to set it up.

It currently only supports PostgreSQL 9.3, and has some known issues and limitations.


CSC309 Winter 2015 Individual Project


A simple website for submitting startup ideas. Written in plain Javascript and CSS, with a Django backend.

Built as the individual project submission for the Winter 2015 CSC309 class at UofT St. George (Programming on the Web).


CSC309 Winter 2015 Team Alpha Group Project


A website where people can sign up for, and lease, spaces for work, with the goal of creating "synergy" and improving work for all involved. Writen in plain Javascript and Bootstrap, with a Node.js backend.

Built as the group project submission for the Winter 2015 CSC309 class at UofT St. George (Programming on the Web). Other group members include lucasbaldi, melc000 and oreoreo.


Perl Song Name Fixer


A simple Perl command line utility that fixes song names based on a given regex and substitution string. The idea is to remove prepended info like the band or album name, or to add it.


FD Generator


A simple Python console utility to generate functional dependencies and projections for sets of them.

Built to assist with homework for the Fall 2014 CSC343 class at UofT St. George (Introduction to Databases).


More coming soon...

UofT Hacks 2016 - YouTube Bookmarks Chrome Extension


A Chrome extension that allows you to leave bookmarks on YouTube videos, along with descriptions. Bookmarks are per-video and are synced across browsers.


UofT Hacks 2015 - Graffity (unfinished)


A Chrome extension which aims to allow the user to leave messages on any webpage, for others using the extension to view. Inspired by the message system in the video game Dark Souls.


CSSU Hack Day 2014 - Complexinator


A Python desktop application that attempts to complexify a given piece of text by replacing words with more complex-sounding words from a thesaurus.

Uses the NLTK library for natural language recognition and the thesaurus.


RBC Next Great Innovator Challenge 2014 - Ulysses Decision Support System for ATM Placement


A web application that uses sample data about the location and usage of RBC ATMs, as well as competitor ATMs, to attempt to predict locations for building future ATMs or to suggest ATMs that should be removed. Written in plain Javascript and Bootstrap, with a Perl and Django backend.

Other group members include blackle, thisiscabbage and asterisk93.

Beer Blog


A blog where I occassionally try out and review strange or interesting beers that I find.