These are projects that I've designed or implemented. Some are just ideas and some have grown to be full things that hang on my wall, complete with photos and source code. Enjoy!

RFID Front door lock

I discovered that my apartment's front door has an electronic door strike, so I had to make it work. I built a door lock that can be opened with an MBTA Charlie Card (public transit card), which supports multiple key groups and has an Android app.

Android Units

An Android interpretation of the powerful GNU Units utility.


A set of simple tools to help you rapidly publish things on your computer to the web. Similar to various pastebins, but lives on your own web hosting.

Android robotfindskitten

Now you can bring your kitten-seeking with you wherever you go!

Android SuperGenPass

An Android implementation of SuperGenPass


otl2xhtml converts a Vim Outliner document into xhtml. Similar to otl2html, but with a focus on doing only one thing: turning it to basic xhtml. From there, xslt can turn the document into other things.

Shared Expenses 2

SharedExpenses 2 is a web-based expense manager. It's based on the idea of a group of people living in one house, needing to have common items purchased for the house and/or select members. It's like a small interest-less credit system to be used amongst friends.

Esquire E-Ink cover hacking

Esquire magazine's October 2008 cover has 2 E-Ink segmented displays on them. This is my attempts to make them be useful.

JQS5 - JQuery Simple Standards-Based Slide Show System

This is a very simple JQuery + Javascript Slide Show engine. It can turn HTML documents into a slideshow without additional markup.


Debian Boxification tool. For some reason, there are those who seem to think that making an icon of a box of software (huh?) makes it all official. This tool will do just that for almost any package in Debian.


This is a re-implementation of The original dots. Represent large numbers using single pixels. This version is written entirely in Javascript, without the need to refresh from a server.

Nokia n770 Hackery

Some tricks to make the n770 behave more like a proper, open Debian machine.

Retro Bluetooth Handset

An old Model 500 (similar, anyhow) handset modified to be a Bluetooth handset. Complete with an activation button and charging capabilities.

24h 12-at-the-top analog clock

This is a design for a 24-hour analog clock. It has noon at the top, unlike most traditional 24-hour analog clock faces. This includes both the face design and notes on how to build a real one (with photos of the one I built).

Debian tweaks

Bits of configuration that I've collected over the years of my using Debian.

Ion window manager configuration

I use Ion for my window manager on my computers. It's a powerful keyboard-based interface that focuses of usability and efficiency.

connecting a Nokia 3650 phone to Debian GNU/Linux for GPRS via Bluetooth

Boy that's a lot of name dropping. But if you have all of the above, it should work pretty well.

Debian on a Fujitsu Lifebook P7000

I run Debian on my Fujitsu Lifebook P7010. These are some notes on the subject.

Wearable Computer

I've always wanted to play with wearable computers. Now that I have a long-lifed, small laptop I can. As HUDs and twiddlers are expensive, I'm focusing on using more every-day parts. USB is perfect for this application, as I can use a cheap USB gamepad for input (10 buttons and a directional is plenty of input). For output, audio is cheap and works well for many things.

Lojban projects

All my projects that relate to the Lojban language.

Disco Ball

I put together a disco ball setup. With it, i use XPLSISNJASP to make it spin and blink to the music.

Color Clock

One of my more favorite projects, as it's easy to implement. A clock that is not precise, but uses color moods to represent the time. 5 colored spheres (clockwise: yellow, green, blue, black, red) are used as references and arranged in a pentagon with the yellow sphere at the top. Yellow represents noon, midway between blue and black: midnight.

Many people ask me what the point is. Well, for one, all that's required to give a rough approximation of the time is a single color. That could, perhaps, be shown via a tri-colored LED, or a small patch of color on a web page, or even an accent color in a user interface. Of course, looking outside can give you a similar approximation, but there're clouds, daylight savings time, and not everyone is blessed to have windows at their job :-)

This project works great along with the RGB X-mas lights project to create an environment where you can ambiently know the time, without having access to natural sunlight.

The main inspiration for this project was a combination of the Myst books (the D'ni people have a clock that uses colors to represent time, albeit more precisely than this one), and the severe lack of a window in one of my consulting jobs. It just wasn't the same, looking at a clock and seeing a "13:02" and thinking it's time for lunch, as seeing that my background color starts fading into the dark greens.

Perl sources can be found here:

RGB X-mas lights

Computer-controlled x-mas lights, using software to dim them to specified levels, mixing colors in order to create other colors.

Miscellaneous Ideas

Used textbook network
Instaed of using a used textbook store or reselling for less than you bought it, have a system that distributes the cost of a book amongst the people who use it over time.


Disco Rdia! Bring your disco balls and roman candles!