[Portrait of Patrick] Patrick Reynolds

General

I am a software architect at BlueStripe Software, working mostly on the data collection bits in the company's Application Management tool, FactFinder. My work there is all about causality, asynchrony, performance measurement, and creative kernel development.

I was recently a postdoctoral associate in the Computer Science Department at Cornell University. I worked with Gün Sirer and Fred Schneider on device drivers and BGP security (tech report, poster) in the Nexus operating system.

I got my PhD at Duke University under the supervision of Amin Vahdat and Janet Wiener. I previously earned a Master's degree at Duke and a Bachelor's degree from the University of Virginia.

I live in Chapel Hill, NC with my wife Kristina. When I'm not busy working, I enjoy sailing, photography, hiking, skiing, cycling, and light woodworking. I maintain the Oracle of Bacon. I grew up in Charlottesville, VA.

Research

My areas of interest are distributed systems, computer networks, and operating systems. My most recent project was the Nexus trusted operating system, reference monitors for user-space drivers, and BGP security. Before that, I worked on distributed systems debugging and performance analysis (Pip and Project 5), peer-to-peer keyword searching, and wide-area available-bandwidth measurement.

Teaching

Publications

Graduate work

Work

Courses

Free software and documentation

Nearly all of the software I write, I share. I have written SET for nearly every programmable device I have owned, including Android, Linux PCs, Palm Pilots, Java-enabled (J2ME/MIDP) cell phones, and the TomTom One 130-S GPS. I regret that I am no longer able to distribute this code. Many fine physical and digital editions of the game can be found at setgame.com. Snapshots and Debian packages of my dissertation project, Pip, are available for download. I have written drivers for Quickcams and Dimera-based still cameras. I have written several other applications, scripts, and snippets, too; click here.

When I get a new device whose support for Linux is poorly documented, I document it. Here are HOWTOs for putting Debian GNU/Linux onto Asus M5N/S5N and HP/Compaq NC-6000 laptops. Here is a HOWTO for setting up the Hauppauge PVR-150 MPEG capture card with MythTV.