Musings on Mobile Software
What Happened to Nokia?

On February 11th, one of the giants of the mobile world gave up control of their own fate and put it into the hands of Microsoft, the desktop software behemoth that has never managed to get a solid foothold in mobile.  How did that happen?  Did it really have to happen?  What will be the results of this bizzare marriage?

The well known history

Nokia has a global lead in smartphone volumes with Symbian.  They created the first ever smartphone with Symbian and had 100% market share - it was bound to decline! They’re just on the brink of being passed by Android with something like a third of the market each (and no, it didn’t happen in Q4 last year).

Nokia have struggled to refresh the UI on their Symbian devices and bring new innovations to market in the last few years.  They’ve been creating the Maemo/MeeGo platform as an alternative to let them move faster at the high end.  Unfortunately, they haven’t been fast enough, they’ve been losing market share at an alarming rate and they’ve ditched their plans in favour of Windows Phone… or have they?

What they actually say they’re going to do

Well, what they’ve said in the strategy announcement and subsequent developer events is that they’re going to finish refreshing the Symbian UI and finish the first proper release of MeeGo and get a device out, then switch to Windows Phone.  So Elop either believes they can’t execute on their plans over the next year successfully, or there’s something a little deeper going on.  Probably a bit of both.

The little known history

Nokia were riding high in smartphones before the iPhone but they’d already realised their internal development was fragmented by incompatible frameworks across platforms and had started consolidating.  First they dropped Series 80 and 90 and consolidated the Series 80 form factor into the S60 UI (in the E90).  Next they tried to figure out how to do cross-platform software development in order to increase their R&D efficiency.  Then the iPhone struck and finger operated touch UIs were THE thing to have.  Having just consolidated UI frameworks and trying to go further they weren’t likely to build a new one or resurrect the old, so they added touch support to S60. This was predictably (easy to say with hindsight but I did also at the time, honest) a big mess.  There was also the issue of fingers being useless for input in some of Nokia’s big markets, and resistive touch technology being cheaper than capacitive.  Easy decision to go with resistive, no?

Trolltech was acquired to solve the cross-platform problem but it was the wrong technology for the new UX.  When the painful process of porting Qt to Symbian was completed, emulating the existing S60 5th Edition UI components, they still didn’t have a competitive UI toolkit.  At this point I’m sure there remained some important folks in Nokia who didn’t believe 5th Edition was that far behind the iPhone.  The trolls of course, being exceedingly smart and great engineers, realised they had the basis for animated mobile UIs but needed to build a better framework that allowed designers to design and engineers code.  The wonder of QML was being created by a small crack team within Nokia.

Unfortunately not everyone was on board with the ‘trolls as Nokia saviours’ plan.  There’s also not much you can do to accelerate the kind of work going on in the creation of a new framework.  While the Trolltech acquisition was ongoing a team of Nokian’s had created an alternative native Symbian animated UI framework and another team built the Maemo 5 UI with GTK+.  The Symbian version, named Hitchcock/Alf had horrible APIs to code for and an evil back end architecture.  As such it was doomed to failure.  There are however, a few applications re-written with it in Symbian^3.  The Maemo 5 version was known to be a dead-end to be replaced with a Qt-based UI very early in its development too.

However, the directive from the top was Qt is the future, so the Symbian devices folks that had failed to build a decent new Symbian UI framework started re-building the S60 framework (Avkon) with Qt - an open source project known as Orbit and then renamed UIEMO.  From the outside it seems there was no proper requirement spec for this new framework and the engineers were incompetent.  Now by that I don’t mean that they’re incompetent engineers - far from it.  They were incompetent at designing APIs for 3rd party developers (a very specialist engineering skill) and they were incompetent at desiging UIs (which most engineers are, myself included).  Unfotunately they were doing both as evidenced by the code and the comment of one Nokia designer at a Symbian Foundation meeting who was publicly cornered into revealing that the S^4 UI design patterns had been reverse engineered from the code.

The Maemo/MeeGo folks also built their own new UI framework with Qt, libdui.  I didn’t look at it in detail but a strong MeeGo supporter reviewed both and concluded that the Symbian version was more mature.  A Nokia insider whose opinion I respect also told me that libdui was a complete mess.  The higher-level problem is that both teams had built the wrong thing.  They built frameworks for their own platforms on top of a cross-platform framework.  Both tried somewhat to make their frameworks cross-platform and presumably replace one another as THE framework.  Both got canned - technically libdui lives on in MeeGo but it is deprecated before launch.

There’s a common mis-conception that Nokia wasted a lot of time opening the source to Symbian while Apple and Android were running away with the market.  This is simply nonsense.  The IP checks and configuration management changes would have taken at most a couple of weeks on average for every developer in the Symbian development organisation (some will have done a lot more while others weren’t involved).  On the other hand between these two phases of dead-end UI framework re-invention and the apps built on top of them there must have been a couple of thousand man years of development wasted.  This was a horrific management faliure in both not breaking down the technology strategy even a couple of levels to the point where everyone was on the same page and not recognising the problem and fixing it much, much sooner in the development process.

The slowest “quick fix” ever?

Symbian^3 was intended to be a quick fix to remove the worst niggles in the UI while a replacement UI was in development.  As such, the decisions to include a new comms framework, a new graphics architecture and re-written UIs for several applications using a new but dead-end UI framework were “interesting”.  I don’t know how much was originally planned and how much added as it became clear S^4 was late but with a fragile UI layer this was bound to cause delays.  This undoubtedly hurt Symbian device sales heavily in the first 3 quarters of 2010 - particularly at the high end, Nokia simply didn’t have a competitive device and had to price cut aggressively to prevent even heavier market share declines than they saw.  The plus side is that S^3 is in pretty good shape for further Qt-based updates to improve the UI.

A glimmer of hope

When Anssi Vanjoki took charge of the device creation at Nokia last summer it seemed that he managed to put the ship back on course.  The badly built frameworks got canned and the focus moved to QML to rebuild the UI.  The device roadmap was slashed to simplify platform development, reduce costs and enable the much needed promise to provide continuous firmware updates to S^3 devices and beyond.  Unfortunately Vanjoki’s reforms came just before Stephen Elop was given the CEO’s role and he walked out in protest (FWIW, I don’t think Vanjoki would have made a great CEO for Nokia but he was a big loss).

The three options!?

Elop started out looking at the company’s position (rapidly worsening market share and profitability) and options, apparently with the help of some external consultants.  Nokia’s current strategy was slightly complex because they were trying to solve some tough problems.  They needed a new platform but couldn’t just start from scratch without risking alienating their existing customers and developers along the way.  They needed a UI that was fresh and improved but still somehow familiar.  They were also looking to move smartphones way down market into the sub-$100 segment.  At the same time they needed their software to be easily portable across hardware platforms, to give them more flexibility and shorter product cycles.  The market needed an alternative to Google & Apple - Nokia’s biggest customers (i.e. the worlds largest network operators) were meeting to discuss what to do about it.

Oddly, to solve all of this Elop’s strategy options were narrowed down to three:

1) Keep going with the current plan (although it was clear some changes were needed to the software development organisation!)

2) Android (surely never a real option unless heavily forked - networks would rather buy a mix of devices from smaller OEMs than have a combination of Nokia & Google as a supplier!)

3) Microsoft’s Windows Phone (doesn’t solve the familiarity problem, doesn’t solve the portability problem, doesn’t currently scale down to the low end, alienates the current developer base - Ovi Store is 2nd or 3rd on most metrics).

From a technical perspective this seems an extremely shallow selection of potential options on a 1-2 year timeline.  On a purely superficial level (i.e. without this kind of analysis) it also looks like an easy choice to drop the in-house platforms.  With Google as most dangerous competitor and an ex-Microsoft exec at the helm, the Windows Phone option seems pretty obvious.

High stakes poker

It might seem from the outside as if Nokia has struggled for a long time to refresh their UI and made little progress.  The majority of comentators, including many who should know better, often equate the UI with the OS.  It’s fairly natural to conclude that another 6-12 months won’t help and the OS has to go.  Updating the UI on Symbian where much of the look and feel was actually constrained by the S60 framework was indeed very difficult.  With QML in place, building a better UI is mostly a case of hiring some good designers (or just getting out of the way of the ones you’ve already got).  With a new UI in place, executed well, the majority of the complaints about Symbian would vanish.  That said, the name has taken such a beating in the press that a re-brand would have been in order.

In the high stakes poker game that is the smartphone market, you could say Nokia had a hand that was promising, they just needed one more good card and a potential winner was theirs.  You might be tempted to say that they’ve instead thrown out the whole hand on a big gamble - stretching the metaphor you might say they’ve taken the hand of the rich player across the table who’s been losing heavily all night instead.  As I noted above, that’s not quite right - they’re playing the hand they’ve got for this round and joining forces with the rich loser across the table for future hands.  This is a strategic move looking further ahead at the other players that have recently come to the table and the piles of chips they’ve got sitting next to them.

How big a gamble is it?  Technically there’s not a lot wrong with Windows Phone.  Microsoft solutions have been kept out of the market because of distrust from the OEMs and networks.  From a developer perspective it’s a step backwards.  The Microsoft tools are excellent but, to quote someone else’s exceptionally well chosen words:

They basically need access to everything that the underlying OS has to offer plus interfaces to the applications that ship with the phone.

Windows Phone 7 is worse in this respect than Nokia’s current platforms and even the current state of Qt Mobility.  Changing the policy on unmanaged code could help and there are bound to be additional APIs in the version that Nokia eventually ships.  The browser could be a sticking point - Microsofts’s new mobile browser UI is decent but nobody in the mobile web world really wants to have to code for IE when all the other platforms are shipping something based on WebKit.  Operationally it’s an enormous risk.  Not many of Nokia’s existing staff will be easily motivated to work on Windows Phone devices.  Time to market is critical to avoid bleeding much more market share after announcing end-of-life for Symbian (I’ve already heard of phone shop staff telling people they should by Android instead of Nokia because the Symbian platform is being killed off).  Flawless execution is essential to reverse market perception - this is something both companies have a fairly poor record on in recent history.

So, why jump?

This is something I’ve been trying to figure out since the announcement.  Also the related question - why announce it now, bringing the Osborne effect into play and demotivating the very people who will have to keep the money rolling in until the Windows Phone devices are ready?  A possible management psychology is explained well by asymco - burning the boats.  Google and Apple are very rich - Google’s revenue stream is not currently dependent on their mobile efforts and Apple is camping in the premium space where Nokia have historically made a big chunk of their profits (which they’d really like right now to fight Google).  Apple will not be easy to displace - the biggest hope there is a shift in fashion which they fail to respond to because they think they know best.  Google can clone and give away any services Nokia hope to monetise to regain profits until they’ve bled them dry.  Microsoft has a big pot of cash, revenue streams from the desktop and server world that will be around for several years yet and strong movtivation to avoid irrelevance.

However, Microsoft seems to gain a lot more from this deal than Nokia, plus Nokia is taking the lion’s share of the risk. Now we don’t know all the details of the deal yet and maybe Nokia feels fairly compensated for this risk with many billions in marketing support and cash to developers to build out the app offering?  There is also the fact that Nokia has a large US institutional shareholder group.  Most of those investors probably have a larger holding of Microsoft than they do of Nokia.  Although risky, it’s very possible that the deal is value adding for the pair, even if the bulk of that value shifts to Microsoft longer term as Nokia have given up control of the platform (and the software and services is where the bulk of the value is, not the hardware).  This kind of thinking has caused some to speculate on a future acquisition.  Personally I don’t see why Microsoft would need to - they’ve got what they want for now.  If it doesn’t work they’ve made a relatively small investment on top of what they’re doing anyway, plus buying Nokia would probably put other Windows Phone licensees off.  If it succeeds and Nokia is left with a marginally profitable smartphone business then Microsoft wins!  They only buy Nokia out if they try to shift to another platform to make more money.  If Nokia is left with a sub-profitable smartphone business and Microsoft is doing well out of it they can either subsidise further, or buy Nokia and strip out the other parts of the business.  Microsoft is risking little, they’ve already tried putting their weight behind all the other major OEMs at some point and got nowhere - once bitten, twice shy.

What I don’t buy is the argument that Apple and Google were innovating too fast for Nokia to keep up.  Apple put a lot of existing innovations together with a few tweaks of their own in a very well thought out package, with their usual excellent attention to detail (and characteristic control-freakery).  Since then they’ve added almost nothing that wasn’t just playing catch up to things they left out in the first dash to market.  Google’s first version of Android was frankly poor - since then they’ve done a great job of copying all the bits they were missing from elsewhere very, very fast indeed.  This is a lot easier than bringing new innovations to market!  If anyone strongly disagrees I’d love to have some genuine innovations from Google and Apple in the updates to their original releases pointed out in the comments.

The other possible reasoning is in Stephen Elop’s key phrase “sustainable differentiation” - with Nokia’s former open innovation strategy it was never clear how they’d maintain differentiation from the Chinese OEMs.  The plan was with additional services but, maps aside, they were failing very badly with efforts in that area.

What to expect next

Nokia has to try to migrate customers and developers.  Their Symbian UI refresh efforts should to start to move their existing customers towards a Windows Phone look and feel.  They should probably add a Silverlight runtime to as many of their devices as possible via firmware updates too and of course include it in new devices.  Maybe there’s something wrong with the Silverlight runtime for Symbian but so far the message is still strongly one of Qt for Symbian.  Possibly this signals a future for Qt in the expanded budget for Series 40 within the mobile phones unit.  In that sense, Series 40 could become a lot like Samsung’s Bada.  A feature phone platform with a sandboxed native application environment on top - a kind of feature phone/smartphone hybrid.

The other thing to watch out for (possible but not probable) is opportunistic poaching.  There will be a lot of Nokia employees who were very upset by the change in direction.  Many good people will leave and competitors have already been taking the opportunity to tempt some away.  On a larger scale, someone could set up an office in Oslo, make a decent offer and tempt enough of the Trolls away to fork, or at least gain significant control of Qt.  There’s already a semi-offical endorsement of the Qt-Android port on the Qt labs site - I doubt that would have happened with the old strategy still in place.  Google could pull in a lot of Nokia’s developers by adding it to the Android NDK, or RIM could have a credible native enviroment on top of QNX for their next generation platform.

In the slightly longer term I’d also be looking out for a strategic response by the networks - the main platforms going forward will give them very little control compared to what they’ve been used to.

Conclusion?

I still don’t know what to make of it.  I feel for the people that have been negatively impacted by this move.  I really wish that Nokia still had the sisu to go it alone - they’re clearly not the great Finnish company I once worked for.  The mobile market is a big and interesting space.  I find myself agreeing once again with asymco - there’s plenty of room for another disruptive challenger.  At the moment the most likely candidates are RIM or HP’s evolution of WebOS. Both are big and capable but that kind of scale isn’t essential either - there’s plenty of money to be made for people with the right vision and execution.

  1. ricardocamargo reblogged this from mobilesoftware
  2. acetechindia reblogged this from mobilesoftware and added:
    software development company in delhi
  3. mobile-phone-specifications reblogged this from mobilesoftware
  4. mobileordering reblogged this from mobilesoftware
  5. governmentproposals reblogged this from mobilesoftware
  6. concrete-floor-cleaning reblogged this from mobilesoftware
  7. online-fundraising reblogged this from mobilesoftware
  8. tgadget reblogged this from mobilesoftware
  9. chat-support reblogged this from mobilesoftware
  10. prowthish-istoselidon reblogged this from mobilesoftware
  11. optikakatasthma reblogged this from mobilesoftware
  12. theeasytech reblogged this from mobilesoftware
  13. african---mango reblogged this from mobilesoftware
  14. bryllups-fotograf reblogged this from mobilesoftware
  15. trampolinereviews7l reblogged this from mobilesoftware
  16. alicante-turismo reblogged this from mobilesoftware
  17. nokialebanon reblogged this from mobilesoftware
  18. thomas-1984 reblogged this from mobilesoftware
  19. russischetastatur24 reblogged this from mobilesoftware
  20. business-news-time reblogged this from mobilesoftware
  21. mobilesoftware posted this
Blog comments powered by Disqus