When people ask me what I do, I frequently answer with “The same thing I would do if I didn’t need to work for a living”. I feel so lucky to have the opportunity to work full time on free software, and as I love to describe it, “helping to make the world a better place”. I am just a small part in the effort to make free software common place, and I am proud to do my part.
Enough with the feel good stuff… What do I “really” do?
My role with Ubuntu is described as an Integration Engineer, what the heck does that mean? Glad you asked, I work on the Ubuntu Desktop team, to help integrate the amazing work going on in the Design, Desktop Experience, and Ubuntu One teams into Ubuntu. I help package their software, distribute updates, and advise and assist with design/architecture as it applies to how the software will be consumed by the user. I care very much about how new features will affect existing and new users and how they will discover the new features.
As you can probably imagine, this is a lot of fun for someone like me. I get to play around with new stuff that isn’t ready for the distro yet, helping out with testing and figuring out how it impacts our users. Being a naturally born tinkerer, this is simply an awesome experience for me.
I also drive the Social from the start initiative in Ubuntu, trying to bring social experiences closer to the desktop, making the integration of their daily computer usage and their social life feel more natural. I have very strong beliefs about web technologies and experiences, buy me a beer sometime and I can rant for a while. Long story short, to provide the best possible experiences we need to remove the need to use the browser. I don’t hate the browser, we can’t live without it. But the best way to interact with your friends on social networks needs to be more contextual. For example, you see a friend posted some new photos in an album. You should be able to view that album in your local photo album viewer, as well as tag friends and comment on photos. Why not do it in the browser you ask?
- Your browser probably already has a dozen tabs open doing anything from shopping for new shoes to making a reservation for dinner this weekend. Do you really need another tab viewing photos? What does that have to do with anything else your doing in that browser session?
- Perhaps your viewing photos of a friend’s kid’s first birthday party, you might want to view photos of your own child’s first birthday to reminisce.
Trying to make this possible, I spend as much time as I can contributing to Gwibber, trying to generalise as much as I can to make it a desktop service that can be easily used by any application. Gwibber is a natural fit for this, since it aggregates multiple services, which is key to pulling this all together as a central service to handle this for the user. Gwibber is also a great upstream project to contribute to, lead by the always awesome Ryan Paul. He’s very open to my ideas, and easy to work with. At the beginning of each development cycle I get to brainstorm ideas with him and figure out how I can best contribute to making the road map a reality.
For someone like me, it is pretty easy to have fuzzy lines between what I do during my day job and what I do just for fun. In the evenings or over weekends, when I am not off hanging out with the family, I usually end up hacking on Gwibber or libgwibber for fun.