Last year I wrote a piece for The Register on 25 years of Windows. I even ran up Windows 1.0 in a DOS box to have a look.
The surprising thing about Windows is not how much has changed in 25 years, but how little. The WIMP model (Windows, Icons, Menus, Pointer) has stayed the same. Inevitably, Windows was completely rebuilt during that period, in the form of Windows NT, but Microsoft was careful to make the user interface reassuringly familiar. Windows NT 3.1 looked the same as Windows 3.1, but did not crash so often. Windows NT 4.0 used the Windows 95 user interface. Further, as far as possible old applications still ran. In fact, Notepad on Windows 1.0 looks very like Notepad on Windows 7.
Then Apple releases the iPhone in 2007, and suddenly Microsoft has a problem. Apple demonstrates that it is possible to create a touch user interface, without a stylus, that really works. Apple does this by creating a new operating system, iOS, which is incompatible with its existing OS X used for desktops and laptops. Yes, much of the underlying code is the same, but OS X applications do not run. Nobody would expect them to on a phone; but then Apple does the iPad, approaching the screen size of a laptop, but still iOS, touch-centric, and incompatible with Mac OS X.
The advantage of Apple’s clean-room approach is that there are no compromises or fudges to make applications built for keyboard and mouse somehow work. iPhone and iPad are huge hits, and users seemingly do not mind sticking with OS X for their productivity applications like Microsoft Office and Adobe PhotoShop, and using the iPad and iPhone for web browsing and for apps that are more about consuming than creating – except that productivity apps like the iWork suite are now creeping onto iOS, and this together with the web application/cloud computing model may mean that OS X gets used less and iOS more over time; but OS X is not going away.
What about Microsoft? It has a big hit with Windows 7, but suddenly it all feels rather legacy. What about the new computing model which is mobile, touch-centric, and enjoyable to use in a way previously unknown in computing? One thing is sure: Microsoft cannot continue with WIMP. It has to break with 25 years of Windows and find a different user interface model.
2010, and Microsoft does Windows Phone 7. This is Microsoft’s iOS: same old Windows underneath, though based on the cut-down Windows CE, but otherwise a complete break from the past. The user interface is a new touch-centric effort called Metro and based on sliding tiles. The main thread of continuity for developers is its app platform based on Silverlight, which runs .NET code written in C# and Visual Basic.
You might have thought that Microsoft would follow Apple by using the phone OS for other form factors as well, and making Silverlight its core app platform for Windows (the cross-platform dream is long gone).
Instead, Microsoft embarked on a third strategy.
“We introduced a new platform based on standard web technologies”, says program manager Jensen Harris in his preview video. Windows 8 uses elements from the Windows Phone 7 UI, but driven by HTML and JavaScript rather than by Silverlight. Well, maybe you can use Silverlight instead; or maybe native code. Not everything is clear yet; but what Microsoft is choosing to focus on is its use of web technology.
Who will buy touch-centric Windows 8 devices? Microsoft’s problem: there is already a touch-centric OS out in the market, supported by countless third-party apps. As it has discovered with Windows Phone 7, it is not enough to do a decent alternative. So what, says the market, we already have iOS, and if we want something non-Apple, there’s Android. And WebOS. And Blackberry PlayBook.
The one thing Microsoft can do that others cannot is run Windows. Not new Windows, but old Windows. There is a reason why Windows 7 was the fastest-selling operating system of all time – most of the business world runs on Windows.
Therefore Windows 8 does both. There’s the new platform, and there’s the old platform, and you just swipe between them.
Windows 8 is a migration strategy. Is a mobile, touch-centric UI the future of client computing? Quite possibly, but in the meantime you have all this old stuff to run, not least Microsoft Office. Here is the answer: run both.
There are a few problems with this strategy.
First, while Microsoft will focus on the new HTML-based platform, in the real world people will buy Windows to run their existing Windows apps. That means they will need keyboard and mouse. Windows 8 OEMs will be fighting an old battle: how to make devices that run well as tablets, but also have keyboard and trackpad, and a competitive price. We have seen that approach fail with the old Tablet PC line and its swivel screens.
Alternatively, we will see touch-only devices and users will curse as they try to run Excel.
Second problem: Microsoft’s Windows team is focused on the new UI. The old one will likely be pretty much Windows 7. The success of Windows 7 was driven by innovations and improvements that matter whatever you run, rather than ones that you can only use if you are running apps built for the new platform.
A split personality means divided attention, and one or other or both will suffer. Is Windows 7 now frozen in time as the last of its line? That does look possible.
Third, what is the developer story? Hitherto, the Windows developer story has been pretty simple and single-minded. There is native code and the Windows API, or for the last decade or so there has been .NET. All-conquering C# has been the unifying language from desktop to server, with Silverlight bringing it to the browser.
Now Microsoft is saying HTML and JavaScript. Plaudits from the standards folk – who mostly do not run Windows and still will not – but confusion for the Microsoft-platform community.
That said, I will be surprised if Silverlight is not also an option for new-style apps, enabling Windows Phone apps to be ported easily.
Even so, there must be a reason for Microsoft’s emphasis on HTML and JavaScript for local apps as well as web applications. It does feel as if the one common thread to the company’s developer story has suddenly been cut, and for no good reason given that Silverlight fits perfectly with the new UI model.
Let me add, it is hard to see a future for the Windows Phone 7 OS, given what we have seen in Windows 8. It seems plausible that Windows Phone 8+ will use the same code as Windows 8, which is another reason to suppose that Silverlight will be fully supported.
I can see where Microsoft wants to get to. It wants to succeed in mobile and in the new touch-centric world, as the alternative is gradual erosion of its entire market and Windows ecosystem. Is this the best way, and will it work? Open questions; and the company has some tricky positioning to do, especially to its developers. The forthcoming Build conference will be critical.
Surely the reason for enabling app development using HTML5 and JavaScript is that it greatly lowers the barrier to entry for the hundreds of thousands of developers out there who aren’t using C# or C++. But those will still be viable development platforms for existing developers, as, I suspect, will VB.NET, Java, and any other system you care to mention. This is Microsoft, after all, not Apple.
Excellent post! As i was watching the video from D9 i was frankly shocked to see the windows desktop get second bidding. I definitely expected something more mature. the metro ui is nice, but i couldn’t shake the idea that this is something you would see from a oem builder aka skin, versus something that was more deeply integrated into the os. maybe this really is taking the windows phone 7 approach which is really windows ce under the covers anyway.
imho
So suppose most companies will break away from Windows legacy and jump into newer platforms. Why should they stick with Windows instead of jumping to iOS/Android or Cross-platform Web Develpment both which should have a huge stronghold, huge ammount of developers and more seasoned platforms by the time Win8 is released?
Will Win8 offer enough advantages to compete?
The “productivity” desktop UI has matured – there is no where else to go with it – but will always be necessary. There is nothing more you can do to make it more productive – they are beating a dead horse. Its like continually trying to make a typewriter more productive by rearranging the keys. Trying to tie in touch just makes it worse (and EVEN worse, kinect).
The problem for MS is simply that the legacy PC/UI growth is about over. Its entering a period of decline before leveling off. Those who don’t need a computer for productivity will not buy them again, when they can have a cool next-gen small, light touch device. The traditional desktop and new generation touch UI are for two very different purposes. You cannot be as productive on a touch UI and should not try to. You are most productive when you’ve memorized all the shortcut keys for all you do any your hands never leave the keyboard. It all comes down to legacy windows and PC sales are going to decline and MS needs to find a future area of growth which is continuing to elude them.
I think that your first “problem” is not a problem at all. Through the power of bluetooth, you can use a keyboard on an iPad. You can do the same thing with a mouse. A windows 8 tablet that supports bluetooth could easily function as a desktop without any weird changes to the tablet hardware. It’s a non issue – and not very forward thinking of you.
Second problem is also pretty much a non-issue. Developers need to think differently about their apps and how they could function in a touch environment. But this type of dual environment is exactly what I’ve been looking for as a user for years. And it creates one device that handles all my needs instead of several.
I think the third problem will end up being a non-issue once Microsoft actually communicates their strategy.
@Bill
That’s a very astute observation. MS absolutely MUST make inroads in the new consumer market. The need for spreadsheets, word processors and other productivity software isn’t going away, but it isn’t growing either. Those apps work best with a keyboard and mouse. But the consumer market rarely needs that kind of productivity. Even a huge portion of the business market isn’t about productivity software. It’s about communication (email, web, phone, networking), data visualization (reports & presentation) and so on. Most of that can be done on a tablet.
The consumer market which has really fueled PC growth over the past decade and a half is about to switch over to tablets. You can expect that many consumers will choose to buy a tablet INSTEAD of a PC as opposed to IN ADDITION TO. You can expect the same thing from many businesses where tablets can take the place of laptops for many (not all, but many) users. When that happens, Microsoft’s lead in the business market isn’t going to mean much.