About 8 years ago I started using Linux as my main operating system. In the world of free software is usual to find that there are many options, because there are several distributions, several browsers, several music players, etc. So even if you start using one of them at random, you happen to make choices that can define your future. In my case I chose KDE as a desktop environment and the related applications, and later on, when I had to learn GUI programming on Linux for a university project, I chose Qt. It was a happy coincidence that KDE is based on Qt. Since then, I have been a Qt and KDE enthusiast because of its technological merits, and I've been following with both joy and concern, and with both praise and criticism the good and the bad things that happened revolving this platforms.
One of the things that worried me most the last years, was when Nokia acquired TrollTech, the company that created and developed Qt. As other KDE users, it was unclear if Nokia would still be interested in developing the features that don't make sense in phones. Or even worse, we weren't sure if Nokia would be still be interested in releasing new Qt versions with an open source license at all. There was a positive side in the acquisition, and it was that there was the possibility of seeing Qt heavily used in Nokia devices, be it from software coming from Nokia, or from third parties.
So after TrollTech was absorbed by Nokia, it was only logical that I started following very closely Nokia's movements, and I started learning more and more about Nokia devices. When I thought about it, I realized that both me and my relatives were already heavy Nokia users. At the time I was kind of happy using a Nokia N81, a device that still has some features that my actual HTC Desire doesn't have (which proves that no platform is perfect), and devices with large touchscreens were kind of new.
Now three years have passed since that buyout, and I think that Nokia has done way more good to Qt than I could initially imagine: they have opened repositories, bug tracking systems, moved license to LGPL, started a process to allow external contributions more easily, and some more. Qt will also move to an open governance model during this year, which will make Qt almost like other open source projects.
With Nokia doing good to one piece of technology that I love, I can't avoid wishing them success with their business, because if they make money while at the same time they nurture freedom in software, it's a win-win for everyone. This made even more sense day after day, because during this years Nokia has demonstrated that is the company more in favor of open source of the whole industry (specially after Oracle bought Sun), which makes a lot of sense for a company interested in selling exciting and powerful devices: make the software a commodity. And is exactly this, Nokia selling devices, the issue that I want to write about.
Nokia's market share trend
According to the report of Nokia's Q4 2010, the company is growing, winning money and making profits. They are the company that sells most phones in the world, and by a reasonable margin. A research firm named Canalys claims that in the high end range (the smart phones), they have lost the first position, but others like Gartner and IDC say that they are still the number one. What is impossible to deny, is that Nokia is losing market share at an unacceptable speed, and it's not a new trend. Nokia's recent past (2 or 3 years) shows the company is doing a little bit worse with respect to the competition year after year. This is a fact accepted by everyone, and the very same company is reacting to this. Last September the company changed the Chief Executive Officer and now Stephen Elop is in charge.
So the company is troubled. Why? Is there a single factor, or there are serious problems in all aspects that the company exposes to its customers? I will focus in software, but not completely. Some professional writers are analyzing Nokia as if software is the only problem. I will like to point out some thoughts that show that a complete drop of their software stack will still be not enough, and that possibly proves that the company has become lazy and complacent, with not enough self-criticism. I would also like to stress the fact although software is the main problem in Nokia, I think that the company is in the right direction, so a change at this point would mean going to a non-optimal destiny. The main problem of Nokia is the lack of stability and speed (the first probably causing the second) in the execution of their plans.
It's very hard for me to evaluate services. I'm a geek that runs his own server, with his own blog and his own email there. I've had really bad experiences with being dependent on a third party to grant me access to my data. So I can't write a balanced opinion about how good or bad are Nokia's services. It certainly makes sense to integrate online contacts and calendar services with your phones, and I don't have a doubt that locking in your customers is great for business, but I think it's completely unethical exploiting the lack of understanding of how technology works of your non-technical users. I don't even know the details of how those Ovi services work (and if they lock-in or not), so I will comment only on the remaining Ovi services.
The Ovi Store has many problems. One is simply its youth, so the store is not full of content, but this is fixed with time and patience. Other issues might be addressed by the software stack (if your OS is hard to develop for, this service will be awful). One complaint that I've read from publishers, is the complicated process that one has to pass through to see your application added to Ovi. How packages are signed has improved a lot, which is great, but still some had to wait a really long period for the application to be approved. One clear sign of disappointment is that as of right now, the Ovi Store doesn't accept applications coded with Qt 4.7 (only 4.6), released in September. Given that the highlight of 4.7 is a new framework for creating mobile user interfaces, this tastes like a serious failure in the speed of execution. In the Qt Developer Days, the Qt developers said that Qt was running nice on Symbian, but that the Ovi Store wasn't ready for it. Both Nokia Beta Labs and third party developers have shown impressive videos of good applications with an important graphical appeal, all based in Qt 4.7. All this excitement is unreachable to Nokia customers if they buy right now a Nokia device.
Ovi Maps could be a powerful magnet that attracts customers to Nokia. NAVTEQ is an important asset for Nokia, but it's very hard to find your maps application compelling enough when you have to compete with Google, because the search giant can layer useful information on top of it. There is also a little competitor that I think that over the years has many chances to become the killer of proprietary maps, and is of course Open Street Map. Maps change often, but in very small increments. So when something is added to Open Street Map, is hard that a competitor can do better than that. A street is a street, and a road is a road, period. The rate of growth of Open Street Map is a threat to NAVTEQ, and is likely that OSM becomes the next Wikipedia, so if I were Nokia I would try to exploit this, making a smart integration of my proprietary solution with open and reusable data. I've seen Android applications that mash up Open Street Map with Wikipedia and Wikitravel to create something that is not Google Maps' main strenght: offline capabilites (a serious added value when you travel through Europe and you don't want to use data when roaming). Seriously, think ahead, and plan accordingly.
Seems like all analysts and bloggers are almost completely happy with Nokia's hardware. I agree that Nokia excels in this facet, but I fear that software problems have distracted attention from some important problems in hardware decisions that in my very humble opinion, show that maybe the problem is not the software or the hardware per se, but instead the decision making.
First, when Nokia started shipping devices with a touch sensitive screen, used resistive touchscreens, and only resistive touchscreens. I perfectly remember how Engadget, a popular US-centric technology blog, constantly criticized this choice on Nokia's side, or whoever agreed with them. They were quite vocal about it, and they even were quite biased when reporting on the situation, mocking a blog post in Nokia Conversations. Neither resistive or capacitive touchscreens are the silver bullet, so using only one of them means that Nokia engineers carefully weighted the pros and the cons, and made their decision based on them. I suspected that the cold Finland winter and the important share of Symbian in Asia were the driving forces for this choice, because capacitive screens can't be used with regular gloves, and text input with a stylus is usually better with resistive ones. But Nokia changed this decision, and now only capacitive screens are built on Nokia devices. I'm personally in favor of this technology, and I think that are better than resistive (only by a thin margin, but better). But my point is that Nokia got it wrong in a fundamental design decision of the user experience.
There is another issue that it's worth considering, and is the way the devices are packed, and the amount of space saved during distribution. HTC and Apple manage to cram their device, toghether with the minimum amount of wires and paper, in a very reduced box. The amount of cables included by default in Nokia devices is also worth considering, given that some features are too hard for average consumers to use, like the USB mass storage or the HDMI output support. This makes reasonable to consider that this kind of extras could be purchased separately.
This is the main problem in Nokia. I've experienced below average software with respect to quality, not only on the phones, but also on the desktop tools. The collection of tools is quite complicated to users. Software updater, Ovi Suite, PC Suite, etc. I've experienced fighting against these tools when trying to help my father set up his phone, and he even lost data. Yes, bugs happen, but still the process should be simplified. Apple has iTunes and just iTunes. I know that Ovi Suite is intented to be the replacement, but I still see pages on nokia.com that state that is not a full replacement. This causes confusion to users.
But the tools are not the main problem. Nokia's main problem is Symbian. When Symbian code was released to the public, I've seen an amazing amount of criticism against it, and in several ways. First, one thing that is undeniable is that developing Symbian application has always been a huge pain for developers. You can't deny that the traditional Symbian APIs are limited, old, and more difficult to work with than it's necessary. When TrollTech was bought, everyone saw that as a clear move to make Qt a pretty layer of paint on top of the old wall. But it wasn't only APIs. I was curious about how you developed for Symbian, and I found a huge list of steps that one has to follow just compile and run the trivial "hello world" example. Much had to be done last years, and still much has to be done nowadays. Symbian development on Linux or Mac OS X is still not officially supported, unless you resort to a remote compilation service provided by Nokia.
Another common criticism about Symbian is its internal design. I'm not qualified to talk about that, so I will just mention that I've read debates in several places, and that the amount of critics seems to be always higher than the amount of people who actually think that it serves a purpose these days (not 15 years ago).
But the critical, unacceptable, and undeniable problem of Symbian is the user interface. Symbian's user interface is completely outdated. I can find a ton of details on a Symbian^3 device with PR1.1 (the latest available) that are unacceptable by today's standards. I have menu entries that are completely unintelligible because, once translated to Spanish, don't fit in the available with, so are abbreviated in a way that is impossible to understand unless you know in advance the purpose of the menu. I could go on, but is a topic that has widely been discussed, and it would require several screenshots of both the dialogs, menus, and buttons in Symbian and in other operating systems.
The really sad thing, is that we have seen Symbian applications and tools with compelling user interfaces that sneak out of the old constraints of the old toolkit. Unfortunately all of them used Qt 4.7, and as mentioned before, 4.7 is not yet ready on Symbian (and only Symbian, which speaks pretty badly of this OS).
Symbian's features are not bad though
One thing that surprised me of using a Symbian^3 phone after months of using an Android 2.2 phone, is that it has some features that make a lot of sense, and that I miss a lot in Android. For example, I don't want my phone with the data connection up all the time, because I don't even have a data plan. I can use data, but since I'm usually very close to wireless local networks, I'm not billed if I don't use data at all. Symbian is well suited for this important use case (specially in the medium price range), because if an application requires network usage, and is disabled, it can ask the user about it. The Android market is completely incapable of starting if it doesn't connect to Google's server, so you can not simply check your already installed programs (or just uninstall them for example) if you don't have connection. That's a serious problem for people who spend some time daily on areas with no connection at all. Some android applications suffer from the same issue: if you want to invoke bluetooth, but bluetooth is disabled, the applications simply fail.
Also, Nokia devices ship with in-device voice recognition, maps, and dictionary. Android is designed by Google for having you dependent of their cloud systems. In a recent travel that I did to Paris, I spent a considerable amount of time (and some money) finding Android applications that could provide those services offline, because I thought it was completely inappropriate to rely on having connection, and paying expensive fees because I was roaming.
So yes, Symbian still has some merits.
Lack of clarity with Qt based frameworks
When Maemo started moving to Qt, some community members expressed their concerns. It seemed that for the new UI framework, Maemo will use a widget set, while for Symbian, another different set of classes would be used. That made some sense, because different platforms might have different needs and targets. However, the way it was done seemed like it would be kind of impossible to have an application running on Symbian and on Maemo (and/or a regular desktop!) without a rewrite of the user interface. Finally, from what I understood, almost everything was dumped, and the only recommended way for third parties to develop applications, was use Qt and Qt Quick (QML). Qt Components would be created to allow some reusable and consistent set of user interface elements with the same look and behavior.
The "DUI" framework for Maemo was renamed MeeGo Touch Framework, and still exists and is developed, but is deemphasized, and is probably only used for the primary user interface, or for the reference MeeGo applications, but not for third parties.
I can't avoid the thought that something went wrong in this whole story. Certainly the situation wasn't ideal to begin with, since even with all the good things that Qt has, for developing more dynamic and less "classic" interfaces, new widgets had to be developed on top of QGraphicsView. That means that probably some of the original design could not wait for such a long time, and an intermediate solution had to be found. It's hard to know from outside, but I have the feeling that the problem wasn't solved the best way it could.
Should Nokia dump its software stack?
Till now I described a bunch of stuff that happened some time ago, and I expressed a lot of opinions that I had during this years. It's been a long write, but it was burning me from the inside, and I had to take it off my chest. Now I will focus on the thoughts, events and rumors that this week have ensued. This set of rumors state that Nokia could this very week do a huge change in its software strategy, and that it might be a day to remember in the history of the company, or even the whole mobile industry.
Everything started when Stephen Elop, Nokia's new CEO, discussed the fourth quarter results with the investors. Nokia Conversations, the official Nokia blog, quoted the following (among other things):
The game has changed from a battle of devices to a war of ecosystems. [...] The emergence of ecosystems represents the broad convergence of the mobility, computing and services industries.
[...] At the same time, we see a different type of ecosystem building around mid-range-to-low-end devices in developing markets involving very low-cost components and manufacturing processes. In this range, brand, scale, price, design, distribution and speed are critical.
[...] we must believe that our strategy simultaneously increases our success in markets where we are strong, while re-opening doors in markets where we are weak.
Nokia must compete on ecosystem to ecosystem basis. In addition to great device experiences we must build, catalyse or join a competitive ecosystem. And the ecosystem approach we select must be comprehensive and cover a wide range of utilities and services that customers expect today and anticipate in the future.
Whatever the strategy is we outline on Feb. 11, we very clearly ensuring that it will give us the opportunity to reopen markets such as the U.S. and some others, where we have not recently been present.
This quote has created an amazing amount of comments on tech sites. Even
sites that don't report on Nokia often because its small US market share, had
to mention it, specially the phrase
we must build, catalyse or join a
competitive ecosystem, with a special emphasis on the possibility
of joining, even though is only one of the possibilities.
But things got even more interesting. Engadget published a text that they claim is an internal memo written by Stehpen Elop, and they repeat that have sources that confirm the content.
This seemed to confirm some previous speculations from the New York Times about a partnership between Nokia and Microsoft. And only one day before the leaked memo, Bloomberg and the Wall Street Journal mentioned that on Friday the 11th of February, Nokia's Capital Markets Day (yearly investor event), it will be announced.
But, does this mean that Nokia is going to move to Windows Phone 7? Is this feasible? Does it make sense, at this point, when (as stated before) Nokia is despite all its problems, the first phone and smartphone seller? Let's think about the candidates.
At some point seemed likely that Nokia could buy Palm when they were in a desperate situation, but HP did it first. webOS shares with MeeGo a large part of the stack. Both are Linux-based, and unlike Android, use the standard userland of regular Linux distributions. Even more: it was discovered that webOS uses Qt 4.6 internally. A merged webOS/MeeGo could give some impressive features.
But now is likely that HP wants webOS for their own. And I wish them luck, because they say that are going to put webOS on regular PCs. I always wished that Nokia and Intel partnered to create a MeeGo laptop and hit back at Apple and Microsoft.
From time to time I read the comments of the technology sites, and from them I extract the conclusion that it seems that every American wants Nokia to build Android devices. Android doesn't share such a large piece of the stack with MeeGo, but both Android and webOS have in common that is possible to port Qt applications to that system. An unofficial port (that it seems is made almost by a single individual in his free time) looks very promising. In that regard, this would make sense. No mather if Google likes it or not, Nokia could grab the last Android snapshot published by them (or the Open Handset Alliance), add the Qt port (once completed), and if Google doesn't want to allow the use of the Android Market or Google Maps, Nokia could add their own solutions. Nokia is not as dependent as other Android manufacturers. Of course such a move would still be a minefield to walk through. Companies that want to be on the right track with Android must work with Google, not against (as they don't have an open development model, unlike Nokia and others have right now with MeeGo).
Windows Phone 7
Moving to Windows is a radical change. It means dropping all the know how of the company. It means dropping all the existing code for all their existing services. It might even mean completely dropping almost all their services! The more I think about the rumors of Nokia going the Windows Phone 7 route, the more I think is unlikely. It might be possible that Nokia builds one or two devices for Microsoft, but more as a move to gain some sympathy in the US market than anything. If Microsoft does all the software work, and Nokia just designs and builds some hardware, it might be something not as radical as the rumors point to. But it can't be medium term plan. The market share that WP7 has gained is really low right now. Adding Nokia hardware to their device catalog doesn't seem a huge gain for Microsoft either.
If I had to bet money, I would say that it's not going to happen. If you read again Elop's quote from Nokia Conversations, he mentioned mid-range-to-low-end and emerging markets, while Microsoft's system requires high end hardware. Nokia could drop Symbian and MeeGo and still keep S40, but I fail to see how Windows would work on the mid range.
By the way, Nokia has already partnered with Microsoft, and they had some agreements about services, and licensing some technology like Active Sync. A software agreement between the two could be in the same line, instead of an agreement on the operating system to use.
Nokia joined with Intel just one year ago to combine Maemo with Moblin. Since then, neither company has released a device running this OS, which is certainly a disappointment for many of us. From what I've seen in the MeeGo mailinglists and IRC channel, Nokia dropping MeeGo on the Capital Markets Day would be a big surprise. Even if they decide to build some device with another system, Nokia has been investing on Qt and MeeGo a lot recently. It seems that they still have several job offers for working on MeeGo. They also publicly stated that they will be developing the MeeGo style of Qt Components behind closed doors for a while. This seems like the preparations for a new release, not for abandoning the project.
MeeGo is their best choice for gaining again the appeal in the high end. When a MeeGo device begins shipping, will begin with a good amount of content in the Ovi Store, given that applications created with Qt and only tested on Symbian will be easily available on MeeGo at the same time without a rewrite. Nokia could also see benefit that content on the Ovi Store is more suited to their actual customers. It's surprising and disappointing that I've seen almost no content at all on the Android Market translated to Spanish (a language with a huge number of speakers).
MeeGo also has the potential to save costs to Nokia in the long term. Since MeeGo uses technologies that already others are interested in developing, they can cut costs. They also have some support form Intel (and I suppose that AMD at some point), plus a large number of small companies and individuals.
Not only that. As I expressed before, MeeGo has the potential to reach not only phones and tablets. It's an OS that can be installed in any kind of device. I've always thought that TVs are devices that could behave as a hub of multimedia content, as well as some added functionality that today's phones are providing possibly not in the best possible way (e.g., video conference).
Not only I hope that MeeGo will not be dropped. Is that I think that dropping MeeGo would be a nail in Nokia's coffin, because with Symbian in a bad moment, and without your own ecosystem in the high end, Nokia would become LG or HTC: just an OEM.
I've always been bad doing predictions, but I've given this so much thought that it's worth a try.
- Nokia will not drop MeeGo. Maybe even shows something about it, but not on a real device.
- Symbian might be dropped faster than was planned. I always thought that the fact that the N8 was the last N-series device with Symbian, was the clear sign that Nokia was using Qt to facilitate the migration from one platform to another.
- The Symbian PR 2.0 will be previewed or announced. Maybe even Qt 4.7 applications will be shown, which will give fresh air to Symbian.
- The company will suffer changes in management. Some people might change, but a more serious reorganization will happen. The company might change its base to Silicon Valley with the intention to move faster. It's even possible that the company is somehow split to facilitate a fast paced development of each one of the pieces.
- The agreement with Microsoft, if there is any, will me less exciting than everybody thinks. If they show an agreement related to Windows Phone 7, it will be limited in either time or space. That is, Nokia might do Windows phones, but only for North America, or only during a limited time frame, until MeeGo is ready for primetime.
This text was written during the week of the 7th of February 2011, in preparation of the Capital Markets Day on 11th. It's been published the same day, but hours before, and probably will receive fixes and minor additions because it lacks the proper review that a text of this lenght requires, but in any case its meaning will be changed, because its purpose was trying to analyze the situation, extract a deep opinion about it, and even try to predict the near future.