Code Samples

Code Samples and Write-ups in Various Programming Languages

I have a C/C++ implementation of Seidel’s Randomized Incremental Algorithm downloadable here - it is an uncommon and elegant algorithm for linear programming that is more efficient than the more common simplex algorithm when there are a large number of constraints. The document includes the full source code as well as an explanation of proper starting conditions for this algorithm; these conditions are commonly misunderstood such that many other available implementations are incorrect.

I have a MATLAB implementation of the expectation maximization algorithm for a multidimensional gaussian mixture model downloadable here. The document includes full source code (at the end) as well as various graphs and explanations.

I have a C# implementation of a MS Kinect based computer vision application downloadable here. (The source code is included at the end of the document). You can see a video of this program in action here. It is based on the 1980's video game "Simon" but performed via the Kinect and computer vision rather than physical buttons.

I have a Python implementation of a tokenizer (for ISO Pascal) downloadable here.

I also have extensive experience with SQL, Delphi and C/C++. Please contact me if you'd like to see source code I've written in one of these languages.

Code from My Master's Thesis

You can download my thesis here. The final forty pages contain a MATLAB implementation of the algorithm described, which deals with time-frequency analysis and is similar to the modified discrete cosine transform.

Other Technical Projects

March Madness Robots. My team constructed a robot to toss balls into baskets. It was great fun - who doesn't like playing with laser cutters? For this project I created several CAD designs for a ball loading mechanism and wrote various firmware in C.

Graphical Audio Programming Environment. This was my undergraduate honors project, a real time audio library implemented in C++.

Scope and Lifetime. This is a useful explanation of the fundamental concepts of scope and lifetime, as well as how they relate to concrete implementations using stacks, heaps and the data segment, that I wrote up on Stack Overflow.