19 June 2012

The Umbraco 5 debacle proves that even a free CMS needs effective governance

Perhaps the most alarming thing about Umbraco’s decision to scrap version 5 of their CMS is that is doesn’t seem to have surprised many in the development community. It appears that Umbraco were left with little choice once performance problems overwhelmed the re-design of their platform.

The decision was announced fairly simply on the Umbraco website last week:

“In the end, the only responsible decision, the only decision that respects the community and the core values of the project was to retire v5.”

The use of the word “responsible” may seem a little strange in this context. After all, Umbraco 5 was in development for more than a year, the community were encouraged to play with public betas and the first production release came several months before the plug was finally pulled. This gave developers adequate time to invest a healthy chunk of time, money and credibility in the new release.

Umbraco may be free software, but license fees are always a relatively small chunk of the overall costs for a CMS implementation. The biggest single cost is developer time and a whole lot of it has just been thrown after a cancelled product. That’s a lot of goodwill that has been poured down the drain and you would have to think twice before making any significant investment in Umbraco now.

Falling into the performance trap

Umbraco founder Niels Hartvig explained the reasons behind the cancellation in a keynote speech at the recent Umbraco developers’ conference. His apologetic keynote described a litany of weak decision-making, inadequate testing and confused planning. He admitted that the project has “been in limbo for some time” and that they have “created a monster”.

Despite this, he got a rapturous round of applause rather than a stoning. Well, that’s developers for you.

The nub of the matter is revealed in a developer blog post from earlier this year that addressed some of the concerns around early v5 builds. The Umbraco team were concentrating on perfecting functionality with the view that they could always tighten up performance at the end. Warnings about the “perils of premature optimisation” were offered in the face of a growing number of concerns about poor performance. The approach was summed up in this quote:

“ Make it work, then make it work good, then make it work fast.”

This does rather depend what you mean by “work”. Most people would regard “fast” as an essential part of “work”. You don’t need hindsight to be able to tell that this was a short-sighted approach.

Why governance matters

If performance was the root cause of the failed release, a number of reasons have been offered to explain how this was allowed to happen. Poor communication within the community and rushed decision making were certainly factors, but the bottom line is that there was a chronic failure of governance.

If you want your platform to be taken seriously in a commercial context then you need to inspire confidence among your users. A reliable release schedule and clear development roadmap are important, but a clear sense of confident leadership is an absolute must. Somebody has to be in charge.

An argument often trotted out against open source software is that it can suffer from a lack of clear governance. The development community may lose interest or go off at a forked tangent leaving you high and dry. If there is no effective leadership then development can wander into the kind of unproductive cul-de-sac that Umbraco has found itself in.

Umbraco isn’t open source in the sense of being fully controlled by a development community. It’s a commercial software product that is developed and released according to an open source model. Ideally, this should marry the benefits of open source development with commercial accountability and ownership but this doesn’t seem to be the case with Umbraco.

Where now for Umbraco? It seems that the plan is to “take all that is awesome about v5 and add it into v4”. Not much of a roadmap, but it’ll have to do for anybody who has made a recent investment in the platform.

Filed under CMS, Rants, Strategy.