Howliday 2010

I’ve been meaning to post about this year’s Howliday, lest its new tradition get lost in the haze of memory.

Seeing as all participants were people that happened to have beards, it was discovered that long have poor folk — who could not afford more convincing disguises — adopted beards at this time of year to fool the banshees.

Ladyfolk generally just tried their best.

One can conveniently piggyback on top of Movember to guarantee an optimal face bush for Howliday.

Now On the Desktop Team

I know I just recently posted about how awesome working in the OEM Services department was, but in the eternal quest for new challenges, I’ve moved over to the Desktop team at Canonical.

But before I get to that, one quick bonus story about a patch that I wrote in OEM Services that I really like. You know how when you plug in headphones with a standard audio jack that the audio immediately switches to headphones only? Nice feature right? Now plug in your USB headset. You’ll notice that it didn’t play through the headset: you have to go to the sound preferences tab and choose it as your output device, which is not intuitive. Same deal with bluetooth headsets.

From the user’s perspective, they should all work the same. They’re all just headsets. So for an OEM project, I wrote a pulseaudio module that tried to do just that: whenever a new pulseaudio sink or source became connected, it would switch to using it. It may need some polish (I’m no pulseaudio maintainer), but it works fine. I’d love to see it applied upstream.

Anyway, so I’m switching to the Desktop team to help work on Quickly and other application developer goodness. Speaking of which if you’re a developer, I have a session tomorrow all about release management as part of the App Developer Week: What’s the deal with time based vs feature based releases? How do I best use these Series and Milestone things in Launchpad? Find out tomorrow in #ubuntu-classroom at 14:00 UTC!

What I Do in OEM Services

I realize that I’ve never really blogged about my work at Canonical. Largely because I work in the OEM Services department, and we tend to be hush-hush. OEM means Original Equipment Manufacturer and just means a company that makes and sells computers with their own brand (like HP, Dell, Lenovo). OEM Services is the group that works with OEMs that are interested in preloading Ubuntu. Anyway, with everyone else on the planet talking about their work, it is a good time to share what I actually do and why.

I feel that making it easy to buy a machine with Linux preloaded is the most important task facing the wider FOSS community. This is how we grow the community, how we break into the mainstream.

But working with OEMs also brings more immediate benefits. When working on a specific project, both the OEM and Canonical will have QA resources dedicated to finding bad bugs or usability issues.

OEMs tend to approach QA with a subtly different eye than I do as an independent developer. They tend to try to avoid any situation where a customer will request support, as that costs money. Which means trying to avoid loss of functionality or letting the user shoot themselves in the foot.

But another thing that comes out of such attention is a focus on usability bugs. It feels really good to be able to spend time making a patch for such nits and send it upstream.

For example, here is a random sampling of stuff that I remember working on:

  • Back during the beginnings of a netbook version of Ubuntu, I helped write lots of little patches for applications to make them fit on smaller screens. OEMs would understandably hate it when a program wouldn’t fit on the screen because users wouldn’t be able to click on the dialog buttons and it just looked awful.
  • The dialog prompt for PolicyKit used to always display names like “Michael Terry,,,” which always struck me as an eyesore. It showed that way because it didn’t strip the commas from the information that getpwnam() returned.
  • When the user sets an unusual “how long to idle before blanking the screen” value, that value just didn’t show up at all in the GNOME Power Preferences dialog. This usually doesn’t come up in practice, but arose because an OEM wanted a 15 min delay, which is not a value already in the list.
  • The first time you opened rhythmbox and tried to import a folder, you got a scary “operation not supported” error message. Trying again worked fine. It was a simple fix, but one of those things that you rarely run into and if you do, just kind of shrug off and try again. But it’s nice to be able to fix such first-impressions papercuts.
  • A crash in pidgin if you used a zephyr account, enabled tzc, and didn’t have tzc installed. Not only did it crash pidgin, but X itself! This is one of my favorites because it shows just how useful an OEM’s QA approach to testing is. They really “test to break,” and exercise parts of the systems that don’t get much use. This crash was not triggered by a common use case, but had a really bad effect.

So none of these are earth-shattering fixes or cool new features. Mostly because by the time the software gets to me, it’s already as part of an Ubuntu release and thus mostly functional. I just tend to nibble around the edges. There’s a large untapped market of FOSS users that will never install an OS, and I get warm fuzzies by helping to reach them.

Japan!

In case you haven’t heard yet, Elaine and I are going to Japan in April! We’ll mostly stay around the Tokyo area for about 8 days.

We bought a Garmin handheld GPS device and Japanese maps (in English) for it. Hopefully by entering interesting points of interest beforehand, we can basically have a self-guided tours all over the place.

Suggestions for things to do or places to go are welcome! 🙂

Tranny Roadshow

My cousin Jamez runs a traveling performance art spectacular called the Tranny Roadshow.

Although the Tranny Roadshow is done entirely by transpeople, it is not exclusively for transpeople. It is a raucous evening of entertainment, open and accessible to people of all backgrounds. Most of us are experienced performers, and while our goals do include challenging people and making them think, our most important goals are to entertain them, make them laugh, and make them dance.

I’ve not yet been, but come January 14th, he’s bringing it to Jamaica Plain.

October Trip

Just an FYI, Elaine and I will be heading over to San Diego for a vacation in early October (1st to the 8th), back just in time for John and Amber’s wedding!

Let me know if you want me to bring you back some fish tacos! (apparently a local specialty) Also let me know if you’d like to adopt an adorable cat for a week. 🙂

Lazypalooza

Just a heads up, I’m going to be gone this weekend. Elaine and I are going to Maryland for a BBQ and to see Lazy, a friend of Elaine’s, off before he leaves on deployment across the ocean.

If anyone wants a bobble head Obama while I’m in the DC area, let me know.

Back from Chicago

I’m back from my week-long vacation to the windy city. It was very pleasant.

(A good measure of any vacation is how many bolobaau one eats. I ate… Let me see… 18? In other news, I’m fat now.)

Along the way, we stopped at the Niagara Falls. The contrast between the American side and the Canadian side of the falls was interesting. Not so much because of the falls (although the Canadian side did have a better view), but because of the surrounding cities.

The American side was like a ghost town. Only the casino, hotel, and about 10 Indian buffets were open. The rest of the town was all closed. Not much activity. In contrast, we later went over to the Canadian side (a quick jaunty to Toronto for a crazy good sushi tasting menu). It was hopping, with a ferris wheel thingy, two casinos, plenty of restaurants and lots of people walking around. ::shrug::

Another thing I liked about the trip was seeing that Chicago calls its ‘greater Chicago area’ Chicagoland. And the ‘greater Chicago area to the south’ is Chicago Southland. I love it. I’m going to start saying Bostonland.

So much driving (we rented a car to make the trip)! Elaine and I have done several road trips before, but this was our first time with audiobooks (usually I just make some music mix). Audiobooks were a huge win. It is so much easier to stay focused on a long driving slog when paying attention to a story. Made the time fly by.