Nick Welch · résumé

Greetings Earthlings! Welcome to my home page on the world wide web. Established 2002.

Hobby Projects, Experiments, and Misadventures



A new fence for the yard. Made with western red cedar.

Garden beds made from incense cedar slabs


Plywood dog crate with EPDM (rubber roofing) inner lining

Mini split heat pump for the basement. Mostly installed by me, except for the refrigerant work which was done by a licensed technician.


I dug a hole in the ground for a basement window. Would not recommend.

Paver driveway extension that doubles as a dry well for driveway runoff.

Simple 2x4/plywood scaffold for painting the gable end siding.


Urbanite path made from salvaged chunks of the old patio slab.

A new dinner table, made from ambrosia maple.


Cubbies for coats, hats, gloves, etc.


Juice Informant, a home energy monitoring tool, built with Python, Raspberry Pi, and an IR light sensor.

An experiment with GE's green bean board: A small node.js app to set a Geospring water heater to use different modes/temperatures according to a timer.

DIY restoration of our 1950 house's exterior: Removing vinyl siding, restoring cedar shingles, trimming and waterproofing windows.


Manually demolished a patio slab that was directing rain runoff into our basement.

Custom LiFePo battery pack for some bicycle lights.


Fund Stew, a data visualization tool for index fund holdings.
Binary tree layout for D3's treemap visualization.
DIY whole house fan for quickly cooling the house on mild evenings without AC.

A dual compost bin.


Portland Things, an aggregator for local blogs and feeds. Built using Python and Tornado's async HTTP client.
Multi-day fare optimizer for Portland public transit, built in JavaScript.


The low-car subreddit, a reddit community I started about reducing car use in favor of more sustainable transportation.
Elf, a tiny computer case made of laser-cut bamboo.
htpicker, a home theater frontend app for Linux machines.


Markovio, a random Super Mario Bros. level generator using a Markov chain algorithm.


mpris-remote, a command-line tool for controlling media players.
Corn, a small music playing daemon.


A nostalgic discussion of strategies for the Super Nintendo version of Sim City.


TinyWM, the tiniest window manager ever.
Whimsy, a highly programmable window manager written in Python.
py-libmpdclient2, a Python library for controlling MPD (Music Player Daemon).


Spook, a window manager written in C++.


Linux Format manazine article about Kahakai, a window manager I was hacking on at the time with a few other people.
pymp, a python music player.
thump, another python music player.


McData, my first attempt at creating open source software. I can't believe Freshmeat still has it. It's a crude blog engine written in PHP. The name is inspired by my employment at McDonald's around this time. I come from humble beginnings.
McPics, a small image gallery written in PHP.

The Junk Drawer

Older website detritus

Nick Welch <> · github