Category Archives: microsoft

Qualcomm: optimising for Windows Phone took years not months

I had a chat with Qualcomm’s Raj Talluri here at Mobile World Congress in Barcelona. Of course I asked about the Nokia-Microsoft deal and the implications for Qualcomm. Currently Microsoft specify Qualcomm’s Snapdragon as the required chipset for Windows Phone 7 devices: good for Qualcomm, not so good for Microsoft since it means competing system-on-a-chip vendors like TI and NVidia are putting all their efforts into Android or other mobile operating systems.

“We are extremely pleased and we are very optimistic that it will bring us additional business.” said Talluri about the Nokia-Microsoft alliance. That said, might Nokia in fact choose a competing chipset for its Windows Phone devices?

It might; but the issue here is the work involved in optimising the hardware and drivers for the OS:

If you look at Windows Phone, there’s a lot of custom work we did with Microsoft that makes Windows Phone 7 really shine on Snapdragon … the amount of time we spent in getting those things optimized, it’s been a multi-year effort for us.

If you put this together with Nokia’s announced intention to ship Windows Phone devices this year, it is hard to see how it could use a chipset other than Snapdragon.

That said, those other vendors might not agree that it would take years. When I asked about this, NVidia gave me the impression that it could do the work in a few months, if there was a business case for it.

Still, it is not a trivial matter, and adds potential for delay. I think we should expect Nokia’s first Windows phones to run Qualcomm chipsets.

If the Windows Phone ecosystem builds as Nokia hopes, other chipset vendors may get involved. Then again, what are Microsoft’s plans for the Windows Phone OS long-term? Might the underlying Windows CE OS get scrapped in favour of something coming out of the Windows on Arm project? Silverlight and XNA apps should port across easily.

That is a matter for speculation, but the possibility may deter other mobile chipset manufacturers from heavy investment in Windows Phone support.

Nokia’s Elop fears mobile duopoly, but it is already here

It is day two of Mobile World Congress here in Barcelona; and everyone is pondering the implications of Nokia’s Windows Phone partnership with Microsoft. It is a pivotal moment for the industry, but not necessarily in the sense that the two partners hope.

Let me state the obvious for a moment. This is not good for Nokia, though it might be “the least bad of all the poor choices facing Nokia”, as Mikael Hed of Rovio (Angry Birds) put it yesterday. Nokia has huge market share, but it was already falling sharply, as these figures from late last year illustrate. Nokia’s total market share declined from 36.7% in Q3 2009 to 28.2% in Q3 2010; and its Smartphone (Symbian) share from 44.6% to 36.6%. These are still big numbers, but will inevitably decline further.

Following last week’s announcement, though, Nokia will transition from a company which formerly commanded its own destiny with Symbian, to one that is an OEM for Microsoft. The savings will be substantial, as CEO Stephen Elop noted at the press event here on Sunday evening, but it is a lesser role.

Why has Nokia turned to Microsoft? It is not a matter of Microsoft planting its own man in Nokia in a desperate effort to win market share. On Sunday Elop said he was no trojan horse, and also laid to rest rumours that he is conflicted thanks to a large Microsoft shareholding; he is selling as fast as the law allows, he said, and his shareholding was nowhere close to what was alleged in any case.

Rather, the Nokia board brought Elop in specifically to make tough decisions and likely form an alliance with either Google or Microsoft. I am not sure that former Nokia exec Tomi Ahonen is the best source of commentary – he is unremittingly negative about the alliance – but I like his piece on the choices facing the board last year, when it must have decided that MeeGo, the mobile Linux co-sponsored by Intel, could not deliver what was needed.

Elop chose Microsoft, his argument being that the choice was between Android and Windows, and that going Android would have created a duopoly that was good for Google but bad for the industry. By going Windows Phone “we have created a three horse race,” he said.

It is a fair point as far as it goes – though maybe he takes too little account of RIM, especially in the enterprise market – but whether Nokia can really break that duopoly is an open question. It is not a question of how the duopoly can be avoided: it already exists.

image

Given the absence of Apple, this Mobile World Congress could almost be called the Android World Congress, such is the dominance of Google’s mobile OS. It works, it is well-known, it is freely customisable by manufacturers and operators. Android is not perfect, but it is a de facto standard which nicely meets the needs of the non-Apple mobile industry.

This morning three significant far Eastern manufacturers announced new Android devices; none announced Windows Phone devices. The three are HTC, Alcatel Onetouch (which claims to be the fastest-growing handset provider in the world), and Huawei. At the Alcatel Onetouch press conference I asked CEO George Guo why his company was focused on Android:

Why Android? Android is a phenomena. It is what every operator wants and also what the consumer is looking for. The iPhone is great but just has one type, and also it is highly priced. People want something different so are looking for variety. Android-based phones provide that opportunity. With Android phones you can range from $100 up to several hundred. Also we can make customisations based on the Android system. We can fit different kinds of customers’ needs. That’s why, from the whole ecosystem point of view, because recently (laughs) people talk about this a lot, we think that Android does provide quite an ecosystem.

Note how Guo (unprompted) makes reference both to the other member of the duopoly, Apple, and the new pretender, Microsoft/Nokia.

However good their products, rivals such as RIM with its new QNX-based OS and HP with WebOS will struggle to compete for developer and public attention.

Does Windows Phone have better chances? If Nokia could easily translate its Symbian sales last year to Windows Phone sales next year, then sure, but that would take a miracle that beleaguered Nokia is unlikely to deliver. Windows Phone 7, launched last year, demonstrates that despite its desktop dominance Microsoft cannot easily win mobile market share, and that partners such as HTC, Samsung and LG are focused elsewhere. Nokia’s commitment will greatly boost Microsoft’s market share in mobile, but to what percentage is frankly hard to guess.

There are a couple of other unanswered questions. One is about differentiation. In order to compete with Apple, Microsoft has made a point of locking down the Windows Phone 7 specification, despite its multiple manufacturers, requiring Qualcomm Snapdragon for the chipset, specific hardware features, and a relatively unmolested GUI. If Microsoft continues along these lines, it will be hard for Nokia to be truly distinctive. On the other hand, if it abandons them, then it risks spoiling the consistency of the platform.

Another big question relates to tablets. Microsoft has no announced tablet strategy, except insofar as it is not using the Windows Phone 7 OS for tablets and has hinted that the next full version of Windows  will be tablet-optimized. By contrast, both Apple and Google support both smartphones and tablets with a single OS; indeed, it is hard to define the difference between a small tablet and a smartphone. Here at Mobile World Congress, Viewsonic told me that a 4” screen defines it: less than that, it’s a smartphone; more than that, it’s a tablet.

What are Nokia’s tablet plans? Will it change Microsoft’s mind, or wait for Windows 8 following meekly in Redmond’s footsteps, or do something with MeeGo?

Elop has also in my view made a mistake in shattering Nokia’s Qt-based developer community. Qt was the unifying platform between Symbian and MeeGo, and could have been the same for Windows Phone 7. Why? Here’s what Elop told us on Sunday:

What is happening to Qt: “Will Nokia put Qt on Windows Phone? No that’s not the plan. Here is the reason. If we, on the Windows Phone platform, encourage a forking between what natively is provided on the Windows Phone platform and Qt, then we create an environment where potentially we could confuse the developers, confuse the consumers, and even create an environment where Windows Phone could advance slower than the competition because we are carrying two principal development platforms.

I respect Elop; but I think he has been sold a line here. Developers are not easily confused – how patronising – and Windows Phone already has a native code SDK, available to operators and manufacturers. Many of Microsoft’s own applications for the phone are native rather than Silverlight or XNA. In principle, there is no reason why consumers would be able to tell the difference. I think Microsoft is protecting its own development stack and sacrificing Nokia’s developer community in the process.

On a more positive note, I do not forget that Elop is a software guy. I think he recognises that unless you are Apple, hardware commoditisation is inevitable whatever OS you choose. Asked about Windows Phone, the Huawei exec at this morning’s briefing said his company would consider it when the next version comes out. What he means is: if the demand is there, they will make it. If they make it, then Nokia is competing with the same economies of scale and labour that apply to Android.

Elop sees an answer in apps, ads and services: the ecosystem about which he constantly reminds us. On Sunday he noted that the partnership with Microsoft includes an advertising platform, and that this is potentially a significant source of future revenue. The new Nokia may be a lesser company than the old, but one that is better able to survive the challenge of making money from handsets.

IE9 in Windows Phone will be good for cross-platform JavaScript and HTML5 apps

Microsoft CEO Steve Ballmer, accompanied by Nokia’s Stephen Elop, showed coming updates for Windows Phone 7 at a Mobile World Congress keynote last night.

A minor update due in early March will add copy and paste, and CDMA support is also coming in the first half of 2011.

The more interesting update is planned for the second half of 2011 – I’m guessing late this year – and will have multi-tasking for 3rd party apps, as well as a mobile version of Internet Explorer 9. We were told that this will feature the same HTML 5 standards support and hardware acceleration as in the desktop version.

Windows Phone VP Joe Belfiore showed the fish demo running on Windows Phone with IE9 alongside Safari on the iPhone. The iPhone fish jerk slowly across the screen.

image 

Note that Apple will likely have a new iPhone out before mobile IE9 is ready, which may well equal or exceed IE9’s graphics performance.

Nevertheless, this is interesting for developers since it means that the fast “Chakra” JavaScript runtime will be available on the device. HTML and JavaScript is one route to cross-platform mobile applications.

Silverlight on Windows Phone includes a WebBrowser control which has access to isolated storage. This means you could write most of your app in cross-platform JavaScript and HTML, but wrap it in Silverlight for access to native phone features.

It is a shame though that Microsoft does not include the Sqlite local database engine found in WebKit-based mobile browsers. Sqlite is in the public domain so this may be an example of the “not invented here” syndrome. Microsoft does not even have SQL Compact Edition in Windows Phone 7, though it would not surprise me if this also appears in the autumn update. Full details are being held back until the Mix conference in April.

Although it has not been stated, it would make sense for this update to be used in the first Windows Phones from Nokia. On Sunday evening, Nokia stated its desire to deliver a Windows Phone device before the end of the year.

Single chipset religion unhelpful to Microsoft-Nokia alliance

Here at Mobile World Congress all the big system-on-a-chip (SoC) vendors are jostling for position, including Freescale, Intel, Nvidia, Qualcomm, and Texas Instruments. Of course Nokia’s recent announcement that it will focus on Windows Phone for its smartphone platform is a big discussion topic; and without mentioning names I can tell you that many of the execs are talking down the announcement and expressing scepticism.

Plenty of reasons to be sceptical; but one of the issues is that Qualcomm’s Snapdragon is currently the only chipset which Microsoft supports. This is in contrast to Android, which runs on all these platforms.

The talk is that Microsoft was forced to specify Snapdragon in order to get its new phone to market quickly. That said, the long-term consequences of this focus are not good for Microsoft, since it has in effect driven all the other SoC vendors towards Android. Much effort goes into optimizing these chipsets for specific software, whether that is an OS, a video codec, or a runtime such as Flash or Java.

Windows Phone 7, or its successors, will not necessarily remain Qualcomm-only, particularly in the light of Nokia’s plans. Right now though, you can understand the lack of enthusiasm for Microsoft’s mobile OS among these other vendors. Even if the policy changes, it will take years before they can catch up, presuming that they want to.

Change the subject to full Windows though, and eyes light up. The prospect of Windows on Arm, announced at CES in January, is a good one for these manufacturers, since with the exception of Intel they all use Arm processors.

Qt will not be ported to Windows Phone 7 says Nokia

Director of the Qt Ecosystem Daniel Kihlberg has posted officially on the future of Qt, Nokia’s cross-platform application framework.

However you spin it, Nokia’s change of direction, relegating Symbian to low-end phones and focusing on Windows Phone as its Smartphone platform, is not good for Qt developers. Kihlberg offers a glimmer of hope for MeeGo though. Whereas CEO Stephen Elop was almost dismissive of MeeGo, saying that a device would be released as part of a learning process, Kihlberg positions it as a source of future disruption:

Nokia also announced it will ship its first MeeGo-related device in 2011, which will rely on the Qt ecosystem – and then will continue with MeeGo as an open source project for future disruption.  Nokia can’t afford to be behind the next disruption again and Qt can play an important role in making sure it isn’t.

But why not port Qt to Windows Phone, which needs a native development stack? Nokia’s Aron Kozak states in a comment:

Qt will not be ported to Windows Phone 7. One of the key benefits of joining an established ecosystem is that there is an established toolchain that everyone uses. All Windows Phone apps will run on all WP7 devices. Adding Qt to the mix would only cause fragmentation.

Unfortunate from a Qt perspective but wise from a developer ecosystem perspective.

In truth, this is near-fatal for the future of Qt at Nokia:

I have to say, Nokia made a bad decision jumping to WP7 knowing that Qt wouldn’t be on it. Now that Nokia did this, they basically went from Qt “Code once, run everywhere” to “Code once, run nowhere”.

says developer Keith Rusler.

The other problem is that developers feel misled:

When Elop came in he said that Qt will be the main framework. Symbian and MeeGo would be unified through Qt. We all stopped working on Symbian C++ and started learning Qt. We have now wasted 6 motnhs of our family’s lives on a dead end. If I knew this was going to happen, I would have started learning Java instead!

Irrespective of the business merits of Elop’s decision, the truth is that its relationship with developers has been deeply wounded. I am not sure how it could have been better handled – except that I think Nokia should have insisted on Qt support in Windows Phone – but I still observe that it has been handled badly. The evidence suggests that Elop under-estimates the importance of nurturing developers in the ecosystems he talks so much about.

MeeGo, Qt, and the new Nokia: developers express their doubts

What are the implications of the new partnership between Nokia and Microsoft for MeeGo, the device-oriented Linux project sponsored by Intel and Nokia? What about Qt, the application framework that unifies Symbian and MeeGo development?

Here is what Nokia says:

Under the new strategy, MeeGo becomes an open-source, mobile operating system project. MeeGo will place increased emphasis on longer-term market exploration of next-generation devices, platforms and user experiences. Nokia still plans to ship a MeeGo-related product later this year.

Nokia is retaining MeeGo but it has moved from centre-stage to become more niche and experimental.

The snag for developers is that there are no known plans to support Qt on Windows phone. According to the letter to developers, Qt developers can look forward to the targeting low-end Symbian devices and at least one solitary MeeGo phone:

Extending the scope of Qt further will be our first MeeGo-related open source device, which we plan to ship later this year. Though our plans for MeeGo have been adapted in light of our planned partnership with Microsoft, that device will be compatible with applications developed within the Qt framework and so give Qt developers a further device to target.

Reaction from developers so far is what you might expect:

By this announcement, I’m afraid you’ve lost many faithful people (developer and consumers) like myself, who’s been a Nokia user ever since I’ve started using cellphones..

and

Wow what can I say, nokia just flat out killed any enthusiasm I had to develop on nokia platforms, I never have and never will use a windows platform. You have just killed QT, even worse killed the most promising OS out there in Meego. Elop is the worst thing that has ever happened Nokia.

and

Weak on execution, you choose to flee. What a sad day in the history of a once proud and strong company.

Nokia could fix this by demanding Qt support for Windows Phone 7.

Nokia adopts Windows Phone 7: game on

Nokia and Microsoft have announced a strategic partnership in which Nokia is to adopt Windows Phone as its “principal smartphone strategy”.

imageimage

There is a smidgen of uncertainty. The release says “Nokia and Microsoft intend…” Still, I think we should assume it will go ahead.

The key elements of the agreement:

  • Nokia adopts Windows Phone for most of its smartphones. The word “principal” leaves space for others.
  • Nokia will contribute hardware design, language support, and “help bring Windows Phone to a larger range of price points”.
  • Nokia will adopt Bing search and use Microsoft adCenter.
  • Nokia Maps will be integrated with Microsoft’s mapping services.
  • Nokia’s app store will be integrated with Microsoft Marketplace.

A few observations.

  • First, this is what Windows Phone 7 needs. It is a decent mobile OS with potential for excellence, but needs better than the luke-warm support it has received so far from Microsoft’s hardware partners. I have thought in the past that Microsoft needs to make its own hardware, but this deal is better.
  • It also plays to Nokia’s strength in mobile hardware design. Recent high-end Nokia devices have had excellent hardware engineering spoilt by poor software.
  • Windows Phone 7 already has strong development tools; I have seen comments from developers that the same app takes less time to develop than on Apple’s iOS or Google Android. What it has lacked is a true mass market; this deal has the potential to change that. Windows Phone 7 is invisible in my local town centre, despite the presence of three specialist mobile phone retailers. That has to change for Microsoft’s OS to succeed.

Sounds good, but there are also reasons why this might not work out well.

  • Currently Apple iOS and Google Android are the Smartphone operating systems to beat. There is no guarantee that Nokia’s change of direction will move the market. After all, if Nokia’s current Smartphones underperform, its new Windows devices may underperform too.
  • A major change of direction is costly in both time and skills. Can Nokia deliver excellent Windows phones in time to claw back market share? In its press release, Nokia says:

    Nokia expects 2011 and 2012 to be transition years, as the company invests to build the planned winning ecosystem with Microsoft.

  • There is no tablet form factor for Windows Phone 7, and Microsoft seems resistant to the idea. Apple and Android exploit the potential of tablets and give app developers the benefit of two similar platforms for both small and medium size mobile devices.
  • Historically, Microsoft has proved a difficult partner. The tie-up with Palm for Windows Mobile a few years back did not save Palm. In mitigation, Nokia CEO Stephen Elop is ex-Microsoft, and if anyone knows how to make this work, he will do.
  • Nokia will have a tough job convincing its own people of the value of this deal – by which I mean employees as well as third-party developers and partners. It is discarding a huge amount of previous investment. This could be mitigated if Nokia is able to support Qt, its primary development platform, on Windows Phone 7; but I have not seen any hint of that yet. In my view Windows Phone 7 needs a native code development option, and Nokia should press to allow it.

Nevertheless, the battle for mobile has just become more interesting. This is a huge boost to Microsoft’s phone and many in the industry will now be taking it seriously for the first time.

Trying out MonoTouch – C# for Apple’s iPhone and iPad

I’ve posted an article on trying out MonoTouch, which builds on the open source Mono project to provide a means of developing apps for Apple’s iOS using C# and the .NET Framework.

It is easy to assume that since the .NET Framework is Microsoft’s technology, using a non-Microsoft implementation is risky. Then again, Mono is open source; and the more usage it gets, the better it becomes. MonoTouch is an important development for the project, since it is a commercial project which might actually be making some money for Novell/Attachmate. While it would be nice to get it for free, it is important that Mono makes business sense as well. MonoTouch has given the Mono project a significant boost.

Microsoft’s new President of Server and Tools–Satya Nadella, from Bing division

Microsoft has appointed a new President of Server and Tools to replace Bob Muglia. He is Satya Nadella, 43, and has been leading the Online Services Division, the bit in charge of Bing, MSN and adCenter. Before that, Nadella led Microsoft Business Solutions, focused on the Dynamics CRM application.

image

It is a big role, and no doubt it is significant that Nadella has a cloud-oriented background within Microsoft. In his first memo in the new role, Nadella says:

I like to have my head in the clouds and feet on the ground (something I learned from Qi).

I track Microsoft financials in a small way, and have observed that while Muglia’s Server and Tools has turned in stellar figures for several years, the Online Services Division by contrast has delivered large losses.

Then again, competing with Google in search is not easy, and Bing is perhaps doing as well as can be expected.

CEO Steve Ballmer has also announced that Amitabh Srivastava, the well-regarded senior vice president in the Server and Tools Business is leaving Microsoft.

Puzzling moves, which suggest to me significant strategy disagreements between Ballmer and the old Server and Tools leadership.

Restoring an old Small Business Server 2008 backup: beware expired Active Directory

Seemingly tricky problems sometimes have simple solutions – but you have to find them first.

So it was with this one. I was asked to recover some emails from Small Business Server, from a backup that was about six months old. This SBS runs on Hyper-V using a proven backup system and I decided to restore onto a test system just to recover the emails. All went well until the first boot. The restored SBS went into a reboot cycle. Trying safe mode revealed the error:

STOP: c00002e2 Directory Services could not start because of the following error: A device attached to the system is not functioning. Error Status: 0xc0000001

The suggested fix for this is to boot into Directory Services Restore Mode. In my case this was not possible, because after the first failure the VM booted into Windows Error Recovery mode which does not offer Directory Services Restore Mode. Rather than try to get round this, I simply restored the server again, and took a snapshot before the first boot so I would not have to do so again.

I could now get into Directory Services Restore Mode, though note that you need to log on as .\administrator using the password set when SBS 2008 was installed. I tried some of the steps here with little success. The suggested ntdsutil commands did not work. I had to activate an instance, which by the way is ntds, and then got a message saying the operation failed because the system was in Directory Services Restore Mode and to try rebooting. I knew what the result would be.

In other words, I was getting nowhere. Then I found a user with a similar problem. The reason: Active Directory will not restore if it is older than the “tombstone lifetime”. This is nicely explained here. It is to do replication. Active Directory is designed to replicate between domain controllers, which means it has to keep a record of deleted items. If a particular instance is older than the tombstone lifetime, it could not replicate safely, hence the error message.

Well, kind-of. Note that the error message says, “A device attached to the system is not functioning”. If only it could have said, “Active Directory is too old”, that would have saved some time. Note also that SBS is often the sole domain controller, making the problem irrelevant. Note further that in my case I did not care a jot about replication, since all I needed was some emails.

Still, it gave me an easy solution. Just set the date back in Hyper-V and reboot. Everything worked fine.

In the end it did not cost me too much time, and doing this stuff in Hyper-V while getting on with your work during the slow bits is a lot more fun than when using real systems.

I do find it interesting though how these simple problems can surface as bewildering errors that lead you through a maze of obscure technical documents before you find the simple solution.