Interview with Havoc Pennington

Short URL:


I read a piece in which the author criticized the free software world for not being innovative enough; needless to say this angered me, so I decided to try and demonstrate that this is not the case. Over the next few weeks I’m going to post a series of e-mail interviews with developers who are driving forward the ideas and expectations of the computer industry as a whole, in new and exciting ways! This week’s interview is with Havoc Pennington, who’s currently working on a number of great projects related to the idea of an “online desktop": read on to find out more!

JR: Hey Havoc. To start, it would be great if you could introduce yourself to our readers and tell us a bit about your past work?

HP: I got into free software after reading the GNU Manifesto, which I found inside Emacs on the school servers in college. I worked on Debian documentation for a while (my computer at the time was too underpowered to compile software).

As I learned to program, I wrote a variety of useless and not-really-working applications, and contributed some of the more misguided bits of the original GNOME 1.0 libraries. After a couple years of messing around I had some kind of clue and Red Hat hired me to work on GNOME.

My first project that still survives today was GConf. Later I was part of the team working on GTK+ 2.0 (2.0 was an overhaul to bring GTK+ up to par with other modern toolkits). Later projects included the D-Bus cross-desktop IPC system and Metacity window manager.

Somewhere in there I started, which today hosts all sorts of projects that sit between the low-level kernel/libc layer and the GNOME/KDE desktop apps layers. I was also on the original board of the GNOME Foundation and helped organize that.

JR: What are your current projects?

HP: Mugshot is a project we started in order to learn more about users who aren’t using free software today, and to teach ourselves more about server-side and web technologies. It keeps track of what your friends are doing on a number of different sites such as Facebook, Amazon, Flickr, Twitter, Netflix, and so forth, and merges all the info together so you can see it in real time.

What we’re doing now is taking the knowledge and some of the code back from Mugshot to see how we can enhance GNOME and Linux. We’re also pulling in some stuff we’ve learned from the One Laptop Per Child project. The set of changes we’re thinking about for the Linux desktop we’re calling “online desktop".

The basic idea is that the world is changing to be much more about web apps and social/collaborative features enabled by the internet than it was a few years ago. If you look at the proverbial kids today their apps are web mail, instant messaging, and social networking.

In the business world too, you see things like Google Apps for Your Domain,, or QuickBooks Online. These online apps require no installation, backup, upgrades, or other hassles; and they can offer unique social and collaborative features.

Proprietary vendors Microsoft and Apple are also talking about “internet centrism" as the main roadmap for the next versions of their OSes. (Though we were going here before we learned of their plans, and I bet we’ll still do it better—for example, working with all the best-in-class services and sites you want to use, not just Microsoft’s Live services.)

The free software community has an opportunity to be on the leading edge and offer the best OS for what people really want to do on their computers today.

JR: Do you think there is a potential for free software apps to fill the shoes of GMail, Facebook, Flickr, etc., which Bigboard and Mugshot are going to link in with?

HP: Free software absolutely could do this, and in some cases there are successful sites that put free and open at the center of their mission, such as Wikipedia.

At the same time, many free software developers seem to have their head in the sand and are not even trying out the popular sites and apps, let alone developing free alternatives to them.

I also think there’s a problem in that licensing alone isn’t enough to define what would make a hosted site free or open. If you look at something like Wikipedia they had to create an open governance model as well, since the thing is inherently a single instance and is inherently data as much as it is code. Sure people can and do run MediaWiki themselves, but running the same software doesn’t make your site Wikipedia. You also need the data and the community surrounding Wikipedia.

So, as people are increasingly not running the software themselves, but using software hosted elsewhere—for them to continue to have the benefits of freedom may require some new guidelines and ideas about what’s important, beyond the free community’s traditional emphasis on licensing alone. For example, what kind of access to my data do I need to be able to move my data to another instance of the same service?

Ignoring the real advantages of centrally-hosted software is a head-in-the-sand approach and won’t work. Instead we need to figure out how to get those advantages while preserving freedom.

JR: What are your thoughts on other projects pursuing a similar track (for example, Gimmie or AWN/Affinity)? What do you think the best way forward for collaboration between these project is?

HP: Those projects have emphasized innovation in areas like switching between applications, which isn’t something we’re focused on at all for the online desktop direction. BigBoard can even co-exist with the GNOME panel (for now that’s the idea) and the main purpose of BigBoard is to be a place to stick the UI for showing your friends and their presence, your online calendar, etc.—all this connectivity to the web that we want to have.

I think the competition with Gimmie or AWN is mostly superficial—“it’s a dock/panel/sidebar type of thing"—but if you look at the details of what the projects are interested in doing and focusing on, they are complementary.

Which is good news, because it means we could, for example, combine Gimmie’s application switching model with stuff from BigBoard, or whatever.

In the end, these are all useful experiments and people who want to shut down trying new things in the name of designing the Grand Unified Single Solution from day one are just wrong. Choice is good and experiments are good. The real danger is lack of motion. And there’s no better way to get lack of motion than to insist on knowing everything up front.

JR: How do you see the concept of the online desktop developing in the future? Will it ever go as far as “distributed computing" with software and data held on servers, the desktops only being a thin client?

HP: The literal answer is maybe no, the client will have lots of logic in it so isn’t quite a thin client. But in spirit yes, I think the client ends up having much less “state" and you can effectively stop worrying about backups and easily access your stuff from any computer, because your data is on the server.

This is very close to reality already, if you use an online calendar, word processor, webmail, photo site, and so forth. For me the only things I can’t figure out how to keep online yet are my music collection and the assortment of PDF files I seem to end up with. For the PDF files, there’s even a hacky solution (email them to yourself), though not a good solution.

JR: Thanks for talking with me Havoc.



Mauro Bieg's picture

Ignoring the real advantages of centrally-hosted software is a head-in-the-sand approach and won’t work. Instead we need to figure out how to get those advantages while preserving freedom.

I think that's a very interesting and pressing issue.

First solution: Everybody's got his own server running 24/7 at home. Unfortunately, that's very expensive at the moment.

Second solution: Everybody holds all his data on his mobile phone. Unfortunately, this is technically not possible yet, but may come sooner than you expect.

The common third solution is relying on a company like Google which holds your data. Obviously you loose a substaintial amount of control here. But what would a company need to do to try to secure our freedoms anyway? If I think about it, these four points strike me first:

  • The servers should use free software.
  • The customer should always be able to download all his data in a useful and free format, in order to prevent vendor lock-in.
  • All the content published by the users of the service (like Blogs, flickr photos, etc) should be made availlable under a free license (or it should at least be an option)
  • And probably the most important but most difficult to achieve point: Private data must really be private. Neither the government, nor some cracker, nor any employee of the hosting company should be able to access my data.
  • We get into the weird situation where the server needs to run a software which prevents it's owners (i.e. the company) to access the data it holds. Only the processing software on the server, and the client machine should be able to decrypt the data. Every online service company operating with consumer data should come under pressure to prove us that they can't read our data that they are hosting. The only way to ensure this is that they are only running free software. Then, the source code can be examined and the public can decide how trustworthy the software is. But how do we know they are actually running the software they say they do?

    And however secure the software is, the data could theoretically still be read out of the RAM of the server. The only way to be entirely sure is to heavily encrypt your data before sending it to the hosting server. Then, the server can't process it any further, so it's reduced to a simple file server. But with some neat client applications, this might be an approach which proves as a viable path of the middle.

    I wonder what the future holds ready for us... and hope that those 800GB mobile phones (running Linux) with on-the-fly encryption and finger-print scanners soon arrive. ;-)

    Author information

    Jonathan Roberts's picture


    Currently a gap year student! I have a huge interest in Free Software which seems to keep growing. I run the Questions Please... podcast which can be found at On an unrelated note I'm reading theology at Exeter next year.