MAR
1
2011

It's the Free Software, stupid!

Heated discussions are going on in the KDE community in the aftermath of the announcement of Nokia's platform strategy change. Rationality often goes out of the window when people feel such a change goes against their personal values or beliefs. In the past days, I worked on an analysis of the impact of the changes on KDAB, Qt and the Free Software communities we work with, especially KDE. KDAB is rooted deeply in the KDE community, and many of our developers work with Qt and KDE for years now. We are sharing the same worries and hopes, so the results may be interesting for others as well. This post is about Qt, KDE, Free Software, politics, devices, markets, strategies - it does not get much better than that. Read on.

Be thankful for what you got
We are told to judge by actions, not by words, so let us have a look at the development of Qt since Nokia bought Trolltech, and how the KDE community benefitted from it. It is important to stress this up front because it is easy to forget that since then, Nokia has been a very important benefactor. KDE is based on Qt and always relied heavily it's technical advances. Trolltech convinced many developers to use Qt because of it's superior quality and ease of use and the friendly and inspiring developer community. But it was a small company, and could not have afforded to forgo the license revenue made from selling commercial Qt licenses. This revenue was the central pillar of Trolltech's business model. Trolltech was also in the uneasy situation that it influenced the software industry way more than it's small size warranted, and attracted the attention of much larger competitors. With the takeover, the revenue Trolltech generated was to a large extend irrelevant to Nokia. The development framework is a strategic asset, and selling Qt licenses is not in line with Nokia's core competencies. It also made perfect business sense to invest even more resources that could never have been afforded from the license revenue, to be able to rely on Qt as the future UI platform. This investment resulted in huge performance improvements, new technologies like QML, a continued stable development process with many releases, Qt Creator, and many other goodies.

But the biggest gift Nokia ever presented us with was to relicense Qt under the LGPL. It finally overcame the acceptance issue with Qt in the wider Free Software space, and helped grow the Qt user base massively. While other important safeguards like the Free Qt Foundation were already in place, using Qt under the LGPL license is so much less of a hurdle to take then to enforce the rights granted through the Free Qt Foundation. Those rights can also only be executed once, and only as an action of last resort. Without Qt under LGPL, MeeGo would not have been accepted by the software industry. This, the public hosting of the Qt git repo and the massive development manpower Nokia invested in Qt benefit KDE immensely.

The best part is that none of these presents can be un-given or taken away. Qt is there to stay under the current Free Software licenses, and the quality it gained in the recent years will also remain at KDE's service. There are new developments in KDE like QML and QtQuick that KDE still has to fully make use of. Today's Qt is a superb platform to base the development of KDE on in the coming years. Thanks, Nokia.

Qt
It is an open question how these past achievements translate into the future when it comes to Qt's own development. From talking to business partners and contacts at Nokia, it is pretty clear that no new direction has been set for the Qt unit at Nokia. The announcement that there will be no layoffs or budget cuts is comforting, but it needs to be taken with a grain of salt. It may have all kinds of reasons, for example personnel retention, local labor laws, maintaining an undamaged business unit that can be sold - or the simple lack of an updated strategy. So all these statements have to be mentally extended with an "...until further notice". By definition, strategy changes do not occur on a regular basis. Even if the MS partnership is unsuccessful (in sales figures, for example), it will take 3 to 5 years for that to be realized and the strategy to be re-evaluated. In that time frame, there will most certainly be changes to the Qt unit if it remains within Nokia.

Checking the facts about Nokia platforms shipping Qt
Nokia plans to ship another 150 million Symbian devices with Qt installed. The ability to do so depends heavily on the appeal of these phones to users willing to pay more than the magical 100 Euro barrier price. A vivid app market is necessary to reach this goal, since apps are a major sales driver in today's smartphones. Will companies keep investing in the fledgling Symbian plus Qt app space? Investors shy away from shrinking markets. Every corporate strategist tasked with developing a product-market-matrix will put anything Symbian related into the "de-invest" bracket. Why does the Symbian market shrink? Have a look at the diagram that visualizes the spectrum of Nokia phones (while creating the image I discovered how close the Qt and the Windows Phone 7 shades of green are - a coincidence? I guess we will never know.)

nokia-qt-dilemma.png

The lower end S30/S40 devices are becoming more attractive because features are added to them that so far required a smart phone. Internet access becomes more and more pervasive, and apps are being developed for these devices now. Having a Facebook app, for example, will be a convincing argument for those buyers who never really wanted a clunky smartphone. Also, these not-so-dumb phones will continue to be developed and shipped under the new strategy, resulting in better customer acceptance.

Through constantly improving hardware, the smartphones are being sold at steadily decreasing prices. The cheapest Android phones are now at below 100 Euro. This puts additional pressure on the sales revenue generated by the current high-end Symbian phones. Customer acceptance plays an important role in this segment as well. Read the latest tweets, and half of them are in the line of "I finally got rid of my Nokia and got an Android phone now". Customers will shy away from a line of phones that is already announced to be replaced. It is like beating the proverbial dead horse.

So the Symbian market segment will shrink, and with that the importance (and clout) of Qt within Nokia. Customers do not care about mobile OSes to a large extend. As soon as an average S40 phone will ship apps and have internet access, the middle bracket in the above diagram will fade away. Nokia is trying to define a "mid range phone" segment between the feature phones (S30/S40) and the smartphone (WP7) ranges. This segment is not established in the phone market, and it is questionable whether there will be a niche for it.

Because of that, app developers will hesitate to invest in the platform, and the Qt mobile ecosystem will be under a lot of pressure. In all the Nokia devices, Qt will not gain the widest coverage of all development platforms. Very likely it will be S30/S40, by device count, and WP7, by sales volume. Remember this is about Qt within Nokia. It only influences KDE indirectly, by defining Qt's role in the platform strategy.

Qt on other Mobile Platforms
With apps currently being developed in Java for the S30/S40 based phones, Nokia uses 3 different development platforms for it's phone lineup, Java, Symbian with Qt, and WP7.

There is a hopelessly romantic rumor that Qt support might come for the S30/S40 platform. A reality check is needed here. The low-end devices are shipping with S30/S40 because it is available today, not because it is a great modern future-proof platform. The apps for these phones are being developed now, or within the next twelve months. Even if a full-scale Qt port is started today, it won't be available short-term. No doubt the Qt community will be able to pull off that stunt. But finishing the port is one thing, getting it through quality acceptance and to the point where it is shipped in devices is another. App developers would only target those devices when they gained a sufficient market share, and by that time, an Android phone sells for 50 Euro. Because of that, I do not think there will be an official strategy to make Qt available on S30/S40. And since Qt is also not coming to to WP7, Qt's cross platform claim is moot within Nokia.

If the Qt port to Androids, Blackberries, Badas and Kindles become a viable reality, other vendors will sell more devices supporting Qt than Nokia. And that is a development going on now, while Nokia will need between one and two years to release the first WP7 phone. These forces will heavily impede Nokia's ability to differentiate based on the features of Qt, and result in less motivation to base a future strategy on Qt as a disruptive technology. The disruption will happen while Nokia is developing it's first WP7 phone.

Open Governance of Qt
About Open Governance, it is another open question if this strategy is viable for Qt in the absence of a major investor (of time and money) that drives the development. There is a good chance that it ends up like XFree.org and produces little more than bike shedding for a long time. Free Software projects under Open Governance, like the Linux kernel, or X.org, or - not quite the same, but very similar - the C++ standard, tend to innovate slowly. Because of that, I am not convinced that an impressive Qt 5 can be developed by the community under Open Governance in a reasonable time frame. Do not get this wrong: The idea is great, the problem is that it might not work out as we all hope for. Three major scenarios come to mind when thinking about the future of Qt's governance:

  1. Nokia considers Qt a strategic asset, and continues to heavily invest in it. In this case, Open Governance has a chance to succeed, but might not be in Nokia's own interest, since it will be losing control over it's own important technology.
  2. Qt is switched into maintenance mode, because it is not seen as important for the future. In this case, Open Governance will have a hard time to be implemented in the first place, and partners will hesitate to take responsibility for individual modules.
  3. Nokia plans to sell the Qt unit as an asset. In this case, the potential buyer will want enforceable control over it's investment. For that plan, Open Governance devalues Qt as a sellable product.

The biggest challenge for the transition to Open Governance is to make sure the companies invested in Qt support it fully, and want to see it happen. Maybe I missed a scenario that will make it work? Please post your feedback.

The biggest challenge for Qt itself will be the potential talent drain. Qt attracted excellent developers from all over the world because it was innovative and elite. Those are people that won't be comfortable with being parked on the back burner, and might not feel at home with Nokia anymore. At the same time, they do not exactly have problems finding another job. It will be hard for Nokia to convince employees not to leave, and also to hire new talent of the same quality. This is a long-term threat to the quality of Qt, and it's ability to innovate.

Countering the threat of Free Software in the mobile market
Android based devices and Nokia smartphones together make up 64% of the global smartphone market at the time of this writing, according to Wikipedia (http://en.wikipedia.org/wiki/Smartphone). If Nokia would have successfully transitioned to a MeeGo based smartphone line with Qt GUIs, the majority of the mobile devices market would use Free Software based development tools, on open and inviting ecosystems for developers, a competitive app market with low entry barriers, all in all promising innovation and affordable devices. Nokia was looking for a solution for it's future platform problem, and it was determined to base it on Free Software. The stock market loved the idea. Google agreed, too, and made Android.

At the same time, market demand for Windows based phones is at an overall low. There is simply no need for another closed proprietary phone OS, considering the alternatives. The tendency of it becoming an accepted standard that phone software platforms should be based on Free Software threatens Microsofts investment in WP7, and it's general position as a closed operating system vendor. WP7 was a solution looking for a problem.

There is probably a large overlap of institutional investors in Nokia and Microsoft, given that they are both market leaders and publicly traded companies. Both companies see their markets under siege, and are not doing very well, so it might have sounded like a good idea at the time to combine the hardware vendor looking for a phone OS with the phone OS vendor looking for hardware. The partnership is unbalanced though, because if it fails, Microsoft will still be the market leader in PC OS installations, and Nokia will have lost relevance in the global smart phone market. The stock market did not love that idea so much.

But it is seriously hard to believe that simply pushing WP7 to the market was Microsoft's only motivation. Also, there are other vendors that started offering WP7 phones. So why Nokia? There must be another compelling reason for Microsoft to first send a top-ranking emissary to Nokia, and then form a partnership that by all the usual criteria looks like a takeover. This reason that was important enough for Microsoft to invest billions into Nokia was to battle Free Software in it's emerging mobile market.

The strategic goal of ensuring that future phone OSes are based on proprietary and in particular not on Free Software was very likely the major motivator for Microsoft to pursue this unequal partnership. The recent ban of Free Software from the Microsoft app store indicates a similar motivation. Nokia's Free Software based platform strategy is dead, and it will not come back. This means Microsoft achieved one strategic goal immediately by establishing the partnership and aborting Nokia's Free Software based efforts. If this move was about WP7 introduction into the market, why rely on the stumbling giant Nokia, and not on one of the hungry Asian tigers, like HTC, who are already offering WP7 phones? Because those did not have a Free Software based strategy. Maemo or MeeGo together with Android are a thought unbearable to Microsoft.

Conclusion
About Qt - Qt was a compelling toolkit that developers loved to work with before Nokia bought it. That is the real reason for it's success. Developers tell their managers that they want to use Qt rather than something else. That quality of Qt has gotten even better. This is why I think Qt will continue to be strong and - after the shakeout happening now - to grow in both the Free Software and the commercial development spaces. Qt reputation with decision makers has been damaged, though. They regarded it not only as stable from a software point of view, but also as being trustworthy from a development process and maintenance point of view. This image has been severely tarnished. So for now, the Qt market will shrink because mobile users will leave, and it will recover and grow at a slower rate afterwards due to the reduced willingness of developers and decision makers to invest in it. The change of pace might be a good thing for Qt itself after the recent coding marathons it went through. The trolls will work hard on keeping Qt the best and one and only true cross-platform UI toolkit on the planet. I wish them all the best for the turbulent time to come. Hug a troll, everybody!

About KDE - KDE as a technology will not be affected much right now. Qt is Free Software and does not change over night. There are enough great new features that KDE still has to digest. Even the longer term outlook of the strategy for Qt only has an indirect effect on KDE. Not many developers joined KDE because of the prospect of Qt on mobile phones, so even the community will remain stable. The development focus of Qt becomes broader again, away from concentrating on features for the mobile space. Whether Nokia will continue to support KDE at the same scale as in the last years is mostly a PR decision, so it is also not related to the more technical aspects described above. It will depend on the friendly relationship that has been developed so far, and how it continues. Nonetheless, the next KDE version will be shipped on time. KDE is in good shape.

About Free Software - Nokia's strategy change is a very sad development in this regard, because it is not just about Qt. Microsoft is trying to prevent Free Software from becoming mainstream in the mobile space. Beside the feeling that it is already too late for that, the process raises the question if such activity against the GNU competition should be concerning the regulators. Antitrust and other market law protects businesses from unfair competition, but unfortunately it does not protect Free Software communities or projects from being bullied. Indirectly preventing a competitor from entering the market, for example, can be a reason for the antitrust agencies to not approve such a partnership, but only if large businesses are involved that are able to prevent the usual market forces from working. This is a political issue, and needs to be brought forward to policy makers. Our interests, those of Free Software as a force to create better working and more competitive markets, are not sufficiently represented there. That is why I will join the FSFE.

Thanks for reading.
http://de.linkedin.com/pub/mirko-boehm/6/49a/113
http://twitter.com/mirkoboehm

Comments

Thank you for this detailed post. Interesting and informative.
There are many changes coming, I'm sure the outcome will be interesting!


By gaboo at Wed, 03/02/2011 - 08:37

Great article, and nice analysis!

> Beside the feeling that it is already too late for that,
> the process raises the question if such activity against
> the GNU competition should be concerning the regulators.

I'm not so convinced that the "That was not fair!" lobby takes us where we really want to be. When you play a game, your opponent will make their moves as well. That's their job. They don't sit still, waiting for you.

Marking a move that hits you as "unfair" is something to use carefully. It can be effective in some cases, but we have to remember this is a game where both parties make a move (think chess). When you complain about your opponent, it's "whining" or "playing the victim" instead of winning. Playing a game "not to lose" is a bad strategy, and not well suited when want to establish more market share. Let's rather make sure we have our pieces and strategy worked out, so a blow against a major pillar (in this case Nokia) doesn't take the whole system down. There is a lesson to take here, or we could eventually end up in the same situation again.


By vdboor at Wed, 03/02/2011 - 13:14

Thanks for your response, vdboor. Indeed, whining about the situation brings neither respect nor success. On the other hand, there is existing legislation that protects businesses from unfair competition (at least in Germany, where I live). There is no such thing for Free Software communities. Raising awareness that the playing field is not exactly level is necessary, I think.


By Mirko Boehm at Wed, 03/02/2011 - 21:22