Skip to content

Code

Like all good nerds, I like writing code. Between what I do in my free time and what I’ve done with school, I would call myself very familiar with Ruby, C, C++, C#, Java, PHP, Perl, Shell, Scheme, ML, Haskell, and Python. There’s probably a few others but, well, if you’re interested in hiring me, I’ll be glad to send you a résumé.

I’ve worked on a goodish number of projects over the years; below are a few:

East Dorm Treasury An application for managing a dorm treasury; sort of like a simple checkbook application, but with a bit more sophistication. Written in Ruby with Gtk+ and CLI front-ends
Sketch Recognition Software I worked on this research project with Professor Christine Alvarado at HMC during the summer of 2008. I worked on implementing some sketch recognition algorithms, and also did a lot of work on the auxiliary tools (the Labeler, etc.). It’s a giant mess of C# code… NOTE: This software only runs under Windows XP, requires the .NET Runtime 2.0, and might require the Tablet PC SDK.
SimServer This little game was a project for my CS 121 (Software Development) class at HMC. It’s meant to teach some basic computer hardware skills. It’s written in ruby and uses wxWidgets. It’s been tested on Windows and several Linux variants, so it should be able to handle whatever you’d like to throw at it
BC# Compiler

The class project for CS 132 (Compilers) (wiki) at Harvey Mudd College is, unsurprisingly, to write a compiler. The year I took the course, we were writing a compiler from BC# (a reasonably-complete subset of C#, including classes, inheritance, built-in functions and so forth) to X86 assembly, in SML. I worked with Kwang Ketcham on this project. Our extra features included a sophisticated CLI front-end, some optimization support in the code generation phase, separate compilation, a standard library, and “unsafe” external C calls.

I do still have the code from this project; however, since the class is still in existence and, as far as I know, working on a similar project, I am not going to post it online. It was pretty cool, though

cwviz A Verilog visualization tool that I wrote for research, with some neat features.
wamupd A wide-area Bonjour updater for Linux and Linux-like systems. Written in Ruby. Sort of hackish, but still kind of awesome

Leave a Reply