Latest Fun Projects

Pittsburgh Railing

During our house renovations, we decided to open up part of one floor to create a 20' loft space above our living room. My office/workshop lies on the floor above, and so a large railing was needed. Given its visual prominence, we wanted something really unique, and so Amy and I welded our own railing. We decided on a Pittsburgh theme, with rivers, bridges, notable buildings and neighborhood styles represented.

Sculptural Welding

The further I got into my PhD, the more I realized I needed to bulk up on my fabrication skills before I left. The one area I had very limited exposure to was metal work. So in Fall 2010, I took a sculptural welding class at CMU with super-awesome Dee Briggs. So. Much. Fun. Even at 8:30am. And useful too - I've already made stuff for several research projects. As of 2014, I'm increasingly experimenting with mixed media sculptures.

Butler Building

After accepting faculty jobs at CMU, Amy and I began searching for a new home in Pittsburgh. We acquired the Butler Building as a shell in September 2013. It had been vacant for over a decade and had no electrical, plumbing, heating or interior walls. It was also a blank canvas to create the home of our dreams. With our contractor, Dan Essig and his awesome crew, we totally renovated the interior, taking approximately nine months.

XRDS: The ACM Magazine for Students

In August 2009, ACM asked me to become Editor-in-Chief of Crossroads, then an ill-defined student journal. Working with a talented international team, we totally reimagined and redesigned the periodical, relaunching as XRDS: ACM's Magazine for Students in May 2010. I stepped down in 2012, with new editors taking up the charge. The publication continues to be of highest quality and goes out to some 30,000 student members worldwide.

Block of History

The neat thing about living in a historic city, like Pittsburgh, is that every house has a story. In 2012, I set out to research our block and the five houses situated on its north side. My aim was to figure out who lived in each 100 years ago (in 1912) and what their story was. Amazingly, I was able to identify occupants for all of the houses and even compile several bios. I wrapped up the project as laser-cut plaques, which adorn our street to this day and are frequently read by pedestrians.

Board Light

Robert and I ran across a dumpster brimming with old equipment that the CMU physics department had thrown out. This was ancient stuff, mostly from the 70's and 80's - signal generators, ADCs, etc. One of the more interesting pieces was a mini-fridge-sized Fabritek Model 1070 Signal Averager (c. 1970). It was too big to keep in the lab in one piece, so we gutted it, extracting 512 bytes of magnetic core memory and a bunch of old school electronics boards. I turned the latter into a desk lamp.


Working with a local jewelry store that had a fabrication studio in their basement, I designed an engagement ring for Amy and a wedding band for myself. Working in CAD and communicating primarily by email, we hammered out final designs, which were ultimately CNC milled out of blocks of wax and cast using a lost-wax method. Both rings are one of kind! Amy's design was inspired by a wire ring that I had created and given to her in Costa Rica. My ring was partially inspired by a research project on static projectors - using mask pairs and a little sunlight, it can cast a shadow with our names.


We wanted our wedding to be a unique experience, both for us and our guests. The result was a unusual blend that might be best described as causal-exotic. Owing to our love of travel, our wedding took on an international vibe, drawing primarily on Middle Eastern and South East Asian motifs. Throw in hand-made beer, a frozen margarita machine, sparklers, participatory art projects, our favorite international dishes, a wonderful Moroccan instrumental group, and 120 of our best friends and family. It was a night to remember - we keep saying we should do it again!

Wedding Invitation Diorama

Inline with our wedding's DIY spirit, we made custom inserts that mailed out with our invitations. These were laser cut from a natural fiber, heavy paper stock. Following the pre-made paper scores, it can be folded up into litte wedding-themed diorama. We iterated through a bunch of designs, ultimately settling on a skipping couple, gazebo, trees and a Pittsburgh skyline.


ShadowColor is an interactive assistant for freehand drawing and coloration of human faces. I created the application for my final project in Professor Efros' excellent Computational Photography class. It is an extension of ShadowDraw by Lee et al. The idea is to provide a data-driven method for coloring images, including realistic gradients. The resulting application allows users to composite semi-realistic colorized faces based on sketched attributes, for example, long hair, big ears, and a mustache.

Pittsburgh Laser-Cut Map

Starting with a raw vector from OpenStreetMaps, I edited down a plain street map of Pittsburgh. Robert Xiao then hammed the file into a laser-cuttable form. The vector had to be simplified slightly; the original contained 77 thousand lines, which caused a buffer overrun in our laser cutter. It takes about 90 minutes to produce one sheet. The end result is awesome - almost snow-flake-like in its delicateness. You can even see CMU and Newell Simon Hall!

House Bar Taps

One of the first things we did upon purchasing our house was to install a bar. There are several great breweries in town, our favorite of which is East End Brewing. Used commercial tap handles are cheap and plentiful on eBay. I bought a few bulk lots, and refaced them with custom art and laser cut elements. So far, I've made handles for the house and my two housemates.


Brendan Kiu build this Kinect-driven, multitouch wall as part of his independent study with me in the Fall of 2011. Coupled with a projector, it provides a interactive area approximately 3.5x4.5 feet. As a demonstration application, Brendan built a small game: balls cascade from a portal near the top; users can draw lines with their fingers to direct balls into a basket, which moves to random locations. The project is currently setup in the HCI Institute Commons.

Bulb Assemblage

Inspired by a project I saw on a long time ago, I thought this would be the perfect "thinking" light above the coffee table in the DevLab. Really neat three-dimensional end result. Used a variety of bulb sizes and wattages (5 to 25W). Light output is very pleasant, though hard to capture with a camera! Total cost around $45.

Design+Build 2011

This year's Ph.D. orientation included a new "Design+Build" event. Among many possible projects, we settled on making a backlit acrylic wall peppered with digital photo frames, highlighting research and fun things. This was to go in the new HCI Institue "foyer" space. Over the course of two 6 hour sessions, Eric, Amy, Sauvik, Tawanna, Nesra and myself built six stand-alone columns that could be put together into a wall.

Leaded Glass

During my three months in Redmond, I hunted around for fabrication-centric classes at local studios and colleges. Dates were tough to align, but I eventually stumbled onto a leaded glass workshop (what most people would call "stained glass"). Surprisingly fun! After tackling a few traditional designs, I couldn't resist knocking out a few HCI inspired ones.

Metal Tessellation

To keep the creative juices flowing and decorate my office at MSR, I banged together some Home Depot art. Each is fabricated from a square of sheet metal, and folded recursively; backed with wood or tile. I also made a one-off from wire mesh, dipped in latex paint, and spray painted silver.

Circuit Table

Following completion of the new Gates building, offices in the HCI Institute got reshuffled. The DevLab moved into a wonderful new space on the ground floor of Newell SImon Hall. It took almost 3 months to properly move in. The huge motherboard walls we had constructed two years prior didn't really fit the space - but we didn't want to chuck them either. Scott Hudson took one for a partition in his office and one huge panel was tucked into a hall cubby. The smallest of the three was repurposed into an awesome table. A thick sheet of acrylic sits above the boards, floating on a series of clear spacers.

Aerial Photography

Zhiquan graciously took us flying a few times while he was clocking in flight-hours for his next pilots test. We took a few photos when we flew over our neighborhood, but nothing extensive. It later occurred to me that CMU would probably love some aerial shots of campus for marketing materials. I asked if they'd be willing to cover the plane rental. CMU agreed, so we took to the skies over Pittsburgh again. Armed with five cameras, Jason, Amy, Zhiquan (when not flying the plane) and I snapped a few hundred photos of campus, the city and various neighborhoods.

Exhaust Manifold Lights

I could feel the creative juices flowing as the Winter '09 semester drew to a close and the weather improved. I convinced Elyse head out with me into the Pennsylvania highlands and hit up a metal salvage operation. The place was awesome quite frankly! Huge piles of transmissions, flaming engine blocks, and the sound of cars being crushed! I managed to round up a number of particularly curious and rusty exhaust manifolds. Once back in the lab, Jason and I got to work wiring them up as funky lights.

Information Visualizations

I started tinkering with information visualization in 2006, during an internship at AT&T Labs. Although it was not my main research project, my mentor Brian Amento gave me a long leash. I enjoyed it, chiefly as a creative and aesthetic outlet for my otherwise straightforward computer science training. It grew into a hobby, and several projects have been widely distributed, appearing in over 40 books. These experiences, in part, pushed me towards Human-Computer Interaction, where I could fuse my interests in CS and design. I stopped making new visualizations when I started my PhD at Carnegie Mellon University.

Inhabited Web

I had this idea about a collaborative web application for many years. In short - the system embeds a small, simple visualization into web pages, next to the browser's scroll bar. Triangles are used to represent single users and their position on the current page (scroll position). Collectively, this allows you to see where people are congregating on a web page - perhaps next to a great deal, interesting news story, or funny video.

Rafting the Allegheny

After eyeing up rivers in the Pittsburgh area for almost a year, I was convinced a multi-day raft trip could be mounted successfully. After convincing Bryan Pendelton and Julia Schwarz to join me, we began to devise a river route, acquire permits, gather equipment, and construct a raft. Following months of preparation, we set out on our three-day adventure in mid August, 2008.


Back when I was interning at AT&T Labs, I had an idea for a collaborative online mosaic. I tried to implement it with applets on the frontend and a persistent java server behind the scenes. It was all too complicated and brittle (and slow) for such a simple idea, and so I shelved it. Time passed, AJAX matured, and I had met Julia, who was interning at HCII for the summer. Looking to flex her web programming muscles, I suggested the project.

Motherboard Walls

Our final contribution to the lab space was a three-month endeavor. It started after Aubrey and I built a motherboard collage to hang above my desk. Scott Hudson liked it so much, he asked us to produce several more for his lab (where a lot of electronics fabrication occurs). This kicked off a month-long motherboard buying extravaganza. By December, I had amassed about 150 lbs worth.


In a continuing quest to personalize our lab space, Aubrey and I set out to make things more homely with, well, a homemade light fixture. We found a nice chandelier on freecycle and spray painted over the brass with a sleek matte black. We took the covers and paper mached over the clear glass in two layers - first white, then red (dyed) on the bottom.

Ambient Globes

In an effort to decorate our lab space, Aubrey and I set out to create a fun ambient display. Each globe has a different lighting scheme and intended function. Red/Green for volume of unread emails, red/blue for outdoor temperature, and blue/yellow for time of day.

Color Naming Project

To shake off the winter grey, Stacey and I ran an online color-naming experiment. Each user was shown a random color and asked to type in a name. Instead of using the entire RGB spectrum (millions), we pruned the color set to 216 "web safe" colors. This helped ensure every color had many responses. We left it online for a week or so and collected 6,276 color responses. We then analyzed the results, and rendered them into a color-tagged infographic.

Masters Fun Projects

Virtual Marionette

Over the Spring 2006 semester, I worked with Lee Thompson and Andrew Chizhik to built a virtual marionette. There were two custom components in our system: the physical marionette controller and the software to animate the virtual puppet. Ultimately, the setup could be used for a collaborative, remote, virtual puppet show. Several users, each with their own controller, could direct a cast of puppets.


A RSS-powered, geo-located news reader. Many news sources prefix their stories with the location where the report was issued, for example "HONG KONG" or "LONDON." This is parsed out of the RSS feed and compared to a database of cities and countries. Once a match is found, latitude and longitude data is used to plot the story's location on the globe.

Abstract Physical Interfaces

I wanted to create a virtual puppet. The twist was that the creature did not move like a human, or perhaps not like anything on Earth. I wanted users to feel like a baby learning to walk for the first time.


During my summer at IBM Research in sunny San Jose, I ran across a bunch of discarded token ring to ethernet adaptors. At roughly the same time, late one night, we discovered the string "r0lgod" when viewing our project's binary as ASCII. Because we were in a giggly mood, we created rolgods!

Fun With Charges

The goal was to develop a simulation of "tiny things" for an exhibit at the New York Hall of Science. This was chosen because of the difficulty in building physical experiments that retain the properties of small objects, but allow user interaction (things like molecules or DNA). These obstacles were removed using a sophisticated, interactive projection system.


I started ceramics in high school and took it up again in university. I no longer have access to a studio, so for now, the hobby is on hold.

Undergraduate Fun Projects

CrossFire 3D

After Orion Lander, I felt it was time to move into OpenGL's 3D capabilities fully. I think ground textures are the lamest thing in modern games. We have all this fantastic hardware, and yet we can't render some decent blades of grass? I wanted to prove to myself that a field of grass could be created, and rendered in real time. I'm pretty happy with the result; it even sways in the wind.

Orion Lander

Orion Lander is based off the classic arcade game, Lunar Lander. The playerís ship must touch down safely on the planetís rocky surface. Subtle adjustments to the shipís trajectory and speed will be necessary to pilot to a suitable landing site. Due to limited fuel, they will not be able to thrust all the way. Players will instead have to use the low gravity environment and their momentum to traverse the terrain, dodging meteors along the way.

Osiris Massively Multiplayer Online RPG

As the Aurora MMORPG project slowly died, I was eager to find a partner to seriously tackle a MMO game. Hesh and I had been kicking the idea around for a long time, and even briefly worked on Aurora together. Hesh had wanted to do a proper old school RPG style MMO game. However, like my previous stabs at a MMORPG, it eventually fizzled out.

Motherboard Wall Project

I had wanted to fill a huge void on my wall, above my computer, for some time. I hunted around for some geeky posters, like one showing the structure of the internet or the java classes, but they were either impossible to get or expensive. A few months earlier, I had seen a large prototype motherboard mounted on a wall at my university, which looked really neat. I figured I could duplicate the look and make a really unique art piece for my room.

Universe/Aurora MMORPG

I've always been captivated with the idea of MMORPGs (Massively Multiplayer Online Role Playing Games). I thought it was about time to embark on my own programming feat, an ambitious one that would help me learn new skills, like BSD sockets and how to manage a large and complex project. Itís heavily based on a game that I thought would be the ultimate MMORPG, Escape Velocity, if they ever developed it.


Fire! is based on the classic "cannon" game genre. I can't remember any names, but I do remember wasting many hours of my childhood on a version that involved gorillas launching bananas at each other. I wanted a new CS project, and this seemed like a viable and interesting challenge.

High School Fun Projects

Trebuchet Version 2

With the success of our smaller trebuchet fresh on our minds, we set out to make the next version. At first we debated how tall it should be, eventually settling on 5 feet to make it easier to transport. I always had a love and knack for engineering. This new design would solve the biggest problem - a rickety frame.

Trebuchet Project

The chainmail hauberk was finished, but my desire for medieval projects was not. During the beginning of summer 2002, I started researching about medieval siege engines. Siege engines were used to pulverize castle walls into rubble. One of the most popular and effective designs was the trebuchet.

Chainmail Project

Following an interest in medieval Europe, I decided to start work on a chainmail shirt. I chose chainmail over other types of armor because of its relative simplicity. It didn't require special tools or skills, just lots of time. The primary unit of chainmail is a single ring. After reading a little online, I figured out how to make them.

Meteor Run

I set out to make my first truly graphical C++ program. I wanted to use SDL, as it had good graphics routines and wasn't too difficult to get started with. A week or two of tinkering yielded a robust sprite class, and this program, which I think is pretty cool.

Laptop-In-Car (LIC)

A project undertaken to boost my electrical engineering understanding during free time (during charges) at Curtis during 2001 summer. The project is to build an adapter that allows me to run my old PowerBook 140 (built 1991) in my car off the car battery. The cars battery ranges from 11-15V while the laptop requires 7.5V.

AP Biology Ameba RPG

I needed some extra credit in AP Biology, so when there was an opportunity to make a game (e.g. board game) that taught students biology, I jumped on my computer and started coding. I luckily recycled much of the engine from Sandak, but ended up adding a number of new features. It's not really a full project, but represented quite a time investment by completion.

Sandak Text Adventure RPG

Sandak was a text based role playing game I am worked on in high school. The game engine was pretty much feature complete, but over half the maps were never finished and the story, although developed, was never added to the game. It seemed sad to abandon it with only easy stuff remaining, but my interest waned as the challenge evaporated.

© Chris Harrison