joe shaw

About the Author

Hi,

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

I grew up in Kent, Ohio and spent some time at the Ohio State University before moving to Boston in January, 2000. You can contact me by email or otherwise by clicking on the links to the right.

Workin’ for the man

I work at litl, a startup in Boston working on building hassle-free, maintenence-free internet computers, 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 I was a developer and maintainer of Beagle, a desktop search system built on top of Apache’s Lucene indexer. Beagle has an impressive list of supported software, and can integrate nicely into the user’s desktop experience. It’s included in many 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 Copyright

All the text and photos on this page are Copyright 2000-2011 Joe Shaw, except where noted elsewhere (such as the blog’s theme). Please do not redistribute or publish text or photos without my permission. I am pretty reasonable about free reuse if asked.