Friday, September 16, 2011

My Initial Thoughts on Windows 8 And The Build Windows Conference

If you are a developer of any type and have interest in any type of Windows based development then you probably knew the 'Build Windows' event was taking place in Anaheim, CA this past week from Sep.13-16. I was not in attendance, but like hundreds of thousands of other developers I tapped into the site which almost with perfection streamed the keynotes and Channel 9 video via a Silverlight player. Wait! Silverlight and not a HTML5 video player!! I thought SL was dead to Microsoft (says the peanut gallery and technical blogs). Nope, and it was a nice touch to show how Silverlight works so well.

I have not had a chance to watch all of the archived video, but I had it playing in the background often this past week to try and pick up a tid bit here and there. It is obvious to me that Windows 8 is the 1st revolutionary mind bender that we have to a user’s interaction, application development, and from a OS perspective in quite some time. Phrases and words like 'Metro Apps', 'Fast and Fluid', 'Touch First', and 'WinRT' were used time and time again. Windows 8 takes a 'Touch First' approach and is no surprise to me at all. With the onslaught of tablet and touch technology we have seen in the last 4-5 years and especially from front runner Apple with the iPad, iPhone, and iTouch products, it is apparent to me that Microsoft is firing back on the offensive to get in and hopefully dominate the market share in this new technology age.

Think about it - the way the Build conference and mainstream technology presents technology today, you would feel that the mouse, keyboard, desktop and laptop PC might be dead! Not necessarily, but the days of the classic 'Start' button OS, static desktop, mouse and keyboard environment may be numbered. We have the mobile and tablet world to thank for this (in a good way I think).

Windows 8 appears to have taken a lot of the good features from Windows Phone 7 and incorporated them into the OS. If you have seen or used a Windows Phone 7 device, then you will be comfortable with viewing Windows 8. This style of application development deemed 'Metro Apps' are the applications that run on the forefront of Windows 8. This appears to be Microsoft's approach to help make any type of developer have the potential to be marketable by selling apps in the ‘Windows Marketplace’. I heard numerous times from presenters about how Microsoft wants the developer to make money and come up with the new 'Angry Birds'. They are pushing us to be Windows Developers of Metro style apps on Windows 8 probably for a few reasons: they hope we will get excited about coming up with an app to sell and make money, and in the meantime we have the hook in deep to Microsoft technologies. I don't really have any issue with this at all. Microsoft is a business and they are positioning themselves to be profitable and current or even better 'leading' the industry and right now touch, tablets, smart phones, mobile, and cloud development and applications reign supreme. The only thing I am thinking about is don't forget the professional developer doing Enterprise Development.

Don't get me wrong, Metro apps look cool and will probably be a great success. Metro apps were mentioned to not be a 'one-size-fits-all' solution, but yet still seemed to be touted as the future of application development on Windows. Mainstream large applications seemed to be mentioned or represented as a footnote to Metro apps. Well I have to say not everything reasonable in software development can be crammed into a social networking twitter app, a silly (but clever) Angry Birds game, or a grocery shopping list app-let. Some presentations nowadays makes it seem like the only apps used are Twitter, Facebook, Email, and the Internet and everything else is a second class citizen. I may have to modify this post in a few years, but I don't think automating complex business rules can be simplified into the touch of a finger and a Metro style app. I know Microsoft knows this, and so did all of the other developers that were in attendance. However I want to make sure that Microsoft continues to push hard as they have been in the last 10 years with technologies in .NET to create solutions for large Enterprise applications that solve complex business solutions. A Facebook and Twitter stream combo Metro app and a cloud syncing picture app are not going to drive the business. But they will excite 16 year old kids that will buy a Windows 8 tablet and buy lots of little stuff like this from the Marketplace. Microsoft is smart for recognizing this and positioning themselves to make money. They guys like me that develop in .NET for a living off a license purchased every few years is probably only enough $ to keep the lights on in Redmond. Therefore I say I understand everything Microsoft is doing and the direction they are going, I just hope they continue to be just as strong with .NET moving forward as they have been in the past.

There were some strong .NET presentations given on Channel 9 and by people like Scott Guthrie which got me really excited about moving forward. These are the pioneers of the .NET Framework and continue to move it forward at Microsoft. I look forward to the Async Framework in .NET 4.5 and they also mentioned some language specific enhancements like VB.NET getting Iterators like C# has had since .NET 3.5. I don't want the flavor of this post to make it sound like Microsoft is trying to box us into being Windows developers only making Metro apps, but it was hard not to think like this at times based on the content I watched. The Channel 9 content kept me breathing easy and feeling like the 10 million of us that are profession developers out of 100 million estimated developers worldwide (Steve Ballmer's numbers) still have a strong presence in Microsoft. However I do not blame Microsoft trying to cater and market stronger to the 90 million non-professional developers that will be making Metro style apps trying to come up with the next dynamic weather app or Angry Birds game. It is the smart thing to do from a business perspective as opposed to standing up on stage going on and on about the Async framework or other .NET enhancement that is catering to the 10 million professional developers.

To sum up the conference from my viewpoint (and again, I was not there so I didn't get the full content), I am excited for Visual Studio 11, .NET Framework 4.5, Windows 8, and touch first technology. Although I still get the feeling that everything they said at the conference makes sense, but it does not make sense for everybody. Grasp that? Regardless I look forward to Windows 8 and the future.

For developers interested in the new WinRT APIs in Windows 8, have a look at the following article which describes it best I have seen thus far:

WinRT demystified


  1. Excellent pieces. Keep posting such kind of information on your blog. I really impressed by your blog.
    html5 audio player

  2. Thank you for the kind comments, and I will try to keep posting good information for the community!