About the Author

Hi,

My name is Joe Shaw, and I’m a software developer living in Cambridge, MA with my wife Brette and son Elliot.

Elsewhere on the web:

I grew up in Kent, Ohio and went to college at the Ohio State University for a couple of years, but I’ve lived in Boston since January, 2000. You can email me by clicking on the “Email” link above.

Workin’ for the man

I work at litl, a small startup in Boston working on building a new kind of internet computer for the home, focusing on usability and simplicity. I am on the software team there, which in a small company like this means I work on pretty much everything relating to our own, novel, Linux-based operating system.

From November 2007 to December 2009 I worked at ITA Software, a company specializing in solving problems in the airline and travel industry. I worked on a team that built infrastructure to help run and manage the server farms that hosted the company’s software.

Before that, I worked at Ximian, a startup focused on developing Linux desktop software and software management systems. In August 2003, Ximian was acquired by Novell, where we continued making the Linux desktop rock. I joined Ximian in January 2000 and left Novell in November 2007.

Software I have worked on

I caught the Linux and open source bug as a teenager and have hacked on a bunch of things over the years. Among them:

I’ve been a user and developer of the GNOME and Mono projects since their inception. I co-authored the first draft of the GNOME Foundation Charter with Nat Friedman.

For a few years now, I’ve been one of the primary developers and maintainers of Beagle, a desktop search system built on top of Apache’s Lucene indexer. Today Beagle has an impressive list of supported software, and can integrate nicely into the user’s desktop experience. It’s included in most Linux distributions.

Dashboard was a project I worked on with Nat and others in the summer of 2003. The idea was to show information related to what the user was doing at the time. The implementation solely used chaining of information — an instant messenger buddy name was looked up in the address book, for example, and then emails, blog posts, etc. by that person were displayed — which worked surprisingly well although it was a rather naïve implementation. Applying some machine learning to this problem would make it a lot more useful, I think. It lives on in a reimplementation found here. There is also a similar project for Mac OS, called Shelf.

I was an early contributor to HAL, the device discovery and enumeration system built on top of D-Bus. I did a lot of work on the underlying architecture of the system, introducing “callouts”, porting it to use glib, and wrote the first implementations of the Firewire and printer backends, among others.

Project Utopia was an effort Robert Love and I worked on in late 2003 and early 2004 to make hardware “Just Work” on Linux. This was more an advocacy effort with some proof-of-concept code to tie together technology that was just becoming functional — things like kernel uevents, udev, and HAL — with higher level desktop components. Robert wrote gnome-volume-manager, and I did some printer autoconfiguration work among other things.

Netapplet was a simple GNOME applet for switching wireless networks. Today NetworkManager provides that functionality and has far surpassed Netapplet’s abilities.

Red Carpet was a software management system for Linux. Initially it served simply to install software and updates in Ximian’s Desktop product. Over time it changed focus to providing centralized management for enterprises and their hundreds or thousands of machines. I was an architect and contributor to just about every piece of the client-side code, including the packaging systems (both RPM and dpkg), the dependency resolver, the daemon which handled XML-RPC requests, the command-line and graphical user interfaces, and everything in between. Red Carpet went away as a product when it was swallowed up into Novell’s ZenWorks product, but the source code lives on and still gets a little work on it from time to time.

Achtung was a presentation program for GNOME, and the first real open source project I worked on. It was functional enough that I and a few others gave some talks using it, but never generally useful. Check out this screenshot of it embedding itself into Gnumeric, the spreadsheet app, circa 2000.

In the mid-90s I ran a series of MOOs called StarMOO. Mine were more games with role-playing than social environments like LambdaMOO.

Content and Copyrights

All the text and photos on this page are Copyright 2000-2010 Joe Shaw, except where noted elsewhere (such as the blog’s theme). Please do not redistribute or publish text or photos without my permission. This has especially been a problem with photos. If you would like to use a photo, please email me. With a few exceptions, I am pretty reasonable about free reuse if asked.