Selected Projects

Open edX SAML/Shibboleth Integration

I was the lead developer of the new SSO features of the Open edX Cypress release, which included SAML/Shibboleth integration. An OpenCraft project.

pythondjangoSAML

Open edX Content Libraries

I led the engineering design and implementation of the new "Content Libraries" feature of the Open edX platform. An OpenCraft project.

pythonmongodbdjango

Agents of Nature

Place-based educational adventure game for kids that can only be played in parks.

  • Active: 2011-2014
  • Role: Lead developer
iOSAndroidMarmaladeC++PythonDjango

Explore150 App

Location-based app to connect with Canadian historic and cultural sites, as part of Canada's sesquicentennial celebrations.

  • Active: 2013-2014
  • Role: Lead developer
iOSAndroidMarmaladeC++PythonDjango

OGO Website

I developed and maintain the website for the OGO Car Share Co-op.

PythonDjango

Quotations Collection

A collection of my favourite quotations.

  • Active: 2006-2017
PythonDjango

s3eMapView

An extension for the Marmalade Mobile Game SDK that implements native geographical map support on iOS and Android.

MarmaladeiOSAndroidOS XC++Objective CCJava

astrodendro

A Python package for computation and analysis of astronomical data using dendrograms.

PythonNumPyImage Processing

Quantified Comparison of Molecular Cloud Structure

My undergraduate thesis: using "dendrograms" to produce a quanti´Čüed difference score between two data sets representing molecular clouds. Also led to this paper.

  • Active: 2011-2012

astrocube

Python package for loading and viewing radio astronomy data cubes.

  • Active: 2011-2012
  • Role: Sole developer
  • Source: astrocube
PythonNumPyImage Processing

Differential Cryptanalysis Example

An Excel workbook to help understand and teach differential cryptanalysis. Includes code for a working attack.

VBACryptography

Get to Know Website

This non-profit program's complex website supports their numerous initiatives. I developed the site with PHP for several years and later re-wrote it using Django.

  • Active: 2008-2014
  • Role: Lead developer
PythonDjangoJavaScriptPHP

Morningstar Office

I designed and spec'd Morningstar Interactive's unique eco-friendly Kelowna office space, which was featured in Armstrong Ceiling & Wall Systems 2013/14 catalogue.

  • Active: 2010
SketchUp

Nexus

Custom time tracking, payroll, and password management software used at Morningstar Interactive.

  • Active: 2009-2014
  • Role: Sole developer
ASP.NET MVCC#JavaScript

Scholarium

Scholarium was a Facebook app that let university students share their timetable, find classmates, and rate professors. It had a few thousand users, and according to random people, it was one of the best Facebook apps for students. Sadly, I can't find a screenshot.

  • Active: 2006-2008
  • Role: Sole developer
PHP

Tom Mah Karate

I designed, developed, and maintained the website for Tom Mah School of Karate and the Kelowna Traditional Martial Arts & Fitness Centre, which included a custom-built CMS, photo gallery, and other apps written from scratch.

  • Active: 2001-2007
  • Role: Sole developer & designer
PHPJavaScript

KDE User Account Control Module

One of my first open-source projects - a KDE control center module for viewing and changing basic information about your UNIX user account, such as full name, password, or the user avatar seen in kdm.

C++KDE