This is not the end of capitalism

Tuesday, November 4th, 2008

Some of the comments on my last post on the economic unwinding of 2008 suggested that people think we are witnessing the end of capitalism and the beginning of a new socialist era.

I certainly hope not.

I think a world without regulated capitalism would be a bleak one indeed. I had the great privilege to spend a year living in Russia in 2001/2002, and the visible evidence of the destruction wrought by central planning was still very much present. We are all ultimately human, with human failings, whether we work for a state planning agency or a private company, and those failings have consequences either way. To think that moving all private enterprise into state hands will somehow create a panacea of efficiency and sustainability is to ignore the stark lessons of the 20th century.

The leaders and decision makers in a centrally-planned economy are just as fallible as those in a capitalist one - they would probably be the same people! But state enterprises lack the forces of evolution that apply in a capitalist economy - state enterprises are rarely if ever allowed to fail. And hence bad ideas are perpetuated indefinitely, and an economy becomes dysfunctional to the point of systemic collapse. It is the fact that private enterprises fail which keeps industries vibrant. The tension between the imperative to innovate and the consequences of failure drives capitalist economies to evolve quickly. Despite all of the nasty consequences that we have seen, and those we have yet to see, of capitalism gone wrong, I am still firmly of the view that society must tap into its capitalist strengths if it wants to move forward.

But I chose my words carefully when I said “regulated capitalism”. I used to be a fan of Adam Smith’s invisible hand, and great admirer of Ayn Rand’s vision. Now, I feel differently. Left to it’s own devices, the market will tend to reinforce the position of those who were successful in the past, at the exclusion of those who might create future successes. We see evidence of this all the time. The heavyweights that define an industry tend to do everything in their power to prevent innovation from changing the rules that enrich them.

A classic example of that is the RIAA’s behaviour - in the name of “saving the music industry” they have spent the past ten years desperately trying to keep it in the analog era to save their members, with DRM and morally unjustifiable special-interest lobbying around copyright rules that affect the whole of society.

Similarly, patent rules tend to evolve to suit the companies that hold many patents, rather than the people who might generate the NEXT set of innovative ideas. Of course, the lobbying is dressed up in language that describes it as being “in the interests of innovation”, but at heart it is really aimed at preserving the privileged position of the incumbent.

In South Africa, the incumbent monopoly telco, which was a state enterprise until it was partially privatized in 1996, has systematically delayed, interfered, challenged and obstructed the natural process of deregulation and the creation of a healthy competitive sector. Private interests act in their own interest, by definition, so powerful private interests tend to drive the system in ways that make THEM healthier rather than ways that make society healthier.

Left to their own devices, private companies will tend to gobble one another up, and create monopolies. Those monopolies will then undermine every potential new entrant, using whatever tactics they can dream up, from FUD to lobbying to thuggery.

So, I’m a fan of regulated capitalism.

We need regulation to ensure that society’s broader needs, like environmental sustainability, are met while private companies pursue their profits. We also need regulation to ensure that those who manage national and international infrastructure, whether it’s railways or power stations or financial systems, don’t cook the books in a way that lets them declare fat profits and fatter bonuses while driving those systems into crisis.

But effective regulation is not the same as state management and supervision. I would much rather have private companies managing power stations competitively, than state agencies doing so as part of a complacent government monopoly.

Good regulation is very hard. Over the years I’ve interacted with a few different regulatory authorities, and I sympathise with the problems they encounter.

First, to be an effective regulator, you need superb talent. And for that you need to pay - talent follows the money and the lights, whether we like it or not, so to design a system on other assumptions is to design it for failure. My ideal regulator is an insightful genius working for the common good, but since I’m never likely to meet that person, a practical goal is to encourage regulators to be small but very well funded, with key salaries and performance measures that are just behind the industries they are supposed to regulate. Regulators must be able to be fired - no sense in offering someone a private sector salary and public sector accountability. Unfortunately, most regulators end up going the other way, hiring more and more people of average competence, that they become both expensive and ineffective.

Second, a great regulator needs to be independent. You’re the guy who tells people to stop doing what will hurt society; it’s very hard to do that to your friends. A regulatory job is a lonely job, which is why you hear so many stories of regulators being wined and dined by the industries they regulate only to make sure they don’t look too hard in the back room. A great regulator needs to know a lot about an industry, but be independent of that industry. Again, my ideal is someone who has made a good living in a sector, knows it backwards, can justify their high price, but wants to make a contribution to society.

Third, a great regulator needs to have teeth and muscle. It has been very frustrating for me to watch the South African telecomms regulator get tied up in court by Telkom, and stymied by government department inadequacy. Regulators need to be able to drive things forward, they need to be able to change the way companies behave, and they cannot rely on moral suasion to do so.

And fourth, a regulator has to make very tough decisions about innovation, which amount to venture capital decisions - to make them well, you have to be able to tell the future. For example, when an industry changes, as all industries change, how should the rules evolve? When a new need for society is identified, like the need to address climate change early and systemically, how should the rules evolve? Regulators need to move forward as fast as the industries they regulate, and they need to make decisions about things we don’t yet understand. And even when you regulate, you may not be able to stop an impending crisis. It’s very easy to criticize Greenspan for his light touch regulation on hedge funds and derivatives today, but it’s not at all clear to me that regulation would have made a difference, I think it would simply have moved the shadow global financial system offshore.

So regulation is extremely difficult, but also very much worth investing in if you are trying to run a healthy, vibrant, capitalist society.

Coming back to the original suggestion that sparked this blog - I’m sure we will see a lot of failed capitalists in the future. Hell, I might join their ranks, I wouldn’t be the first ;-). But that doesn’t spell the end of capitalism, only the opportunity to start again - smarter.

With Intrepid on track to hit the wires today I thought I’d blog a little on the process we followed in designing the new user switcher, presence manager and session management experience, and lessons learned along the way. Ted has been blogging about the work he did, and it’s been mentioned in a couple of different forums (briefly earning the memorable title “the new hotness”), but since it’s one of the first pieces of work to go through the user experience design process within Canonical I thought it would be interesting to write it up.

Here is a screenshot of the work itself in action:

New FUSA applet allows you to manage your presence setting, as well as switch to a guest or other user, and logout

New FUSA applet allows you to mange your presence setting, as well as switch to a guest or other user, and logout

In one of the first user experience sessions, we looked in more detail at the way people “stop working”. We thought it interesting to try and group those actions together in a way which would feel natural to users.

We have already done some work in Ubuntu around this - for a long time we have had a button in the top-right corner of the panel which brought up a system modal dialog that gave you the usual “end your session” options of logout, restart, shutdown, hibernate, suspend and switch user. That patch was always a bit controversial and had not been accepted upstream, so we looked at ways to solve the problem differently.

We decided to use the top-right location, because it’s one of the key places in the screen that’s quick and easy to get to (you can throw your mouse into a corner of the screen very easily and accurately) and because there was a strong precedent in the old Ubuntu logout button.

One key insight was that we wanted to make “switching user” less an exercise in guesswork and more direct - we wanted to let people switch directly to the specific user they were interested in rather than have an intermediate step where they login as that other user. So we started with the Fast User Switcher applet, or FUSA, as a base fr the design. Another key idea that emerged was that we wanted to integrate the “presence setting” into the same menu, because “going offline” or “I’m busy” are similar state-of-mind-and-work decisions to “log me off the system” or “shut down”.

Menu order
We discussed at length the right order for the menu items. On the one hand, putting the “other users” at the top of the menu would mean that all the user names - yours and the ones you can switch to - would appear “in the same place” at the top of the menu. On the other, we strongly felt that things that would be used more casually and more easily should be at the top. In the end we settled on putting the presence management options at the top (Available, Away, Busy, Offline). Right next to those (in the same set) we put the “Lock screen” option, because it feels like a presence setting more than a session management setting - you are saying “Away” more than anything else.

Ted did a lot of work to make the presence menu elements work with both Pidgin and Empathy because there was some uncertainty as to which would be used by default in the release. Since it all uses dbus, it should be straightforward to make it work with KDE IM clients too.

We then put the user switching options - including the Guest Session which is a cool new feature in Intrepid that as been widely blogged (check out the YouTube demo) and which uses AppArmor to enforce security.

And finally, the session termination options - log out, suspend, hibernate, restart and shutdown are at the bottom of the menu, because you’re only ever likely to use them once in a session, by definition!

Styling
The design of the menu is deliberately clean. We use very simple colours and shapes for the presence indicators, and replicate those colours and shapes in the actual GNOME panel so that you can see at a glance what your current presence setting is. Ted had to jump through some hoops, I think, to get the presence icons in the menu to line up with the current-presence-status indicator in the panel applet, but it worked out quite nicely. There’s some additional work to tighten up the layout which didn’t make it in time for the release but which might come in as a stable release update (SRU) or in Jaunty.

We decided not to put icons into the menu for each of the different statuses. Our design ethic is to aim for cleaner, less cluttered layouts with fewer icons and better choice of text. A couple of people have said that the menu looks “sparse” or “bare” but I think it sets the right direction and we’ll be continuing with this approach as we touch other parts of the system.

Upstream
This work was discussed at UDS in Prague with a number of members of the GNOME community. I was also very glad to see that there’s a lot of support for a tighter, simpler panel at the GNOME hackfest, an idea that we’ve championed. The FUSA applet itself is going through a bit of a transformation upstream as it’s been merged into the new GDM codebase and the old code - on which our work is based - is more or less EOL’d. But we’ll figure out how to update this work for Jaunty and hopefully it will be easier to get it upstreamed at that point.

In Jaunty, we’ll likely do some more work on the GNOME panel, building on the GNOME user experience discussions. There was a lot of discussion about locking down the panel more tightly, which we may pursue.

Integration into Ubuntu
We realised rather late in the Ubuntu cycle that we hadn’t thought much about packaging. The Ubuntu team had kindly offered to help package and integrate the applet but we definitely learned the value of getting the packaging done earlier rather than later. We had the applet in a PPA for testing between developers fairly early, but we underestimated the difference between that and actual integration into the release.

The Ubuntu team rallied to the cause and helped to smooth the upgrade process for new users, so that we can try to get everyone onto the same footing when they start out with Intrepid whether as a new install or an upgrade. There are some challenges there, because the panel is so customisable, and we had to think hard about how we could ensure there was a consistent experience for something as important as logging out or shutting down while at the same time trying not to stomp on the preferences of folks who have customised their panels. Similarly, we were concerned that people who run different versions of Ubuntu, or different distributions entirely, with the same home directory, would have problems if those other OS’s didn’t have the same version of FUSA - we weren’t really able to address that satisfactorily.

We also realised (DOH!) that we hadn’t thought all the way through the process of integration, because we hadn’t figured out what to do with the old System menu options. It turned out that those were in a state of flux, with the Ubuntu folks having to choose between the current GNOME default which everyone said would change, the patches for the likely NEXT GNOME approach, and the old Ubuntu approach. Ted whipped up some patches to make the GNOME panel more dynamic with its menus, so that we could remove the System menu logout options when people have the same menu in the FUSA applet, but that landed too late for inclusion into Intrepid final.

All in all, I think it’s a neat piece of work and hope other distro’s find it useful too. It’s just a teaser of the work we plan to do around the desktop experience. I’m looking forward to seeing everyone at UDS Jaunty in Mountain View in December, when we can talk about the next round! Thanks and well done to Ted, Martin, Scott, Sebastien and everyone else who helped to make this a reality.

Well done to Team Ubuntu (thousands of people across Ubuntu, Debian and upstreams) who make the magic in 8.10 possible. Happy Release Day everyone!

GNOME usability hackfest

Saturday, October 25th, 2008

The GNOME user experience hackfest in Boston was a great way to spend the worst week in Wall St history!

Though there wasn’t a lot of hacking, there was a LOT of discussion, and we covered a lot of ground. There were at least 7 Canonical folks there, so it was a bit of a mini-sprint and a nice opportunity to meet the team at the same time. We had great participation from a number of organisations and free spirits, there’s a widespread desire to see GNOME stay on the forefront of usability.

Neil Patel of Canonical did a few mockups to try and capture the spirit of what was discussed, but I think the most interesting piece wasn’t really possible to capture in a screenshot because it’s abstract and conceptual - file and content management. There’s a revolution coming as we throw out the old “files and folders” metaphor and leap to something new, and it would be phenomenal if free software were leading the way.

I was struck by the number of different ways this meme cropped up. We had superb presentations of “real life support problems” from a large-scale user of desktop Linux, and a persistent theme was “where the hell did that file just go?” People save an attachment they receive in email, and an hour later have no idea where to find it. They import a picture into F-spot and then have no idea how to attach it to an email. They download a PDF from the web, then want to read it offline and can’t remember where they put it. Someone else pointed out that most people find it easier to find something on the Internet - through Google - than they do on their hard drives.

The Codethink guys also showed off some prototype experience work with Wizbit, which is a single-file version control system that draws on both Git and Bazaar for ideas about how you do efficient, transparent versioning of a file for online and offline editing.

We need to rearchitect the experience of “working with your content”, and we need to do it in a way that will work with the web and shared content as easily as it does locally.

My biggest concern on this front is that it be done in a way that every desktop environment can embrace. We need a consistent experience across GNOME, KDE, OpenOffice and Firefox so that content can flow from app to app in a seamless fashion and the user’s expectations can be met no matter which app or environment they happen to use. If someone sends a file to me over Empathy, and I want to open it in Amarok, then I shouldn’t have to work with two completely different mental models of content storage. Similarly, if I’ve downloaded something from the web with Firefox, and want to edit it in OpenOffice, I shouldn’t have to be super-aware or super-smart to be able to connect the apps to the content.

So, IMO this is work that should be championed in a forum like FreeDesktop.org, where it can rise above some of the existing rivalries of desktop linux. There’s a good tradition of practical collaboration in that forum, and this is a great candidate for similar treatment.

At the end of the day, bling is less transformational than a fundamental shift in content management. Kudos to the folks who are driving this!

Update: thanks mjg59 for pointing out my thinko. The Collabora guys do great stuff, but Codethink does Wizbit.

The term “credit crunch” is very misleading for the current crisis. It suggests that the problem is merely one of confidence, that calm will return if liquidity is introduced to the system.

My view, though, is that the real issue is one of solvency. This is the systemic bankruptcy of 2008.

Mortgages are just the beginning.
At real rates of interest, with real expectations of a reasonable rate of return, many of the deals which have been done since 2003 just do not make economic sense. Thus far, the spotlight has been on one piece of that problem - bad mortgage loans - but I think we’ll see the problem areas expanding rapidly to include a lot of the private equity deals which were done on the basis of free money between 2003-2007. I remember a fatuous statement by some private equity genius that “everybody’s rushing to do the first $100bn deal”. Well, the chickens are coming home to roost. Expect a steady flood of announcements of setbacks, restructurings and bankruptcies as companies that were bought with borrowed money turn out to be unable to service their debt.

Lower interest rates will ease the symptoms only.
Dramatic easing of interest rates will help to slow down the pace at which we have to deal with the bankruptcies, but they won’t change the cold reality of the situation, and they run the very real risk of making things worse by encouraging another round of speculation based on free money. We are once again in a situation where the US discount rate is effectively a negative real rate of interest, as a gift to the banks, but staying there for any length of time puts us back into a state of addiction.

Interventions must target bank equity and leverage, not liquidity.
The latest move from the UK to buy equity stakes is the best response yet, I think. It dramatically improves the capitalisation of those institutions, it keeps the upside of that move in taxpayers hands (they are taking the pain and funding the bailout, it seems right to preserve the upside for them) and it dilutes the existing shareholders who allowed their institutions to become insolvent. Personally, I’d be inclined to do more than dilute those shareholders.

I don’t see the current $700bn deal making a real difference to US banks. I would expect the US to announce a deal similar to the UK deal soon, but the numbers would have to be larger. Scarily large. Much better for the US to make that move, than to wait for Asian and Middle-eastern sovereign wealth funds to step into the breach.

Depositors in regulated banks should be protected by the governments that run the regulators. Shareholders not so much. Bondholders… maybe.
I think the Irish and other countries who have guaranteed the deposits of individual users have done the right thing. Governments setup regulatory authorities, and banks advertise that they are regulated. The people who appoint those regulators need to stand by the approach they take - they should offer a guarantee that they will stand by their product, and when it fails, they will stand by the people who trusted in them. Depositors at banks in the UK really should not have to worry that the bank might fail - such a failure should at most affect the interest rate they receive, not the safety of their capital. Shareholders in those banks, however, should be very worried indeed. There’s an interesting question about bondholders and institutional depositors. By one argument they are sophisticated investors and should be responsible for their bonds. By another argument, they are the very people who can cause massive shifts in funds from bank paper to T-bills, and hence worth keeping pacified. I would lump them in with individual depositors too.

Executive compensation should be structured not fixed.
There has been a lot of discussion about limiting executive compensation. That’s just an invitation for armies of consultants and lawyers and accountants to work around whatever compensation limits are put in place. And frankly, I’m hard-pressed to understand how politicians, who constantly vote themselves bigger salaries and expense accounts, are qualified to set bank executive salaries. They effectively WERE in charge of Fannie and Freddie executive compensation, and that wasn’t a stellar success.

What I would say, however, is that financial institution earnings should only be recognised over a seven year period, and bonuses based on those earnings should be held in escrow until that seven year period is up. Imagine if we could now tap into the bonuses of investment bank employees over the past seven years in order to shore up the balance sheets of those banks. That would include the bonuses paid to Mr Fuld, Mr Greenberg, and Mr Greenspan. Anybody care to run the numbers? I think it would be material.

I’m nervous.
The big question I’m asking is which sidelines don’t have landmines? My team and I are fortunate to have stepped out of many markets before the current flood of fear. We stepped right into a few problems, but in large part dodged the cannonballs. So far so good. But what does it mean to have cash in the bank, when banks themselves are failing? What does it mean to hold dollars, when the dollar is being debased in a way that would feel familiar to the Reserve Bank of Zimbabwe? These are very dangerous times, and nobody should think otherwise.

When you present yourself on the web, you have 15 seconds to make an impression, so aspiring champions of the web 2.0 industry have converged on a good recipe for success:

  1. Make your site visually appealing,
  2. Do something different and do it very, very well,
  3. Call users to action and give them an immediate, rewarding experience.

We need the same urgency, immediacy and elegance as part of the free software desktop experience, and that’s is an area where Canonical will, I hope, make a significant contribution. We are hiring designers, user experience champions and interaction design visionaries and challenging them to lead not only Canonical’s distinctive projects but also to participate in GNOME, KDE and other upstream efforts to improve FLOSS usability.

Fortunately, we won’t be working in a vacuum. This is an idea that is already being widely explored. It’s great to see that communities like GNOME and KDE have embraced user experience as a powerful driver of evolution in their platforms. Partly because of the web-2.0 phenomenon and the iPhone, there’s a widely held desire to see FLOSS leap forward in usability and design. We want to participate and help drive that forward.

There’s also recognition for the scale of the challenge that faces us. When I laid out the goal of “delivering a user experience that can compete with Apple in two years” at OSCON, I had many questions afterwards about how on earth we could achieve that. “Everyone scratches their own itch, how can you possibly make the UI consistent?” was a common theme. And it’s true - the free software desktop is often patchy and inconsistent. But I see the lack of consistency as both a weakness (GNOME, OpenOffice and Firefox all have different UI toolkits, and it’s very difficult to make them seamless) and as a strength - people are free to innovate, and the results are world-leading. Our challenge is to get the best of both of those worlds.

I don’t have answers to all of those questions. I do, however, have a deep belief in the power of the free software process to solve seemingly intractable problems, especially in the long tail. If we articulate a comprehensive design ethic, a next-generation HIG, we can harness the wisdom of crowds to find corner cases and inconsistencies across a much broader portfolio of applications than one person or company could do alone. That’s why it’s so important to me that Canonical’s design and user experience team also participate in upstream projects across the board.

In Ubuntu we have in general considered upstream to be “our ROCK”, by which we mean that we want upstream to be happy with the way we express their ideas and their work. More than happy - we want upstream to be delighted! We focus most of our effort on integration. Our competitors turn that into “Canonical doesn’t contribute” but it’s more accurate to say we measure our contribution in the effectiveness with which we get the latest stable work of upstream, with security maintenance, to the widest possible audience for testing and love. To my mind, that’s a huge contribution.

Increasingly, though, Canonical is in a position to drive real change in the software that is part of Ubuntu. If we just showed up with pictures and prototypes and asked people to shape their projects differently, I can’t imagine that being well received! So we are also hiring a team who will work on X, OpenGL, Gtk, Qt, GNOME and KDE, with a view to doing some of the heavy lifting required to turn those desktop experience ideas into reality. Those teams will publish their Bzr branches in Launchpad and of course submit their work upstream, and participate in upstream sprints and events. Some of the folks we have hired into those positions are familiar contributors in the FLOSS world, others will be developers with relevant technical expertise from other industries.

One strong meme we want to preserve is the idea that Ubuntu, the platform team, is still primarily focused on integration and distribution. We will keep that team and the upstream work distinct to minimise the conflict of interest inherent in choosing the patches and the changes and the applications that actually ship each six months as part of an Ubuntu release.

Of course, there’s a risk to participation, because you can’t easily participate without expressing opinions, visions, desires, goals, and those can clash with other participants. It’s hard to drive change, even when people agree that change is needed. I hope we can find ways to explore and experiment with new ideas without blocking on consensus across diverse and distributed teams. We have to play to our strengths, which include the ability to diverge for experimental purposes to see what really works before we commit everyone to a course of action. It will be a challenge, but I think it’s achievable.

All of this has me tapdancing to work in the mornings, because we’re sketching out really interesting ideas for user interaction in Launchpad and in the desktop. The team has come together very nicely, and I’m thoroughly enjoying the processes, brainstorming and prototyping. I can’t wait to see those ideas landing in production!

I had the opportunity to present at the Linux Symposium on Friday, and talked further about my hope that we can improve the coordination and cadence of the entire free software stack. I tried to present both the obvious benefits and the controversies the idea has thrown up.

Afterwards, a number of people came up to talk about it further, with generally positive feedback.

Christopher Curtis, for example, emailed to say that the idea of economic clustering in the motor car industry goes far further than the location of car dealerships. He writes:

Firstly, every car maker releases their new models at about the same time. Each car maker has similar products - economy, sedan, light truck. They copy each other prolifically. Eventually, they all adopt a certain baseline - seatbelts, bumpers, airbags, anti-lock brakes. Yet they compete fiercely (OnStar from GM; Microsoft Sync from Ford) and people remain brand loyal. This isn’t going to change in the Linux world. Even better, relations like Debian->Ubuntu match car maker relations like Toyota->Lexus.

I agree with him wholeheartedly. Linux distributions and car manufacturers are very similar: we’re selling products that reach the same basic audience (there are niche specialists in real-time or embedded or regional markets) with a similar range (desktop, workstation, server, mobile), and we use many of the same components just as the motor industry uses common suppliers. That commonality and coordination benefits the motor industry, and yet individual brands and products retain their identity.

Let’s do a small thought experiment. Can you name, for the last major enterprise release of your favourite distribution, the specific major versions of kernel, gcc, X, GNOME, KDE, OpenOffice.org or Mozilla that were shipped? And can you say whether those major versions were the same or different to any of the enterprise releases of Ubuntu, SLES, Debian, or RHEL which shipped at roughly the same time? I’m willing to bet that any particular customer would say that they can’t remember either which versions were involved, or how those stacked up against the competition, and don’t care either. So looking backwards, differences in versions weren’t a customer-differentiating item.  We can do the same thought experiment looking forwards. WHAT IF you knew that the next long-term supported releases of Ubuntu, Debian, Red Hat and Novell Linux would all have the same major versions of kernel, GCC, X, GNOME, KDE, OO.o and Mozilla. Would that make a major difference for you? I’m willing to bet not - that from a customer view, folks who prefer X will still prefer X. A person who prefers Red Hat will stick with Red Hat. But from a developer view, would that make it easier to collaborate? Dramatically so.

Another member of the audience came up to talk about the fashion industry. That’s also converged on a highly coordinated model - fabrics and technologies “release” first, then designers introduce their work simultaneously at fashion shows around the world. “Spring 2009″ sees new collections from all the major houses, many re-using similar ideas or components. That hasn’t hurt their industry, rather it helps to build awareness amongst the potential audience.

The ultimate laboratory, nature, has also adopted release coordination. Anil Somayaji, who was in the audience for the keynote, subsequently emailed this:

Basically, trees of a given species will synchronize their seed releases in time and in amount, potentially to overwhelm predators and to coordinate with environmental conditions. In effect, synchronized seed releases is a strategy for competitors to work together to ensure that they all have the best chance of succeeding. In a similar fashion, if free software were to “release its seeds” in a synchronized fashion (with similar types of software or distributions having coordinated schedules, but software in different niches having different schedules), it might maximize the chances of all of their survival and prosperity.

There’s no doubt in my mind that the stronger the “pulse” we are able to create, by coordinating the freezes and releases of major pieces of the free software stack, the stronger our impact on the global software market will be, and the better for all companies - from MySQL to Alfresco, from Zimbra to OBM, from Red Hat to Ubuntu.

A distribution occupies a very specific niche in the free software ecosystem. Among other things, we need to accept some responsibility for ALL the software defects (”bugs”) that users actually experience across the entire stack. Most users don’t install their apps from upstream source tarballs, they install them from the packages provided by their distribution. So when they experience a bug, they don’t know if it’s a bug introduced by that distribution, or a bug in the underlying upstream code. They don’t know, they don’t care, and they shouldn’t have to. More often than not they will report the issue to their distribution, and the way we respond to it is important, because it represents an opportunity to make the whole ecosystem more robust.

I had a lecturer who was very opposed to the use of the term “bugs”. He said that the term “bug” was a cute-sification for “nasty biting insect”, and similarly, software defects have potentially serious consequences, so we shouldn’t treat them lightly. Bug work is serious work, and it’s one of the most important forms of contribution to the digital commons that Ubuntu can make, so I’d like to salute the extraordinary efforts of the Ubuntu Quality Assurance Team and Bug Squad. Initiatives like five-a-day are already making a huge difference to our users. As Henrik Omma says, effective bug reporting requires a diligent and professional approach, and I’ve noticed a real improvement in our community. Hopefully, we can bring the benefits of that competence to the broader free software ecosystem.

Ubuntu gets as many bugs reported against it as OpenOffice, Mozilla, Gnome, and KDE combined.The vast majority of those bugs are issues that exist in upstream tarball releases, or in Debian. Our primary goals should be to ensure that fixes we produce, and information we generate in the QA process, make their way upstream where they will benefit the broadest cross-section of the community. Separately, we want to ensure that each Ubuntu release ships without major issues, regardless of where those issues originated. We are responsible for the user experience of every line of code, even though we don’t produce every line of code.

In the month of April 2008, I found the following bug counts for large FLOSS projects:

Upstreams: Mozilla 5,334
OpenOffice 1,076
Gnome 5,364
KDE 1,335
Total: 13,109
Distributions:
Ubuntu 13,064
Debian 5,103

With hindsight, April was possibly a bad choice, because it was an Ubuntu release month so there’s usually a small spike in the number of bugs filed. It would be interesting to see the stats for other distributions, and projects, over a full year. But the general picture is clear - within our family of distributions, Ubuntu carries the brunt of the load w.r.t. bug tracking, triage and patch management - not only for our users, but for a broad cross-section of the open source stack.

When I delved into the data to see how we do with pushing bugs upstream, I found a somewhat mixed picture. In many cases, we do very well indeed. We have a very good relationship with GNOME, for example, with a very high percentage of bugs appropriately forwarded to the relevant upstream bug tracker. In other projects, it’s harder to make a definitive statement. The percentage varies based on whether the Ubuntu team members have good relationships upstream, or whether there’s a person acting as an ambassador from Ubuntu to upstream (this is a great way to make a difference if you care about a specific application in Ubuntu!) or whether upstream themselves have taken an interest.

We need to improve the tools that support these kinds of cross-project conversations. Launchpad does currently allow us to track the status of a bug in many different bug trackers, and there are quite a few distributions and upstreams that are now either using Launchpad directly or exchanging data efficiently. We’ll keep working to improve the quality of exchange across the whole ecosystem, including those projects that don’t use Launchpad themselves

Nicely handled, Thawte!

Monday, June 16th, 2008

I was delighted to see Thawte’s elegant handling of the recent OpenSSL random number generator flaw in Debian, Ubuntu and other Debian derivatives. They offered a free replacement for anyone who was affected. Years ago, when Thawte was setup, we put a lot of effort into doing things in a way which made sense for users of ApacheSSL and similar, open-source based secure servers. I’ve not kept up with the changes at the company since it became part of VeriSign in 2000, but it’s great to see that the brand has been preserved, and that more importantly some of it’s key values have, too.

Interview with Linux-Magazine Italia

Thursday, June 12th, 2008

Vincenzo Ciaglia from Linux-Magazine Italia sent me a few questions related to the release of 8.04 LTS. Since he was going to translate the conversation into Italian this week, he was happy for me to blog the English version here.

1) Hi Mark, thank you for your availability. Some simple questions to introduce you to our readers to start. What’s your role at Ubuntu/Canonical and what do you do in your spare time? What are your hobbies?
My favourite sport is snowboarding, and I enjoy travel to tropical spots. But ultimately I’m happiest when I’m being a geek, reading, playing games or relaxing with friends.

2) You’re the founder of Canonical, the company behind Ubuntu. Why do you decided to invest a lot of dollars (10$ million) to start up the company? In which fields does it work to make its business? How do you make the company sustainable?
The vision of Ubuntu and Canonical is a symbiotic one. We believe that Linux has grown to the point where it is possible to build the platform at a low enough cost to make it sustainable purely though services around it, rather than through licensing the platform. In other words, we think that support, training, online services, and professional engineering for people who want to adapt Ubuntu commercially will earn enough money to pay for Ubuntu itself.

That means that we can fundamentally change the business model of the OS industry. Of course, it till take time to prove that we can achieve this, but we have a superb team and now that Ubuntu is well established we see increasing demand for services from Canonical, which is positive.

3) Ok, let’s talk about the latest Ubuntu 8.04. In an interview you said that “Hardy Heron is your most significant release ever”. Well, can you talk about the main improvements of this release?
First, this is an LTS (“Long Term Support”) release that was delivered on a very precise schedule. Six months ago we committed to shipping 8.04 LTS on April 24th, and we did exactly that. As far as I know, nobody has ever shipped an “enterprise class” OS release on a schedule that precise. And not only did we do that, but we have now committed to ship the next LTS in April 2010, it will be 10.04 LTS, and we’ll set the exact date six months in advance like we did with this one. It is thanks to Debian and the free software community that it is possible for us to do this. So 8.04 LTS has proven our ability to deliver not just 18-month-supported releases on time, but also LTS releases on time. We very much hope that other distributions will follow our lead on the LTS cycle with their enterprise releases, because that will make it easier for us all to collaborate, and make all the major Linux distributions better.

Second, there are very significant new developments for Ubuntu itself. On the server, we worked with HP on their Proliant range, and with Dell on their PowerEdge range, to ensure that 8.04 LTS will be compatible with their popular x86 servers. We’re not yet certified, but we are sure that it will “Just Work”. Sun Microsystems has gone further, and has actually certified 8.04 LTS on a range of their x86 servers. This is a major step forward for Ubuntu on the server. We see an amazing amount of usage now for Ubuntu on the server – it’s the most popular server platform for several ISV’s. So it’s important that we work with server vendors, and server solution vendors. We’ve also put a lot of work into the use of KVM and VMWare virtualisation, because we see people building hundreds of virtual appliances on Ubuntu.

On the desktop, we have focused on making it easier to install Ubuntu, especially on a machine which already has Windows, where you can now install Ubuntu into a file on the Windows partition instead of having to resize your Windows partition to make a new partition for Ubuntu. That makes it much easier for people to test out Ubuntu, and hence to get a taste of free software. We have also worked on many of the common things that people want to do with their PC, such as work with photos and music, and started to improve the user experience there.

4) There are still some hardware issues (especially with some wireless devices) in Ubuntu. How do you think to solve these kind of problems and improve hardware support in the next releases?
We are increasingly able to work directly with the hardware manufacturers, to try and convince them to develop free software drivers for their hardware. Our relationships with different PC companies mean that we can lobby strongly for people to embrace Linux, properly.

We also work very hard to tie together all the ugly pieces of string that are needed to make the user experience of Linux on your hardware a pleasant one. Unfortunately, for example, there are multiple different wireless stacks, for example, with different capabilities. And Ubuntu spends a lot of time integrating and debugging them to try and create a harmonious, standardised experience for end-users.

5) What kind of improvements Ubuntu 8.04 bring to server and virtualization solutions?
Ubuntu Server Edition brings all the wonderful characteristics of Debian to the front – it’s modular, efficient, has a huge package selection, and is easy to install and manage. In addition, we’ve done a lot of work with server manufacturers to ensure compatibility with their popular hardware, and have started certifying with some of them.

Our virtualisation offering is based around KVM and VMWare. Out of the box, Ubuntu should give you the best possible experience with both of them. It is optimised and rigorously tested, and Ubuntu is certified on VMWare’s ESX Server platform. KVM, the free software virtualisation option we prefer, is built in to our standard server kernel, so you can get started with virtualisation immediately. There is also a Xen kernel for folks who prefer Xen.

We have done a lot of work around the integration of Ubuntu servers and Windows networks, particularly in the field of Active Directory and SMB file sharing servers. We worked with a company called Likewise to make sure that there is a smooth process to join an Active Directory network, and can even manage Linux machines through AD using Likewise’ professional tools. All the capabilities to do the basic stuff are free software and built in to Ubuntu.

6) A dirty question from our readers: Ubuntu is really a giant now, are you trying to kill the Debian project?
Absolutely not. I’m a Debian Developer myself, and very proud of what Debian has achieved, and also proud of everything that Ubuntu contributes to the broader Debian project. We consider Ubuntu to be a member of the Debian family, that’s just purely focused on the specific use cases and platforms that our customers want.

Much of what we do in Ubuntu contributes directly to Debian. We lead the packaging of many important pieces of the desktop, and server, and toolchain, and contribute that work directly to Debian. As a result, Debian is updated much faster these days than it used to be without Ubuntu. We have lead many key transitions and always try to collaborate with the relevant people upstream AND in Debian to ensure that the work flows smoothly into those projects. Most DD’s are very happy to collaborate, but some view Ubuntu as a threat, and refuse to collaborate, or make unreasonable demands on Ubuntu because they think “you have money” when in fact most of Ubuntu is volunteer driven.

My vision is that Debian and Ubuntu both grow stronger through good collaboration. I’m trying to have a keynote accepted at DebConf to help make that vision a reality, but so far have had no luck in getting approval. Hopefully, the leadership of Debian will start to come around tot he idea that Ubuntu’s success is very good for Debian.

7) You’re working with embedded devices and electronics company. In which way? What is you work in the tight partnership with Intel?
Linux is increasingly used by embedded solution providers, and many of them want to use Ubuntu. So we are working with Intel to make sure that Ubuntu fully supports their low-power hardware (cpu’s, chipsets, graphics and so on).

8) Ubuntu surely is the most used and appreciated GNU/Linux distribution in the world. But, do you think that Ubuntu Linux will reach – one day – the success of other operating systems like OS X and Windows? In which way do you think to accomplish a similar goal?
I do believe that free software will come to be widely recognised, trusted and used by everyday computer users, as opposed to being limited to specialists as it is today. Hopefully Ubuntu will play a part in that, but I don’t think one platform will dominate that free software era like Windows dominated the proprietary software era. Ubuntu is focused on specific needs, and there are other versions of Linux or BSD that meet others.

In order to break out from the pack, we need to deliver a desktop experience that is exciting, that is easy to use, and which people are confident will be compatible with their future needs and with those of their colleagues.

9) Everybody talk about GNU/Linux but seems that not so many peoples trust Linux for now (some statistics talk about 0.xx% of the Linux world usage). What is the problem? Nevertheless Ubuntu is really a great operating system. Do you think it’s just a matter of marketing or because the lack of game packages?
I think it takes time to change the habits of hundreds of millions of people! I also think we need to deliver an experience that is simply better than the alternatives. Projects like Firefox don’t define their goal as being “a good browser”, they say “we want to be the best browser on any platform, period”, and as a result they are very popular even on Windows. We need that winning attitude everywhere.

10) Canonical was the first GNU/Linux company to make a deal with a computer vendor, Dell. How is going your business now? The curious thing is that on IdeaStorm a lot of users asked for Linux Computers but after some months seems that the sales aren’t so good, or at least not as expected. Why? Maybe GNU/Linux is not ready for the consumer market yet?
I agree that the more people actually buy systems with Linux pre-installed, the faster things like hardware support will be addressed. Fortunately, we see millions of units being shipped with Linux already, just not at the high-end of the PC business. The low-end, especially in countries like Brazil and China, is very active. Slowly, Linux is becoming a volume player.

11) Are you working with other computer vendor to sell other Ubuntu-based desktops and laptops? We’re Italians and the Ubuntu-Dell computers never arrived in our country. Why Dell, and other vendor, is so shy to sell GNU/Linux computers world wide?
That’s a simple matter of demand and the cost to meet it. Any PC manufacturer will take a firm view of the economics of an opportunity, and it’s healthy that they do. Until folks in Italy are really willing to buy computers with Linux pre-installed, there will not be a real market for them. I’m sure there are local providers who build good computers who will pre-install Ubuntu for you. You need to help them become big enough that the Dell’s and HP’s and Lenovo’s of the world are confident there is an opportunity that is worthwhile for them.

12) What is your point of view about the the Novell-Microsoft controversial deal?
There are some good intentions, and there are some bad intentions, and unfortunately they are all mixed up in that deal. On the positive side, it’s good to see Microsoft acknowledge the need for both Linux and Windows, and the need for interoperability. On the negative side, the deal only works financially because Novell and Microsoft have the same business model – licensing software for a certain price per seat.

Microsoft is in an awkward position. They very much want to stop the free use of Linux, and they would like to use patents to do so, which is why they structured the deal as a notional “IP license”. But they also know that free software engineers could probably avoid any patents they raise, so they have been unwilling to state which patents they think justify such a deal.

13) In a interview (http://mybroadband.co.za/nephp/?m=show&id=6672) you declared that “you’d love to work with Microsoft”. Do you want to make another deal following the Novell one or what?
I am very happy to work with Microsoft, or any other company, to improve the state of free software and the software industry as a whole. There are many things that we can collaborate on where we have shared interests – encouraging good telecommunications policy, for example.

But I will not agree to a deal like the Novell one, because I don’t think there is any IP issue in fact, and until Microsoft actually states what patents it is concerned about there is no need for us to take any action. Unfortunately for Novell, I think they have done a deal which gives them a short-term boost, at a very high long term cost. Time will tell.

14) And what do you think about the OOXML standard and the Microsoft Open Promise?
I don’t believe that ISO’s declaration of OOXML as a standard will actually deliver any benefit to users of Microsoft Office. They will still be using a big, bloated piece of software with no competition, that is not-quite-standards-compliant. That’s a pity. Microsoft’s customers had an opportunity to ignite real innovation in the office document space, by encouraging Microsoft to support and existing, open, well-defined document standard in ODF. But they didn’t – Microsoft managed to push enough partners and resellers into the standards process that the ISO decision did not really reflect anything other than Microsoft’s commercial interests.

15) We’re getting a GNU/Linux ultramobile-lowcost-laptop everyday. What do you think about Eee PC Linux revolution?
I think they are great!

16) Acer, HP, MSI, Asus and much more want to join the Linux-powered UMPC market. Are you making some deals to port Ubuntu on some of these laptop?
Lots of people are installing Ubuntu onto their UMPC’s, so I think it’s reasonable that some manufacturers may choose to pre-install it. It’s their decision! If you think that would be popular, then it would probably be worth encouraging them to do so.

17) A lot of analysts talks about a GNU/Linux conquer on mobile market in the next few years. From smartphone to UMPC: the future is Linux. Can you talk about Ubuntu Mobile, its concept, the present and the future?
Yes! Intel is driving a project called Moblin, which aims to produce a mobile software platform for handheld devices, and we’re basing Ubuntu Mobile on that. The first versions are out already, and the roadmap looks very exciting.

Traditionally, it was very expensive to produce software for consumer electronic devices, because they were all specialised hardware with specialised operating systems and application development environments. We are aiming to change that – to make it so that you can build a simple .deb on x86 which can be installed on any piece of consumer electronics that uses this platform. That should greatly increase the amount of innovation we see in the mobile space.

18) What do you think about your competitors? Fedora/Red Hat, openSUSE and Mandriva are doing good work as well as Ubuntu. What GNU/Linux distribution do you prefer if you couldn’t use Ubuntu?
Yes, all of the distributions make contributions to the art and industry of free software. I’m very glad that lots of companies continue to invest in Linux, it makes it a much healthier and more vibrant ecosystem than it would be if just one company dominated it. So I’m very happy with the competition. If Ubuntu didn’t exist, I would use Debian.

19) And what is your feeling about the latest Sun acquisition (MySQL)? Are you working with Sun to port the OpenJDK on Ubuntu?
MySQL is a great company and a very good fit for Sun. I hope they are happy together and that the company will continue to produce a superb free software database.

Yes, OpenJDK is part of Ubuntu 8.04 (though it is not yet at the core, and not yet the default Java environment). We hope to have 8.04 LTS fully TCK-certified in due course. And most of all we are grateful to the Sun folks for letting us package OpenJDK as a proper Ubuntu package, neatly integrated with the rest of the OS. We are aiming for a result which feels “all Java, all Ubuntu”, and I would encourage your users to try it out! Make sure “universe” is enabled on your Ubuntu machine, then type “sudo apt-get install openjdk-6-jdk”.

20) What are the next Canonical plans? Are there any interesting initiatives in progress?
Of course, but this is not the right place for a press release :-)

21) Finally, do you think that GNU/Linux is “really” ready for the desktop users? In which way could be improved?
Yes, I believe it is ready for SOME desktop users. If you really want a desktop that is web-oriented, then Linux is an excellent choice, with either Gnome or KDE (I’m really impressed with the work going on as part of KDE4, by the way). We know that there are millions of people using Linux today. And we are focused on solving the problems that prevent more and more people from adopting it.

Free software is intrinsically a better way to build software, I believe. But we should not plan to be judged on our morals, we should expect to be judged on our software. We have to deliver something that LOOKS and FEELS better, then we can expect people to embrace it fully. And once people realise they can have something that is better AND sustainable AND comes with many freedoms, the world will be a fundamentally different place. That is our goal.

22) Our interview seems to be completed. Do you have something to add for our readers? Thank you for your time and keep up the excellent work!
Please participate! There are lots of ways to get involved with upstream projects or with Ubuntu. Help spread the word, or fix a bug, or translate something from the desktop into Italian!

Netbooks pre-loaded with Ubuntu

Monday, June 9th, 2008

The Canonical OEM team has been approached by a number of OEM’s who want to sell netbooks (small, low-cost laptops with an emphasis on the web) based on Ubuntu. Almost universally, they’ve asked for standard Ubuntu packages and updates, with an app launcher that’s more suited to new users and has the feeling of a “device” more than a PC.

There are some very cool launchers out there - AWN is a current favourite of mine - but people seem to prefer the more 2-dimensional tabbed approach, so the OEM team implemented a lightweight but still very classy launcher for this use case. The work received a detailed review in Ars Technica and has been covered in Free Software Magazine and elsewhere.

The aim was to do something very simple that could be tested easily, work with touch devices and made shippable very quickly. It also needed to be efficient on lower-power devices, and work well with Intel hardware, which seems to be the preferred platform for this generation of devices and allows us to slip a few nice effects in that would be hard without the right hardware support. Here’s a screenshot of a recent version:

The Ubuntu Netbook Remix launcher is laid out for new users

The new launcher is free software - so far, everything Canonical has funded, written and published for general public use on Ubuntu has been under the GPL. Currently we use GPLv3. You can grab the relevant packages from a public PPA, just add the following entry to your /etc/apt/sources.list:

deb http://ppa.launchpad.net/netbook-remix-team/ubuntu hardy main

The PPA contains a number of packages for the launcher, some GNOME panel applets, window manager tweaks and themes. These bits and pieces are small but improve the experience of Ubuntu run with the netbook launcher on screens with lower vertical resolution. There’s also some code in there specific to the Intel netbook hardware platforms, don’t install ume-config-netbook unless you are on the right hardware! This is all code produced by Canonical and published on Launchpad under free software licenses:

https://launchpad.net/netbook-remix
https://launchpad.net/netbook-remix-launcher

I’m particularly happy with the way it gives you more screen space for web browsing, which is probably the major use case on these form factors:

The screen layout is optimised for screens with fewer vertical pixels

There are still plenty of interesting corner cases, Ars calls out issues with the GiMP’s palettes, for example, so please do take the opportunity to test it with the apps you think you’d run on a small laptop (or as El Reg would say, laptot).  And feel free to push up and submit for inclusion a branch or two if you’re up to a bit of Clutter hackery!

For the rest, the netbook remix uses standard ubuntu packages from the standard ubuntu archive, with standard security updates. So it meets all of our usual commitments around security and compatibility. You can recreate the netbook remix just by installing 8.04, adding the PPA to your list of repositories, fetching the packages and configuring them appropriately for your system.

The netbook remix is not part of the “official Ubuntu editions”, it’s not like Kubuntu or Ubuntu or Ubuntu Server. It’s a separate remix published by the Canonical OEM team. It will probably get revved in October when Ubuntu 8.10 is released, but that’s up to the Canonical OEM team and their customers, and not the responsibility of the Ubuntu project team.

In working with manufacturers, the OEM team creates custom install images which are specific to hardware from those OEM’s. They have the free software packages I’ve described, and they may also include third-party software selected by OEM’s which Canonical cannot redistribute, so we can’t publish the custom installers that are produced under contract. Those images typically are hand-customised for a faster boot time, which means they will only work on the particular device for which they were intended, unlike standard Ubuntu which should auto-detect and configure itself for whatever hardware it is being booted on.

We specifically wanted to do this project as an Ubuntu Remix - based on standard Ubuntu 8.04 packages, with modified package selection and some additional code, but leaving the core platform packages unmodified. In terms of the trademark guidelines for an Ubuntu Remix companies cannot call their platform Ubuntu if they have modified packages (especially the kernel and desktop packages) but they can if they are just re-arranging standard Ubuntu packages. Canonical is in a privileged position as the Ubuntu trademark owner - we can certify a custom kernel if we believe it has been done in an appropriate way that won’t conflict with standard Ubuntu maintenance processes, and if we can keep the custom kernel up to date to the same standard as the normal Ubuntu kernel. So these are certified Ubuntu devices from Canonical, even though they are more customized than other people can within the Remix guidelines.

We’re also working with two companies that want more radical user interface innovation. Canonical is participating directly in the design and implementation of one of those UI’s, and we’re integrating someone else’s UI on an Ubuntu base for the second project. I haven’t seen either of those UI’s, for confidentiality reasons, but I’m told that the teams working on them think they have great ideas that will elevate, in different ways, the state of the art. All in all it will be exciting to see how the netbook era stimulates innovation in the Linux user experience, because there are a lot of companies wanting to build differentiated UI’s on a standard Linux base. And directly or indirectly Canonical will help to bring that innovation to KDE and GNOME and hence to the wider Linux ecosystem.