Portfolio

Here you will find links to some of the code I have written on my own.

My Source Code

I am self-hosting most of my current projects with Mercurial. My older projects tend to be hosted on my Github repository.

Simple Resizer

Simple Resizer is an Android app that allows one to downsample, rotate, and strip metadata from photos and other images on an Android device. More information about Simple Resizer is available here.

ClipMan

ClipMan is a simple, portable clipboard manager, with one special feature that I long wished for and which I find particularly useful.

Koosah

Note: Temporarily out of service until I can safely get access to the remote receiver site.

Koosah.info is a web site I developed which displays real-time upper atmospheric weather observations (as recorded by commercial aircraft) in the Seattle area. Such observations are automatically relayed to the ground using the ACARS protocol on VHF radio frequencies.

The observations are encoded but not encrypted, i.e. they take the form of terse strings of letters and numbers which serve the purpose of reducing the number of bytes it takes to transmit such information, the ACARS protocol being limited in both data transmission rate and how much data per packet it can send. The coding varies from airline to airline, and I have reverse-engineered it for a number of the most common airlines that serve Seattle-Tacoma International Airport.

The Jacarsdec program uses a computer’s sound card to decode the ACARS packets via a software modem. I based it on non-portable C code used to decode ACARS on Linux, and wrote it because the world needed a portable, cross-platform ACARS decoder (all the decoders I could find were locked to one operating system only, typically Windows). Jacarsdec is written in Java and thus should run anywhere Java runs where a sound card that can sample at 44.1 kHz is present.

The data are sent by Jacarsdec to a web site running the WxAloftApi webapp, which receives the information from Jacarsdec. The WxAloftUi webapp then displays the information to anyone with a web browser. There is an interactive, JavaScript-based map, an interactive map coded entirely on the server side using no JavaScript at all (useful on mobile devices), and a text-based tabular display available.

The about page on Koosah provides more information about that site.