Here we are, just a matter of weeks away from the Ubuntu 12.04 release on 26th April 2012, and what a cycle it has been.
Ubuntu 12.04 is a release that has been talked about within the Ubuntu community for quite some time. It marks our next Long Term Support (LTS) release, an important milestone for Ubuntu deployment in business, education and elsewhere, and an important checkpoint in delivering precision and quality in Ubuntu.
Unlike previous LTS releases, Ubuntu 12.04 had a different history leading to it. In it’s preceding releases we had brought Unity in as the default desktop shell, and there had been some consternation about the design and quality of Unity and other elements of Ubuntu. Some of this criticism was deserved, and some was not. Throughout the 11.04 and 11.10 releases we were trying to get a balance in something that has always challenged software; the balance of innovation and quality.
While Unity was a disruptive technology, I believe it was important for the future of Ubuntu. The introduction of Unity was not just a new software component, it was an evolution of of the Ubuntu ethos: Linux For Human Beings.
Eyes On The Prize
I see a lot of talk in our wider community about Free Software and the various ethical opinions of it. I am sure you folks have seen the discussions too, debating the freeness of this license verses that one, the freeness of Ubuntu One, the freeness of various kernel components, where Ubuntu stacks up compared to other distributions in terms of these software freedoms and more. There are then the debates about what being a good Free Software citizen means, whether we refer to ‘Linux’ enough on our website, how much upstream development Canonical contributes, whether we work on existing upstreams, and the rationale around why we would dare to challenge the norm with such contributions as Unity.
These are all valuable debates, and if Linux and Free Software is your hobby they can be an entertaining way to spend an evening.
This is how I like to spend an evening.
Speaking personally, I think these debates sometimes dwell too much on which nuts and bolts we are using rather than how we build a more effective machine. They are important and valuable discussions, and they often do improve the Free Software machine, but sometimes they get a little too introspective and shoe-gazey. What really interests me and what was my primary attraction to Free Software when I first got involved in 1998 is how a collaborative community and Free Software can break down the digital divide and open up technology for everyone.
I think we would all agree that this is an important goal, but for this to happen our technology needs to be usable and accessible to all. Many of the core Ubuntu values speak to this; Ubuntu available freely, in your language, and available to all users regardless of disability. We don’t make technology accessible to all by just making great software though. We need to create great and memorable experiences that empower our users.
Traditionally the Free Software development model has been succinctly described as scratching your own itch. This approach works well: if you have the technical chops and want to see your computer work in a certain way to meet your needs, you can get the Free Software code and adjust it to work for you and deliver your requirements. If you then contribute your work to others, everyone benefits. Winner.
Sometimes the fruits of my sharing are not really worth sharing.
The challenge with the scratch your own itch philosophy is that it can sometimes produce fairly one-dimensional software that purely meets the needs of those who created it. As a part-time developer myself, I always start out writing programs that meet my own needs. As my programs mature though, the greatest improvements in my software has been when others have challenged the presumptions that I made as I created the software to meet my own needs. It helps my software grow, be more accessible, and more interesting to people not like me, and that is tremendously rewarding.
When Ubuntu was founded, one of it’s core principles was to build something that just works. As a vision, I believe that the introduction of the various Unity components, the messaging menu, notify-osd, application indicators etc, continued this philosophy. The goal was to build a simple, easy to use, elegant, Free Software Operating System that continues the evolution of Linux For Human Beings.
Of course, while the vision and design was evolving, there was both a technical and cultural chasm that we needed to cross. From a technical perspective Unity suffered from various quality issues; first performance, then stability, and finally rubbing off the rough edges in the design. From a cultural perspective the move to Unity was controversial. While it excited many, it also alienated some members of our community who felt uncomfortable with Ubuntu heading in this direction. I place no judgment or criticism at the feet of any of these folks; everyone has their own Free Software vision and story to tell, and we can’t please all the people all the time. I am confident we are now over the most challenging aspects of this cultural adjustment.
Now this brings us to 12.04. Before this cycle kicked off we started making significant plans around meeting our quality responsibilities. Together we restructured QA in the Ubuntu Engineering team in Canonical, hired Nick Skaggs to grow our QA community, put in place acceptance criteria, built automated testing farms, developed manual testing plans for different milestones, and various other efforts. I believe that you can feel the quality in 12.04 far more than in the last few releases, and we are not finished yet. 12.10 is going to see more and more focus on quality and to ensure Ubuntu delivers a rock solid experience.
Going back to 1998 when I first got involved in Free Software, I always dreamed of the potential of a Free Software experience that is simple and effective to use by everyone.
Me in 1998. Sorry.
Spin forward to 2012 and I believe that Ubuntu 12.04 is shaping up to be a solid contender in continuing to break down the digital divide and bring a stable, simple, effective, and powerful experience for everyone, whether you are Martin Pitt (Ubuntu super-hero) or Martin Bacon (my brother who doesn’t care about his computer, just the experiences it can deliver).
Of course, Ubuntu 12.04 is not perfect; nothing is. There will be some bugs, and there will be some things that won’t please some users. Despite some of these elements though I do feel it offers a wonderfully integrated, slick, and fun experience. Sometimes I think it is important to just take a step back and look at what we created.
…and we as a community really came together to create Ubuntu 12.04. Whether you fixed bugs in packages, created features, filed bugs, translated Ubuntu, contributed art and design input, supported our users on the Ubuntu Forums and Ask Ubuntu, wrote documentation for the features, contributed news to our various websites, introduced Ubuntu to members of your local community or anything else, you should feel as proud as I do about Ubuntu 12.04 and how it is shaping up.
Thankyou to every one of you for being part of Ubuntu; you make it a pleasure every day.