I asked last week whether or not the BUILD Conference could possibly live up to the hype and anticipation that had grown around it. With the formal reveal of Windows 8, the technical detail released around the new Windows Runtime stack, and the release of developer previews of Visual Studio 11 and other tooling, I have no doubt that BUILD lived up to its already high expectations. As Microsoft conferences go, I believe this one will be remembered as an event that helped define the future direction of the company, much the same way PDC 2000 helped define Microsoft in the .NET era.
As we leave the BUILD Conference behind us, and start evaluating the technologies and tooling it introduced, I’ve been catching up with developers and industry experts who attended the event.
Alan Stevens is a Microsoft C# MVP and co-founder and CTO of Wild Endeavour, Inc., where he provides software development consulting, training and coaching services. I asked Stevens about his thoughts on the Windows Runtime (WinRT) implementation in Windows 8 and what developers should be doing to prepare for it.
Michael Desmond: What do you think of Microsoft’s Windows Runtime stack? Is the promise of equivalent support across diverse managed, unmanaged and scripting languages realistic?
Alan Stevens: WinRT is a once-in-twenty years opportunity to correct the sins of the past and prepare for the future. The use of language projections put all languages on an equal footing. I was skeptical of this promise at first, but further investigation revealed that although at its heart WinRT is a C++ API, even C++ has a language projection. I came away very impressed with the work of the WinRT team.
Stevens: The story for HTML5 on Metro is less clear than the WinRT story. The simple answer is that, yes, you can run HTML5 on Windows 8 as promised. This is very significant because now developers who considered themselves "Web developers" can just as easily proclaim themselves "Windows developers." This situation is the inverse of what we saw ten years ago when ASP.NET Web forms enabled VB6 Windows developers to leverage their skills to build applications on the Web.
Desmond: It seems like Windows 8 is really two OSes in one. We've seen the advantages of this approach, as Microsoft can have its cake and eat it too, supporting the vast .NET community while striking off in new directions. What are some of the challenges of this approach?
Stevens: I agree that Windows 8 is actually two operating systems, but I can't imagine another way to solve the business problems Microsoft is facing. Desktop Windows was built for an earlier time and must be supported for the indefinite future. Metro Windows is Microsoft's response to the current multi-device, multi-language environment.
There is much greater danger for Microsoft in not offering something dramatic and disruptive at this point. As a company, they have plenty of resources to support both application stacks for as long as necessary. Frankly, I'm shocked at how well they've executed this transition. I'm much more accustomed to disappointment at Microsoft's inability to live up to their potential.
Desmond: Any advice for developers trying to make business decisions here?
Stevens: Don't over invest in Windows 8 yet. It is still early and much can change. There is no immediate impact to my business and my clients from the announcements at Build. I'll be following blogs and watching the Build session recordings, but I won't be building any Metro applications for now. I encourage other developers to do the same. Keep calm and carry on.