Today is my last day at Red Hat.

I’ve been here for almost fifteen years, and it’s been a heckuva ride. I’ve seen GNOME and the Linux desktop grow from from pretty minimal beginings to what it is today.

RHAD Labs logo
The beginning…

Looking back on it, I’m so proud of the work that the Red Hat desktop team has accomplished during this time. We absolutely moved the bar on what was possible and enabled so many things. So many technologies that are basic building blocks of the modern Linux desktop were incubated within this group. Many of the things that people take for granted didn’t start in a vacuum but started because someone stepped up to make it happen.  Just off the top of my head dbus, metacity, gtk2, aiglx, systemd, pulseaudio, pango, cairo, gconf, orbit, gio/gvfs, gnome-shell, hal, NetworkManager, evince, PolicyKit and so many more got their start here.  Along the way, we made lifelong friends and built communities around these projects, to the point where others have taken them far beyond their humble beginnings.  To me, that’s what makes Free Software so awesome, and the Free desktops in particular so special.


I am looking forward to being a part of the GNOME community in the future as a civilian, though I won’t be fixing any more TreeView bugs. (-:

The team is now in Christian Schaller’s capable hands and the engineering group at Red Hat is stronger than it has ever been. I’m looking forward to watching from the sidelines to see what they do next!


  • meta: It has been a long time since I’ve written anything. Being a father has taken its toll on my free time, and I got out of the habit of writing. As has happened every time I have hit a dry spell in the past, I count on the same thing to get me started up again. I change software! This time to the WordPress instance at The old, elisp-based version I borrowed from Federico wasn’t working out for me anymore. We will see if this one does any better. I’m counting on gnome-blog to help keep it updated too. Many thanks to jdub for helping me get the old entries imported.

    I have tried to keep the visual style of the old page — namely that of a ChangeLog entry. Nevertheless, I have made concessions to the modern web. ChangeLog entries should probably do the same. (-:

  • birthdays (GNOME): GNOME is now 10! Amazing. It has definitely been a long and strange trip. Dave’s recollection of Project Bob is a good memory. I’ll add my own:

    The first time I met most of the people working on GNOME (at that time) was in Linux Expo in 1998. gnome-0.20 was just about to be released. This version featured a newly written Wanda the fish applet to play with. There was a demo machine there with someone showing off the coolest feature in in GNOME at that time, namely embeddable drawers. People were dragging them into the panel, and creating crazy shapes and figures. Naturally, it was buggy like crazy. Sopwith was sitting on the machine next to it and had logged in remotely, surreptitiously hacking on the panel, trying to fix the bugs people were hitting. When the panel (or an application) would crash, he would quickly restart them, making it seem more stable than it was.

    Looking back on it, we had know idea of what we were getting ourselves into. I am sure if we knew back then what we know now, there is no way anyone would have started writing a desktop. It sure was a lot of fun though!

  • life (Eleanor): Eleanor has grown! She is sixteen months old, and is now spending her days running around the house, terrorizing the dog. She gets into a lot of mischief, but is very, very sweet. Zana and I don’t see her changing day by day, but just this weekend we had to put another box of clothes into the attic that she had outgrown. Her hair length is stuck somewhere in the middle of her back. It gets longer as she gets taller, but never quite seems to grow.
    Eleanor and Uncle Ed
    Eleanor and Uncle Ed

Sun 30 Apr 2006

  • life: Eleanor is now over a week old, and is absolutely perfect! She has even started to sleep a little longer at night. Unfortunately for us, night for her seems to be from eight PM through four AM. Still, she is developing well and is gaining weight.

  • httpd: Every time I touch mod_rewrite, I end up regretting it.

  • printing: I saw that John did an initial port of gedit to the new printing work in GTK+. It didn’t look too painful all things considering, and I hope that other projects will also take the time to try the port.

  • evince: I got a pretty enthusiastic proposal to do an evince SoC project. They wanted to tackle annotations and implement bookmarks, along the lines of the mockup Bryan and Diana did last summer. Hopefully it well be accepted.

  • /nick: jrb_afk is now known as jrb_tired

Tue 31 Jan 2006

  • life: It’s been too long since I’ve written something. The usual excuses apply. I basically have no time, anymore, for anything.

  • ridley: While not strictly ridley related, I was excited to see that Kris wrote a patch for the TreeView that let you select by rubberbanding. We are still not sure how this will interact with drag-and-drop in existing code, but it looks really promising.

    I also found James Cape’s eggcellent EggIconChooser widget in libegg. He did much of the work last summer, but I hadn’t seen it before. I don’t think the categories are right, but I love the embedded file chooser! I put up a little video of it being used here:

    Also, istanbul is pretty nice!

  • evince: I haven’t had much time to work on this lately. I did do some work on making poppler use gtk-doc over Christmas, and more recently added attachment support to the glib bindings. I haven’t added the necessary evince bits yet, though that should be easy.

    I am also realizing that I don’t have time to finish the transition code like I hoped I would. It’s a pity, as this was a pretty fun piece of code to write. If anyone wants to pick this up, let me know, and I’ll give them a run-down of what I started. It’s a great way to get involved with evince.

  • ekiga: I’m going to be the latest to jump on the ekiga bandwagon. They’ve done a really nice job of the latest release, and nailed the firewall interaction. I still have no idea how to pronounce the name, but they did a great thing with

  • rusty: My family’s dog passed away this weekend. He was a very sweet dog, and lived for almost seventeen years. We all miss him terribly.

Fri 01 Jul 2005

  • evince: Last time I wrote about evince, I posted a fake screenshot of it reading mail. While I thought it was obviously a cheesy composite and a pretty funny idea, some people did not. In retrospect, I should have spent more time in the gimp to make it less realistic — and thus more obviously a joke. I promised a few people that my next screenshot would be both real and of a cool feature. So, without further ado:

    This is evince with real text selection! Kristian and I worked hard over the last couple evenings to get this working. We were just doing a rectangular selection before which wasn’t nearly as good. This feels much more natural, and is a necessary feature for a modern PDF browser.

    It’s in CVS now, and requires poppler-HEAD built against cairo. We’ll be improving and fine tuning it over the next couple days. In particular, we think that we can make interactive dragging significantly faster than it is right now. Additionally, when you hit copy right now, you get the wrong text, and the old rectangular selection is totally broken. These should both be pretty easy to fix, though.

    The other important thing about this change is that Kristian refactored the poppler text code a lot. It made it trivial to add I-beam support, and will make doing things like A11Y much easier to write. I’m going to keep cleaning up the selection code in the foreseeable future, but if anyone has any interest in tackling ATK support for ev-view, I’d love to hear from them. It is a self-contained project and should be straightforward to write.

  • features: One of the reasons I’m really excited about getting selection into evince is that it’s a great new feature that doesn’t involve a menu item. I feel like the shell of evince is starting to get cluttered, and we probably need to take the time to clean it up a bit. This feature will be really useful to the user without touching the interface at all.

    A lot of the best features are the ones you don’t notice.

  • hardware: I’ve had a really bad couple days. My sidekick crashed twice, and the harddrive on my desktop died destroying some pictures that I’d recently taken. My wireless access point has been flaky too, and being moved hasn’t helped.

    I’ve been increasingly unhappy with the web-hosting I’ve gotten at, too. They do fine for what they are, but I don’t really want to put all my photos, etc. on that site at their current prices.

    One thing I miss about my old house in North Carolina is that I was able to get Speakeasy DSL service with a static IP. I’m stuck with a cable modem at my new place, and thus can’t reliably host services. I’ve been giving some thought to trying to put together a co-op of sorts, where I buy a server with a few others and host it at a colo. After the initial capital outlay, it seems to be competitive in price to most web-hosting services, and I’d have much more control over the box. We’d also be able to provide a lot more diskspace than most web-hosting people.

    I’m not completely convinced this is wise, as it’s one more box for me maintain, and it is a bit more expensive. I also need to find a few friends to do this with.

  • life: Zana keeps beating me at darts. It must be the shoes.

Wed 27 Apr 2005

  • life: I finally naturalized.

    As of two weeks ago, I’m an American citizen. It has been long overdue, and was a hectic process. It culminated in a six hour ceremony — or at least, four and a half hours of waiting followed by a thirty minute swearing-in process. All-in-all, it was a small price to pay for three years of waiting, filling out forms and dealing with the INS.

    I’m very excited about the whole thing. On one hand, I’ve always felt like an American, as my British Citizenship was primarily an accident of birth. On the other hand, I have wanted to vote for a long time, and I finally will get that opportunity.

    After the ceremony, Zana and I went walking through Boston. We stopped by the Boston Public Library and looked inside Trinity Church. I acquired a BPL card, and we hung out in the records room for a while, browsing through strange books. We also went (unsuccessfully) shopping for tea pots.

  • basement: As spring is finally here, Zana and I spent the weekend cleaning up the basement. There’s a lot more work to be done, but it’s much more open than before. Zana also bought a dart board cabinet and two sets of flights as a naturalization present. I hung them up in the basement and we played a few rounds of Cricket. The flights were a Union Jack and American Flag themed, and somewhat ominously, I threw much better with the Union Jack flights.

  • evince: As Bryan mentioned earlier, I finally landed the continuous and dual scrolling modes for evince. We’re getting a lot of really nice patches from other contributors now, and it’s hard to keep up with them. Selection is still broken, but we’re working through a lot of the kinks that the scrolling introduced. When we’re back to feature parity, we are going to make a pretty awesome release. I’m looking forward to working on a presentation mode next. That is going to be fun to write.

  • GUADEC: I bought my tickets to GUADEC this week. Unfortunately, the Red Hat summit overlaps with the end of GUADEC meaning that I’ll have to leave a little bit earlier than I’d like. I’m especially sad that I’m going to miss Dan Kuznetsky’s talk — I imagine that he’d have a lot of interesting things to say.

  • yarrr: arrr…

Mon 23 Aug 2004

  • life: It was a nice day today, so I did what I always seem to do on such nice days; I huddled in the basement fiddling with firewall rules.

  • car: I took my Saturn in to the dealership to get its 100,000 mile service. It was the first time in a while that I’ve stayed in the dealership for the duration of the service, instead of getting a ride. They now have wireless network support, which is a nice bonus. However, the bowl of jelly donuts and bananas is now gone. I’m not sure which I’d prefer.

  • crossword: We finished the Saturday prize puzzle! We’re definitely improving.

Tue 18 May 2004

  • life: My grandfather passed away last weekend. He had suffered from Alzheimers for the past eight years, and the end of his life was very sad to watch. I went to Wales for the funeral over the weekend.

    He was eighty eight.

Fri 30 Apr 2004

  • life: …and now, Zana I have been married for four years. It has been a wonderful time, and I wouldn’t give them up for anything. To celebrate, we went out for sushi followed by a trip to the bookstore for coffee and cheesecake. We enjoyed just sitting there, chatting and flipping through some books.

  • music (later): My attempts to add a CD to Zana’s rhythmbox has crashed it horribly. Grr…