Steve Ballmer at CES: Microsoft pins mobile hopes on Windows 8

Microsoft CEO Steve Ballmer gave the keynote at CES in Las Vegas last night. It was a polished performance and everything worked, but was short on vision or any immediate answer to the twin forces of Apple iPad and Google Android which are squeezing out Microsoft in the mobile world – smartphones and tablets – which currently forms the centre of attention in personal computing.

That said, CES stands for Consumer Electronics Show; and Ballmer did a good job showing off how well Kinect is performing, claiming sales of 8 million already. He showed more examples of controlling Xbox through speech and gesture, and said that Kinect is also boosting sales of the console; clearly it is now taking it beyond the hardcore market of first-person shooters.

We saw some fun new Windows devices, such as Acer’s dual-screen Iconia laptop.


There was also a demonstration of the updated Microsoft Surface which now runs full Windows 7 and does not require hidden cameras, so that it can now be used in more scenarios, such as for interactive digital signage.

All well and good; but what about mobile? We got a Windows Phone 7 demo, but no sales figures, nor any mobile partners on stage; I’m guessing they are too busy promoting their new Android devices. Ballmer did say that the phone is coming on Verizon and Sprint in the first half of this year. Application availability is improving, but how will Microsoft win attention for its smartphone? My local high street is full of mobile phone shops, none of which even stock it as far as I can tell. There is a tie-in with Xbox Live which may help a little.

The problem though is that Microsoft does not seem to be wholeheartedly behind the Windows Phone 7 OS, which is based on Windows CE with a new GUI and Silverlight/XNA runtime for applications. Rather, Microsoft is signalling that full Windows is its future mobile operating system. At CES it announced Windows on ARM, the processor of choice in mobile, and during the keynote we saw the next version of Windows (though with the Windows 7 GUI) running on various ARM devices.

The power available in new System on a Chip packages like NVIDIA’s Tegra 2 leaves me in no doubt that full Windows could technically run on almost any size of device; but that does not make it the sensible choice for all form factors. Note also that while it was not mentioned at CES, NVIDIA has said that Tegra 2 is optimized for Android.

Microsoft could plausibly have released a tablet based on the Windows Phone 7 OS, which is built for touch control, this year. Instead, it will be at least 2012 before we see a Windows 8 tablet, and we are taking it on trust that this will really work nicely with touch and not need a stylus dangling at the side. By then Apple will, I presume, be releasing iPad generation 3.

Putting this in a developer context, what is Microsoft’s mobile development platform? Silverlight and XNA? The full Windows native API? Or HTML 5? Each of these is very different and it seems to me a muddled story.

Xbox Kinect has sold 8 million since launch, and is driving more controller-free features

At CES in Las Vegas today, Microsoft CEO Steve Ballmer announced that Microsoft has sold 8 million Kinect sensor devices since its launch late last year.

He also announced an AvatarKinect feature for Xbox Live subscribers, which enables your avatar to mimic your movements and expressions, and controller-free selection of movies from Netflix and Hulu as well as the Zune marketplace, using gestures and voice.

I got Kinect at launch and have mixed feelings about it. It has not had much use because the games we have so far are not particularly exciting.

The device itself is exciting though; and given its rapid adoption it seems reasonable to expect that the next batch of games will be more compelling.

The evidence is that the controller-free concept has caught people’s imagination. It has also done something important for the Xbox: rescued it from the niche of hardcore first-person shooters in which it was to some extent trapped.

NVIDIA’s first CPU, Project Denver, aims to bring ARM to desktops and servers

At CES in Las Vegas today NVIDIA’s CEO Jen-Hsun Huang announced the company’s first CPU: Project Denver. This is a partnership with ARM, to create “a full custom processor” targeting “high performance computing – servers, PCs, super-computers, cloud computing.” NVIDIA will still licence ARM processors for mobile computing.

Since ARM has in the past focused on the mobile and embedded market, and NVIDIA on GPUs, it is a departure for both companies.

Why? Huang says it is because ARM is “the new standard microprocessor architecture.” Judging by this chart, shown at the press briefing, it is hard to disagree:


In a few years, said Huang, “There will be more ARM processors shipped than all the x86 chips ever shipped.”


NVIDIA’s press release explains that the purpose of Project Denver is to extend the range of ARM systems upwards:

For several years, makers of high-end computing platforms have had no choice about instruction-set architecture.  The only option was the x86 instruction set with variable-length instructions, a small register set, and other features that interfered with modern compiler optimizations, required a larger area for instruction decoding, and substantially reduced energy efficiency.

Denver provides a choice.   System builders can now choose a high-performance processor based on a RISC instruction set with modern features such as fixed-width instructions, predication, and a large general register file.   These features enable advanced compiler techniques and simplify implementation, ultimately leading to higher performance and a more energy-efficient processor.

The other interesting aspect of Project Denver is its integration with the GPU – as you would expect from NVIDIA:

An ARM processor coupled with an NVIDIA GPU represents the computing platform of the future.  A high-performance CPU with a standard instruction set will run the serial parts of applications and provide compatibility while a highly-parallel, highly-efficient GPU will run the parallel portions of programs.

While we tend to focus most on power efficiency for mobile devices, because we notice how long our batteries last, it is equally important for larger systems. Power consumption and dealing with heat is a key issue for datacentres, while in everyday desktop computing power consumption is a significant proportion of the running cost of an IT system.

Project Denver puts a different spin on Microsoft’s Windows-on-ARM announcement today. The assumption is that Microsoft has in mind a mobile future for Windows; but if Denver takes off it could be important on desktops and servers as well.

Before getting too excited, it is worth recalling how Intel’s Itanium, cruelly dubbed the Itanic, mostly failed in the market. That was partly thanks to design problems, and partly because the industry was too deeply hooked into x86 applications. I also recall Motorola’s doomed attempts to sell Windows NT on PowerPC in the mid Nineties.

Denver could fare better, thanks to the ubiquity of ARM in the mobile world. That said, much will depend on whether a Denver-based system really does offer significant benefits over whatever Intel and/or AMD will have come up with by the time it ships. If it is less than spectacular, Denver will be a hard sell.

Windows 8 will run on ARM processors – a natural home for Silverlight?

Microsoft announced today at CES in Las Vegas that the next version of Windows will run on ARM as well as Intel CPUs. But why? The reason is that ARM CPUs have huge momentum in mobile computing, thanks to their low power consumption. Microsoft wants Windows to support System on a Chip (SoC) architectures such as NVIDIA’s Tegra 2, which has two ARM Cortex-A9 CPUs combined with an HD-capable graphics processor in a single package. In its press release, the company is careful not to upset established x86/x64 partners Intel and AMD too much, emphasising that Windows will run on SoC packages based on those CPUs as well.

It is an interesting announcement, but one that raises as many questions as answers. The first concerns Microsoft’s mobile strategy, with Windows now seeming to encroach on territory that you have thought belonged to its embedded operating system, Windows CE, which underlies both Windows Mobile and Windows Phone 7. With all its legacy APIs, full-blown Windows does not seem ideal for low-powered, resource-constrained mobile devices; yet the company seems set on bringing full Windows rather than something based on Windows Phone 7 to the emerging tablet market.

The second issue is that applications will need at least re-compiling, and in many cases some re-coding, in order to run on ARM CPUs. Microsoft says it will deliver Office for ARM:

Sinofsky: Microsoft Office is an important part of customers’ PC experience and ensuring it runs natively on ARM is a natural extension of our Windows commitment to SoC architectures.

Windows and Office alone is enough for a decent business device; but customers who buy Windows on ARM expecting their existing games or applications to run will be disappointed.

We have been here before. In the early days of Windows CE, devices ran a variety of processors such as MIPS or Hitachi SH3, and developers had to compile multiple binaries and create setups that installed the right one on each device. In an attempt to overcome the friction this created, Microsoft introduced the Common Executable Format (CEF) with Windows CE 3.0 in 2000. This was an intermediate language format which was translated to native code by a “translator” when it was installed onto a device.

It sounds  a bit like .NET or Java; and it was indeed a forerunner of the .NET Common Language Runtime, which appeared in 2002. However, CEF never really caught on. Although it solved deployment issues, it introduced performance problems and was troublesome to debug. Most developers preferred to stick with true native code.

Today though .NET is mature; and we also have Silverlight, a cross-platform implementation of the .NET Framework combined with multimedia player and graphics framework. If Microsoft includes .NET and Silverlight in its ARM build of Windows, that would solve some of the deployment problems, especially for business devices. Many custom applications are built for .NET; and these would in principle run without any need to recompile, since a .NET executable is intermediate code which is compiled to native code at runtime, though any code which includes “platform invoke” calls to native APIs would not work.

It is surprising therefore that neither .NET nor Silverlight is mentioned in Windows president Steve Sinofsky’s Q&A about Windows on ARM. Still, we should not read too much into that. It would be madness if Microsoft did not support its .NET technologies on this new platform, would it not?

2010 a bad year for UK music sales as CDs decline and paid-for downloads fail to compensate

The BPI has reported figures for 2010 music sales in the UK. In brief, digital (download) album sales increased from 16.1m to 21m (+4.9m); but CD sales declined from 112.5m to 98.5m (-14m).

To be fair, the “singles” market – that is, individual tracks downloaded – rose from 152.7m to 161.8m (+9.1m). If an album contains on average 12 tracks, that would be roughly equivalent to another 0.75m albums. CD single sales are tiny at 1.9m.

Overall it is still a significant decline. What is most worrying for the industry is that CD sales still dominate – there were 4.5 times as many CD albums sold as digital. Anyone can see that the CD market is in severe decline. Shops that stock back-catalogue in depth have disappeared from many high streets, leaving this market to online retailers like Amazon.

The BPI says piracy is the core problem:

Despite unprecedented demand for music, and strong innovation offering consumers new ways to access music online, legal downloads are unable to offset the decline in CD sales because they are dwarfed by illegal competition.

While this may be true up to a point, another way of looking at it is that technology is making the old purchase model for music obsolete. Digital music is so easy to acquire and share that it is hard to persuade people to pay per-track or per-album. It is also a rather poor deal for the purchaser, in that they get no resale rights or tangible goods.

The BPI does not mention it; but another thing I see frequently is where someone buys a CD, rips it to their hard drive, and then sells the CD on. This also costs the industry a sale.

Old-style piracy is a problem too. The market for Beatles Remasters box sets was badly damaged by far east copies, available in bulk for a fraction of the price. There is no easy way for a customer buying online to know whether or not they are getting the real thing.

Instead, the business model that makes sense is a subscription like that offered by Spotify. There is no pretence that users own the music they listen to: rather, they play what they like where they like, choosing from a vast online catalogue.

Apple seems resistant to the idea though, which is understandable since it does so well with its existing iTunes store. And even if subscriptions do catch on, there is no guarantee that the revenue will equal that of the old days of the CD.

Those days will never return though; and the industry should get behind the streaming model as it is so good for their customers. It also has the advantage that they keep paying, whereas people tend to stop buying music once they feel they have enough.

See also: Mark Mulligan’s post about the death of physical media products.

Hardware vendors chase Apple’s iPad at CES with Android, not Windows

There is a chorus of disapproval on the web today as Asus announced a full-fat Windows tablet  (Eee Slate EP121)  at CES in Las Vegas, along with three other devices running Google Android – the Eee Pad MeMo, the Eee Pad Transformer, and the Eee Pad Slider.

The most detailed “review” I’ve seen for the EP121 is on the Windows Experience Blog. Core i5, 4GB RAM, 64GB SSD, capacitive screen with touch and stylus input.

Nice in its way; but no kind of game-changer since this is an echo of early Windows slates which never achieved more than niche success. Four big disadvantages:

  • Short battery life
  • High price
  • The stylus
  • and another thing: in the rush to embrace touch computing, vendors appear to have forgotten one of the best features of those early tablets: you could rest your hand on the screen while writing with the pen. If you have a combined touch/stylus device that will not work.

Microsoft fans will be hoping CEO Steve Ballmer does not make too much of the EP121 and devices like this in tonight’s keynote. If he does, it will seem the company has learned little from failures of the past.

Asus deserves respect for introducing the netbook to the world in 2007, with the original Eee PC. It ran Linux, had an SSD in place of a hard drive, battery life was good, and above all it was light and cheap. Back then the story was how Microsoft missed the mark with its 2006 Origami project – small portable PCs running Windows – only to be shown how to do it by OEMs with simple netbooks at the right price.

Asus itself is not betting on Windows for tablet success; after all, three of the four products unveiled yesterday run Android. Despite what was apparently a poor CES press conference these may work out OK, though the prices look on the high side.

There will be many more tablets announced at CES, most of them running Android. Android “Honeycomb”, which is also Android 3.0 if Asus CEO Johnny Shih had his terminology right, is the first version created with tablet support in mind.

But why the tablet rush? The answer is obvious: it is because Apple has re-invented the category with the iPad. Since the iPad has succeeded where the Tablet PC failed, as a mass-market device, intuitively you would expect vendors to study what is right about it and to copy that, rather than repeating past mistakes. I think that includes long battery life and a touch-centric user interface; keyboard or stylus is OK as an optional extra but no more than that.

Equalling Apple’s design excellence and closed-but-seamless ecosystem is not possible for most manufacturers, but thanks to Android they can come up with devices that are better in other aspects: cheaper, more powerful, or with added features such as USB ports and Adobe Flash support.

It is reasonable to expect that at least a few of the CES tablets will succeed as not-quite iPads that hit the mark, just as Smartphones like the HTC Desire and Motorola Droid series have done with respect to the iPhone.

Microsoft? Ballmer’s main advantage is that expectations are low. Even if he exceeds those expectations, the abundance of Android tablets at CES shows how badly the company misjudged and mishandled the mobile market.

The implication for developers is that if you want app ubiquity, you have to develop for Android and iOS.

Microsoft could help itself and its developers by delivering a cross-platform runtime for the .NET Framework that would run on Android. I doubt Silverlight for Android would be technically difficult for Microsoft; but sadly after PDC it looks unlikely.

Creating a Web Application for the Google Chrome Web Store

I noticed an old post here getting a lot of hits: My first Google Chrome Web Application. Unfortunately it was based on an early version of Chrome’s app format. Here is an update.

My web application in this example is this blog. I created a manifest in Notepad:


Next, using my artistic skills, I made an icon of the required size: 128×128. I used .png format.

Then I put the manifest and the icon into a folder called itwriting-app. I tested it by using Chrome’s Tools – Extensions – Load unpacked extension. It worked fine.


Next I compressed  the folder to a zip file. I just right-clicked in Windows and chose Send to – Compressed (zipped) folder.

Then I logged into the Developer Dashboard at the Chrome Web Store (I had to pay $5.00) and uploaded the app:


Next, I had to complete some metadata. I chose a couple of categories, uploaded the icon as the image for the app, and uploaded a screenshot of a sample article. Clicked Publish Changes and it was done.


If you click Install, you get an icon in the Chrome Apps list, which appears when you open a new tab.


Of course it is just a link to a web site. Why is this interesting?

A few reasons. One is that it is easy to get started, which promotes usage.

Next, you can charge for your app. Once the user has paid, you use the Licensing API to check whether the user has paid, or is a trial user, or has not paid. This also depends on the user’s Google ID, promoting Google’s identity system as well as its payment system. Users get single sign-on if they are already logged into Google. Developers do not have to worry about storing passwords, which can be an embarrassment.

Web Apps are also interesting if you request additional permissions. There are three at the moment: geolocation, notifications, and unlimited storage. These give additional capabilities to your app. You can also enable autoupdating.

Finally, Google wants us to accept that web applications are apps too, blurring the boundaries between desktop, mobile device, and web.