With the Internet’s importance steadily gaining, it’s not as if Web programmers needed an ego boost. But Microsoft has given them a major one anyway with a radical change coming in Windows 8.
The next-gen Windows will come with a new programming foundation, letting developers build native apps with the same techniques they use for Web applications. Microsoft calls this new variety “tailored apps.”
It’s a bold move for the company. Microsoft’s financial fortunes have depended heavily on Windows sales, and Windows’ continued momentum has depended heavily on the wide range of software written to use Windows’ direct interfaces.
Tailored apps, in contrast, use a higher-level interface: a browser engine. Now we know why Microsoft has been so gung-ho on IE9 over the last year.
Why this sharp break from the past? Microsoft isn’t commenting on its rationale beyond speeches earlier this month, but here’s one very good reason: ARM processors.
Today’s ARM processors, from companies including Qualcomm, Texas Instruments, Nvidia, Samsung, Apple, and Freescale, are usually used in mobile devices. But they’re growing up fast, and Microsoft is designing Windows 8 to run on ARM chips, too.
Windows has run on other processors besides x86 chips from Intel and AMD–Itanium, MIPS, Alpha, and PowerPC. Although each of those versions has been abandoned over the years, Microsoft clearly has adapted the Windows code base for processor independence.
Getting programmers to come along is another challenge altogether, though.
It’s a chicken-and-egg problem. Why should a Windows programmer create, say, an Itanium version of some product when there are so few Itanium computers shipping? And why should a person buy an Itanium-based computer if there is so little software shipping?
Once Microsoft issues its ARM version of Internet Explorer–Windows 8 will come with IE10–the tailored apps should become cross-platform. In contrast, ordinary native apps such as Adobe Systems’ Photoshop or Microsoft Office that are written to Windows’ lower-level interfaces would have to be created separately.
Mike Angiulo, vice president of Windows planning, demonstrated the approach in a Computex speech, playing a touch-screen piano app on two machines. “These are the same apps. This is running on x86, this is running on ARM,” he said. “It’s the same app, completely cross-platform, based on the new Windows 8 app developer model.”
Microsoft already has a cross-platform programming foundation, .Net and Silverlight, and there has been fretting among its fans about Microsoft’s Web-tech move.
But ultimately, Microsoft’s position makes some sense. Windows remains a powerful force in the industry, but almost all the hot consumer-level programming action today is taking place either with Web apps or with mobile apps running on iOS and Android. Every now and again a new native app arrives for Windows–Angry Birds, say, or any number of other video games–but the hot platforms of the moment are mobile and the Web.