Wednesday, September 21, 2011

When Should You Use Metro, Version 2

picking-win-platform-v2

During my busy week at the Microsoft BUILD conference, I cranked-out a quick and rough decision tree designed to help you decide which Microsoft platform you should use for app development: Silverlight/WPF, HTML5, or the new Metro/WinRT. The chart proved to be very popular, so I thought I'd revisit the decision tree and with the benefit of more time to reflect, produce a new, more complete version.

Thus, I present version 2 of the "How to Pick Your Platform" chart.

What's Different?

In the original chart, the first question I made you answer was, "Do you need to support Windows 7?" It's a fair place to start given that everything new introduced at BUILD is Windows 8 only. There is no path for Metro back to Windows 7 (or Vista and XP, for that matter).

But in today's world, Windows is not the only relevant OS in town. We've been trained through years of Windows dominance to think building for Windows is building for the biggest audience, but we need to update our thinking.

Yes, Windows remains the dominant desktop OS. The problem is that many people are now doing more "computing" on non-desktop devices, like iPhones, iPads, Android devices, and (for now) Blackberry. In this realm, Microsoft (and Windows) is just one OS choice among the pack.

So the first question shouldn't be about which version of Windows you want to support, it should be about your desire to build software that targets the broad marketplace of devices and operating systems.

With that change, if you answer out-of-the-gate that you want to build an app that can reach iOS, Android, and Windows, the decision is easy. Use HTML5 and JavaScript for your frontend (perhaps using PhoneGap to leverage more native device features), and any server technology you prefer for your backend (including ASP.NET). (This is the type of app scenario perfectly served by the JavaScript/HTML5 Kendo UI framework.)

Silverlight, WPF, and WinForms

In the first version of the chart, I oversimplified the choice of Silverlight/WPF if you decided to build Windows apps that support all versions of Windows. I've expanded that decision tree in version 2.

As part of that expansion, I also reintroduced WinForms as valid platform choice (because it is).

I was reminded during the BUILD week after visiting with a customer that WinForms is still hugely active as a Windows development platform. Of course, I knew that from Telerik's own experience with growing WinForms popularity, but it doesn't get talked about often enough. We've all be talking XAML for the last 3 or 4 years, but WinForms has continued to get work done. It was good enough to solve business problems in 2001. It still remains good enough to solve many business problems in 2011.

So while Microsoft is spending time with Windows 8 trying to win the minds of consumers, the business app story marches on with Silverlight, WPF, and WinForms. Pick between these platforms the way you always have and the apps will work Windows 8 through Windows XP.

The only new "edge" for Silverlight is that your skills building those apps will more quickly translate to Metro if you decide to build Metro apps in the future.

Metro App Types

Another "enhanced" decision point in the chart is around deciding if your app belongs in Metro or in the "standard" Windows desktop mode (assuming you're already targeting Win8). With the support of a great new blog post from Telerik EVP Doug Seven, you can now decide if your app fits one of the five Metro app scenarios:

  • Data Snacks
  • Social Networks/Mash-ups
  • Content/Media Apps
  • Casual Games
  • Graphical Games

Metro in Windows 8 is not appropriate for every app.

Clearly, missing from Doug's classification are any business app scenarios. This is intentional. Business apps still belong in desktop Windows, even with Windows 8. And if you start building for the desktop, the platform decision is back to Silverlight, WPF, and WinForms.

Three Flavors of Metro

Finally, assuming you answer all of the questions correctly to lead you towards building Windows 8 Metro experiences, I expanded on the process of selecting the proper "flavor" of Metro. Generally speaking, there are three flavors of Metro, all underpinned by Windows Runtime (WinRT):

  1. XAML + C#/VB WinRT
  2. HTML + JavaScript WinRT
  3. DirectX + Native Code WinRT

You can theoretically use any of these options for building any Metro app, but realistically, some are better suited for certain tasks than others.

Most obvious, native code and DirectX. I guess you could build a Twitter app with Native Code, but why would you? You'll waste way more time coding than you'll gain in performance, so probably not the best choice. Instead, this raw, on the metal option is generally best reserved for rich, immersive games.

After that, it becomes more a matter of choice.

Blend 5 and Visual Studio vNext provide similar design and debugging experiences for .NET and JavaScript, so at some level it comes down to your preferred language and team skills. Microsoft is writing many of the built-in Metro apps with HTML/JS (like the Windows Store and Metro Mail), but my guess is that the community at-large will do lots of Metro development with XAML.

Don't Get Overwhelmed

Choice is good to a point. Too much choice is paralyzing.

With the introduction of three new ways to build apps for Windows, you may feel like you're trying to pick between a billion new and "old" ways to build for Windows. Don't panic. Just use my simple chart, and your decision is easy. And no matter which decision you make, Telerik will continue to make you a .NET Ninja Rockstar with industry leading tools and support.

Thursday, September 15, 2011

How to Pick Your Platform: Silverlight, Metro, or HTML5


While Windows 8 is ushering in an exciting new model for Windows development called "Metro style apps" that run a new "unified" Windows Runtime (WinRT), it's not necessarily the right choice for all new Windows software development. In fact, there are a lot scenarios where it's not a good choice.

In this over-simplified decision tree, I try to provide some crude logic for how to pick between your platform options. Clearly, there are many nuances not covered in this tree, but I'll work on expanding the "logic" to make it more bullet proof in the coming weeks.

The first decision is the most important, though: Do you need to continue building apps that work in Windows 7?

If your answer to this question is "Yes," Metro style apps and WinRT should not be on your radar. These are Windows 8 only technologies, and there will be no backport layer that will let you run Metro apps on Windows 7.

That means any project that has as a requirement "Support Windows 7 clients," should only be considering WPF, Silverlight, WinForms, and "web" technologies (HTML/JavaScript + their server-side counterparts, like ASP.NET). It's that simple.

IF, however, you want to put apps on the Windows Tablets that will start shipping late next year, and IF you accept that these apps will only run in that Windows 8 Metro environment, then you should start digging-in to and learning WinRT.

For everyone else, don't lose sight of reality. And reality in a Windows 7 world (that will still work in a Windows 8 world) means Silverlight, WPF, and HTML5. (And, of course, Telerik is already armed with all of the tools you need for today's reality, and we're preparing tools for tomorrow's Metro option.)

Wednesday, September 14, 2011

Still Missing In Action at BUILD (Day 2)

Yesterday I summarized a few important topics that were auspiciously missing at Microsoft's BUILD conference after the first day of sessions and keynotes. Now as Day 2 nears its end, I thought I'd revisit some of yesterday's observations and see if those topics are still missing. With both keynotes now done, it's pretty safe to assume missing topics now aren't going to get much attention at BUILD 2011.

Not Missing Anymore
A few things that were missing yesterday did make appearances today:

  1. WPF
    Half of the existing XAML story started to pop-up today. While it didn't make the keynotes, Soma and ScottGu talked about WPF and pending improvements coming in .NET 4.5 during Channel 9 interviews. So rest easier. WPF is not dead and not stagnent. It's evolving along with .NET.
  2. ASP.NET
    While I didn't list ASP.NET yesterday, the astute commenters pointed-out that ASP.NET didn't show-up yesterday. That changed today, along with the appearance of ScottGu during the keynote. Lots of ASP.NET MVC demo love shown today, so again, rest easy ASP.NET (MVC) developers.
  3. Steve Ballmer
    Steve was almost a no-show again today, but in what was one of the bigger "surprises" of the week, Ballmer showed-up at the end of the keynote to finally lend the needed "weight" to Microsoft's announcements this week. (Meanwhile, no Steven Sinofsky today.)
Still Notably Missing
While a few things did show-up today, many important topics are still missing in action:
  1. Silverlight
    WPF showed-up today, but Silverlight is still painfully absent. True, Silverlight 5 is still coming and Silverlight will continue to work in Win8 via (non-Metro) IE10. But little is being said about what happens after SL5...
  2. Partners
    The only partner to make a keynote "appearance" in 2 days of keynotes was Viper SmartStart, and even this was via Microsoft proxies (and it didn't really involve Win8). It's plain to see that the Microsoft Win8 "cone-of-silence" reached far and wide, but hopefully Microsoft re-engages partners more deeply now that the Win8 cat is out of the bag.
  3. Windows Phone
    Still no focused Windows Phone talk today. Ultimately, it's only disappointing because it means the rumored idea of writing one app for Windows Phone, Windows Tablet, and maybe even Xbox is still just that: rumor. WinPhone does get some session coverage this week, but no major announcements or changes to the story.
  4. Nokia
    If there is any hardware device vendor you'd expect Microsoft to be working super closely with for both phones and tablets, you'd probably think Nokia. Unfortunately, not only did Nokia have no presence at BUILD, but the Developer Preview hardware was delivered by Samsung, not Nokia. Sure, Nokia is probably heads-down on making successful WinPhones, but an exciting Nokia device would have really helped put the BUILD enthusiasm over the top.
  5. Guidance
    There is a LOT of new stuff for developers this week, but at the same time, none of the old stuff is obsolete. You can still use the WPF and Silverlight you know and love in Windows 8, side-by-side with the new WinRT model. When should you use one or the other? What type of XAML is Microsoft going to evolve long term? That's up to you to figure-out this week. Fortunately, when it comes to tools, Telerik is prepared to support any future path you choose. And we're already starting to help you with guidance, too, with posts like this from Telerik EVP Doug Seven on Silverlight and WPF.
And, of course, all of the other things I listed yesterday remain MIA: Office in Metro, acknowledgement of XAML for older versions of Windows, plug-ins for immersive IE, shipping timelines, and Xbox.

Answers and Questions
For all of the answers BUILD provided to long running summer questions, it also created many more. Additional answers will continue to flow from info shared during BUILD this week, but this is just the beginning to a long journey. 

Windows 8 and the related Metro style apps are in Developer Preview today. We are many months away from BUILD technologies even being officially available, let alone broadly deployed.

So, take a deep breath! Remember that this is a future focused conference. Your world does not change.

Over the next few weeks and months, Telerik will work hard to help you understand the Windows 8 information, but we will also help you continue to focus on the here-and-now. You have software to write, you need tools, and that doesn't change while Win8 continues to bake. Stay tuned to Telerik and we'll help you be successful today and tomorrow.


BUILD Day 2 Keynote: What You Need to Know

With the California sun now rising in the sky, it's time for another fresh day of BUILD and the all important Day 2 keynote. Like yesterday, rather than compete with the live video stream, I've real-time condensed today's keynote in to the key moments you need to get the overall jist of what Microsoft shared. This isn't a blow-by-blow blog of the keynote, but if you spend 5 minutes reviewing this post, you'll know what you need to know from the second BUILD keynote.

Key Keynote Moments

  1. Windows 8 Tablet Distraction
    Not explicitly said or part of the keynote, it's worth noting that much of the audience seems to be distracted by their shiny new Win8 tablets this morning.
  2. Devices + Cloud
    Here is one of the "missing" elements from Day 1: extended talk about the cloud. In the opening of Day 2, Microsoft spent some time talking about building apps for Windows devices (Phone, Tablet) that are deeply connected to the cloud (Azure services). But not much Azure really demoed until much later in the keynote.
  3. Visual Studio 11 Features
    As part of Jason Zander's demo of building apps with the cloud, a handful of VS2011 features were introduced, like a new and improved image editor, new baked-in power tools, and improved debugging tools for working with DirectX. (He'll cover way more of VS2011 in his sessions today- find the session recordings.) VS2011 Developer Preview will be available today, along with Windows Azure SDK Toolkit.
  4. Scott Guthrie returns to the stage in trademark red polo
    Scott may now be CVP for Server & Tools, but he's still rocking the ASP.NET demos people have made him popular. Scott showed-off some cool new tooling for ASP.NET MVC 4, such as a "design view" for ASP.NET MVC, auto-minification of CSS and JS, and async features from .NET 4.5. If you missed ASP.NET or .NET 4.5 talk on Day 1, this covers it.
  5. OSX and iPhone emulator take the stage
    Small moment, but it stands out. As part of demonstrating some of the new things in ASP.NET 4.5, like jQuery Mobile, ScottGu did the unthinkable and showed the iPhone emulator running on a Mac. Good to see Microsoft acknowledging the world around them today.
  6. TFS running on Azure as a service
    Like TFS? Good for you. Microsoft showed more today of TFS running in the cloud on Azure. Formally called, Team Foundation Service running on Azure.
  7. Something for Windows IT Pros
    It's easy to forget as a developer that there are non-developers at BUILD. Microsoft addressed this crowd today with demos of new Virtual Machine Management tools and other Win8 server features. But I doubt you're an IT Pro if you're reading this blog...
  8. Windows Azure Credential Service
    Nice easy way to log-in using popular identity providers (Facebook, Google, Live, etc.) with just a few lines of code (seems to require WinRT). Makes single-sign-on across Windows 8 devices "fluid" process.
  9. Viper car security device connected to the cloud
    What makes this demo interesting is that it's the FIRST in two-days that involves an external Microsoft product. No partner on stage, but an external company nonetheless. Demo showed how the car device can send data to the Azure cloud and then visualize on the web and Phone.
  10. West Coast Customs CEO takes the stage
    Microsoft is going to (read: not done yet) build a car with West Coast Customs. It will be part of the TV show, so watch for it in the future.
  11. [THE SURPRISE] Steve Ballmer takes the stage!
    Just when everyone thought the Day 2 keynote was over, Steve Ballmer shows-up and takes the stage. Probably the biggest surprise so far of BUILD! Steve spent about 20 minutes reinforcing the Microsoft big picture for Windows 8, Azure (cloud), and Phone. Steve brought a much needed sense of "reality" to everything being talked about at BUILD, acknowledging that MSFT has a lot of work ahead of it to make Phone and Win8 successful. Good way to end the keynotes.
Who Was On Stage?
Unlike Day 1, where Sinofsky more-or-less ran the entire keynote, today was a revolving door of presenters. For your easy reference, here's who we saw:
Final Thoughts & Reactions
If all of the talk about a new "bold" version of Windows was making your head spin, today's keynote was like Advil, reminding developers that all of the things they've loved about the evolution of Microsoft's server technology and tooling (.NET, Visual Studio, Azure, Win Server) are still happening. While Windows 8 is cool and introduces some interesting new concepts, if you're in an environment locked-in to Win7 (or older), you may have felt a bit left-out on Tuesday. After today's keynote, you should feel better, with familiar faces like ASP.NET, jQuery, and even Windows 7 taking the stage.

Now, off to the overloaded schedule of individual sessions to learn more, get more reactions, and ask important questions.

Tuesday, September 13, 2011

BUILD Day 1: What wasn't said?

Silence speaks volumes. While there is coverage ad nauseum about what Microsoft did say at today's opening keynote and following sessions, there is much less attention on what's not being said. True, there is another keynote scheduled for tomorrow, and presumably many additional topics will be covered (like tooling and ALM), but certain important topics are conspicuously absent from the Day 1 conversations.

The Missing Topics

  1. Silverlight and WPF?
    It's clear after today that Metro style XAML apps are Microsoft's vision of the future, but what does that mean for the future of Silverlight and WPF? Of course, SL and WPF as we know them now will continue to run in Windows 8, but will they continue to evolve? Microsoft is risking another WinForms-like messaging challenge by choosing to mostly ignore Silverlight/WPF rather than address them head-on.
  2. Xbox & Phone
    One of the more extreme things rumored to make an appearance at BUILD was Xbox integration with with the new Windows Runtime. Or more broadly, a story that tied Windows desktop, tablet, phone, and Xbox together with one model. Unfortunately, both Phone and Xbox are no-shows so far, so it's all PC and tablets with Win8 right now.
  3. Shipping Timeline
    While not entirely unaddressed, the "there is no target date" for shipping Windows 8 message is a bit unsettling, too. Heading-in to BUILD, there was a lingering rumor that Windows 8 would be near or at beta now, with a possible goal of shipping Windows 8 tablets for this holiday season (or very shortly there after). Instead, with a pre-beta Developer Preview delivered, we're left to assume Windows 8 many not be fully ready for RTM until mid- to late-2012. So while everything being talked about this week is cool, it's almost a year away from GA. Which is a bummer, especially as other tablets march on.
  4. Expression Web
    One of the more interesting tooling demos in the keynote was a new version of Expression Blend that targets HTML and CSS design. What wasn't mentioned is how this expanded Blend focus impacts the existing "web product" in the Expression suite (Expression Web). Is Expression Web replaced by the new Blend? Pushed in to a smaller corner for the remaining Front Page-like dev fans? Mums the word for now.
  5. Office Apps for WinRT
    Given how important Office is to Windows (it's the 2nd major financial pillar at Microsoft), its absence, even as a simple preview, is also noticeably missing at BUILD. I guess the Win8 "cone of silence" extended fully to the Office team and they haven't had a chance to build Office versions for Win8 yet. Office will most definitely find its way to WinRT (Sinofsky is an Office alum, after tall), but its absence this week only signals a longer road to RTM ahead. Can you really ship Win8 without Metro Office apps?
  6. Plug-ins in Immersive IE
    We know HTML5 is a first class citizen in Win8, but how does Silverlight carryover to the new Metro version of Internet Explorer? Early demos of immersive suggests it doesn't. In fact, no plug-ins work in the immersive IE. Plug-ins do work in the "classic" view IE9/10, but if you thought you could run a Silverlight app in Metro-mode via the browser, think again. No Flash. No Silverlight.
  7. Older Versions of Windows
    What older versions of Windows? If you are at BUILD, apparently there are no older versions of Windows. Everything related to WinRT and Metro are Windows 8 only. There will be no backport of the new runtime for Windows 7. It makes sense, but does that signal a future of multiple app implementations if you want to support Windows 8 + Windows 7 (and older) + other platforms?
  8. Steve Ballmer
    Quick: Your company is about to introduce a "bold" new "reimagination" of the your flagship product. Who do you send to introduce this product to the world? Of course you send the directly responsible VP, but don't you also send your CEO to make an appearance? Under any other circumstance perhaps Balmer's absence at BUILD is a non-issue. But given the long running rumor of Sinofsky as CEO-in-waiting, no Balmer makes this feel even more like the Sinofsky Show.
Don't get me wrong. There were some great and exciting announcements today. I covered some in my original keynote blog post, and the press and thoroughly covered the rest. It's easy to look at what was said and report it.

But it's just as important to step back and reflect on what we were not "supposed" to think about in the face of the flashy demos and free tablets. What do you think? Are all of these non issues? Are there other important topics missing in the BUILD conversation so far?

Top 10 Moments from BUILD Day 1 Keynote

When a keynote is being streamed live to the interwebs, there's really little point in live blogging. Back when I first started Telerik Watch, live streaming events were very rare, so live blogs made more sense.

That said, if you're like me, sometimes you don't have time to suffer through a 90 minute event just to catch the few bits of interesting news. What you really want is a summary that tells you everything you need to know to capture the overall jist and important news in a few short minutes.

Thus, this post.

Rather than bring you blow-by-blow typed updates as the BUILD Day 1 keynote unfolds, I instead provide an "instant summary" for your easy digestion. I present the "Top 10 Moments" of the first BUILD 2011 keynote (in chronological order).

Top 10 Moments (from my point of view)


  1. Windows 7 usage is now greater than Windows XP
    Good (small, but genuine) applause from crowd. And good to know on the eve of Win8 that the WinXP anchor is dissolving.
  2. Core performance of Windows 8 will be solid (focused on fundamentals)
    First big applause of the keynote. Sinofsky showing-off the performance of Win8 dev preview, consuming nearly half the memory of an equiv Windows 7 setup.
  3. Picture Password
    This "Windows Shake" demo of Windows 8. Unlock your (touch) PC by tapping and swiping on a picture.
  4. Sinofsky takes another dig at Chrome
    "I can't imagine anything better than a 'chrome-free' browsing experience." Haha. Ha.
  5. You Pick the Language you want to build your apps (XAML Lives!)
    XAML fans breath a sigh of relief. New Windows Runtime (WinRT) introduced to support Metro apps that use XAML OR HTML + JavaScript/.NET/Native Code. Unified runtime.
  6. Expression Blend for HTML & CSS
    Huge positive reaction for a new version of Blend that will support HTML and CSS editing.
  7. Windows Store with easy deployment tools from Visual Studio
    One-click deployment of HTML (and XAML) apps to Windows Store from Visual Studio. Transparent app review process. Microsoft will share app approval review tools so everyone can check their own apps before uploading. Windows Store app is built using HTML + JS.
  8. Metrofication of Silverlight XAML apps 
    A new namespace redirects, a handful of build forking for new Win8 APIs, and Silverlight runs natively in new Win8 native XAML. Bringing Silverlight to native Win8 XAML is going to be (at least by keynote demo claims) easy. Same for Windows Phone - one line code change.
  9. Lightning fast Windows 8 cold boot demos & power management
    People loved watching PCs of various specs boot in less than 10 seconds. Big rig booted near instantly. Lesser machines booted closer to 10 seconds. All machines have new "Connected Standby" mode that does an impressive job sipping power when in standby mode (similar to what the iPad does to last forever on standby).
  10. Windows 8 tablet giveaway. The BIG moment.
    As expected, Microsoft announced the giveaway of the Samsung Windows Developer Preview PC, to which the audience provided the expected cheers. Includes Intel Core i5, 1 year of free AT&T 3G, Wacom digitizer, dock with USB port, and on and on...Loaded with Win8 Developer Preview.
  11. [BONUS] Sinofsky shows Windows 8 in normal "professional" use (keyboard/mouse)
    Sexy new task manager, using mouse and keyboard, new control panel (metrofied), one-click PC refresh and reset. Gives a good 20 or 30 minute overview of using Windows through a range of scenarios. This is really what you might consider the "everything else" section of the keynote (multi-monitor support, Explorer changes, updated magnifier, and so on).
  12. [BUT WAIT, THERE'S MORE] Sync and Live Apps for Metro Windows
    The Windows Live apps you know now rewritten in HTML and JavaScript for Metro with some Windows Live syncing to manage your settings and preferences. Expanded and more useful SkyDrive for accessing files remotely via Live.
  13. [WHY NOT, ONE MORE] College Interns wrote all of the demo apps for Win8 Preview
    All of the demo apps in Windows 8 were created by Microsoft's college interns. 17 teams, 2 to 3 devs per team, 10 weeks. Microsoft is trying to appeal to the college developer in a big way.
Release Path: Preview (today). Beta. RC. RTM. Then GA. Driving by quality, not by date, so no official release date today. Developer Preview will be "managed" by Microsoft and updated during preview phase. Preview build available tonight at http://dev.windows.com.

Final Thoughts and Reactions
What can I say? They keynote largely delivered on expected announcements and was in-line with well established rumor.
  • XAML survives and thrives (stop worrying)
  • HTML/JS are added as new dev models with new and improved tooling (Blend/VS)
  • WinRT provides a new unified API for JS/.NET/Native code apps
  • Metro styling is everywhere and Metro apps are 1st class experience (but not only experience)
  • Win8 hardware is cool and power savvy (and equally ARM and x86 friendly)
  • All BUILD attendees get a Developer Preview tablet
Nothing really came-in as surprising, but Windows 8 features and hardware definitely showed very well. The opening of the keynote was a little rough, but Microsoft found its groove and delivered some exciting news that I think developers are eager to dig-in to.

Of course, Telerik was already well prepared for today's news. We've been preparing all summer for this and we are already prepared to deliver the tools you need for today and tomorrow. Learn more about Telerik's commitment on Telerik.com.

What was missing today?
  • Azure
  • Office (no Metro Word...yet...)
  • LightSwitch
  • Silverlight the plug-in (mostly)
  • Partners!
  • In-depth look at new Win8 tools or app runtime
We'll probably get a lot of that tomorrow morning. For now, it's off to sessions and lunch to see how everyone feels about the keynote. What did you think of today's keynote? Are there other "top" moments from the morning?


Sunday, September 11, 2011

HTML5 overload at DevConnections 2011, October 31 to November 3

I am honored to be a speaker for the 2nd time this year at DevConnections, speaking at DevConnections Las Vegas October 31 to November 3rd. At this fall's conference, I will be presenting a lot of content on for ASP.NET developers on HTML5. A lot. Specifically, I'll be doing one full-day pre-con all about HTML5, CSS3, and related web technologies, and then two additional HTML5-focused sessions during the conference. If you're an ASP.NET developer looking for a way to quickly get started with HTML5, this is the perfect conference.

HTML5 Pre-Con Workshop (Monday, Oct 31)
If you are a ASP.NET developer ready to start really working with HTML5, this is a full-day pre-con you don't want to miss. I'll spend a day taking you from "What is HTML5?" to teaching you the essential ins and outs that will help you start adopting HTML5 immediately for website and app development, for both desktop browsers and devices.

A full overview of the workshop is available on the DevConnections website.

Unlike other conference sessions, you must register separately for the pre-con. So if you think the idea of Las Vegas + HTML5 + some really fun learning sounds like a good idea, be sure to include the pre-con in your registration! It'll be a great way to kick-off your week.

Questions about what the workshop will cover? Feel free to contact me or ping me on Twitter (@toddanglin) and I'll be happy to help answer questions before and after the event.

HTML5 Sessions
After the workshop on Monday, I'll be doing two additional HTML5 sessions during the week:
  • Tips & Tricks for Adopting HTML5 Today (Wed, Nov 2 @ 10 AM)
    This is an intensely practical session. If HTML5 seems like a lot of hype to you, like something that's not ready for real world browser use, this is a must-see session. We'll examine the different strategies and techniques that the ASP.NET developer can employ to begin adopting HTML5 and CSS3 today while still maintaining broad browser compatibility. This session is full of practical tips and examples you can begin applying to any HTML5 work you're doing (or want to be doing) now.
  • Doing More with LESS for CSS (Wed, Nov 2 @ 2:15 PM)
    I love this session, and audiences that have attended this session in the past love it, too. LESS is a simple framework that extends the power of CSS to give the language all of the things we wish it had out of the box: variables, nested-rules, mix-ins, and even operations. The cool thing is that this is 100% usable today without an ounce of concern -- LESS outputs plain-old-CSS (POCSS).  This is a huge timesaver for developers adopting CSS3 rules, and a great way to improve CSS maintainability. The session will also introduce ways to easily work with LESS in Visual Studio, as well as ways to quickly deploy in ASP.NET. You'll be disappointed if you skip this session. I promise.
HTML5 Jumpstart
In case you're not seeing the writing on the wall, HTML5 (and related technologies, like CSS and JavaScript) are becoming increasingly important for all developers (not just "web" developers) to learn and master. 
  • Microsoft is backing HTML5 with features in ASP.NET. 
  • Google is backing HTML5 with Chrome OS and the Google Web Store. 
  • Apple has always been a strong proponent of HTML5 (heck, they own html5.com). 
  • Facebook is rumored to be betting on HTML5 in a major way with a new app platform. 
  • And Amazon recently showed their faith in HTML5 by launching an HTML5-powered Kindle app and music service.
The entire industry seems to understand the importance of HTML5. Do you? Don't get behind and attend my DevConnections HTML5 pre-con workshop and sessions this November!

Friday, September 09, 2011

Windows 8 Isn't for Desktops

Windows 8 Tablet Concept/Mock-upWith BUILD just around the corner, opinions are running high about what next week's Windows 8 unveil will bring. But here's a thought:

Even if Windows 8 is the most awesomest OS you've ever seen, who's going to buy it?

Of course, you, dear geek reader, don't count. You, like me, like to live at the cutting (sometimes bleeding) edge of everything. So outside of developers and geeks, who is the customer for Windows 8?

It Isn't Business

We can safely assume Microsoft's bread-and-butter business customer is not going drive record sales of Windows 8. For starters, much of what's new in Windows 8 is focusing on consumer value and experiences. The new immersive tile UI is cool, but it's probably not what a business wants to put in-front of its call-center/task-driven/Office-addicted employees. In fact, many businesses still would be content with Windows XP if it wasn't now (or almost now) unsupported and unavailable on new PCs, so even the modestly improved "Classic Shell" in Win8 (i.e. Win7-like explorer) offers little incentive to upgrade.

In fact, Windows XP plays a big role in the problem facing Windows 8.

As reported today by Gartner, businesses are suffering "upgrade fatigue" having just finished major upgrades to Windows 7. Due to the utter disaster that was Windows Vista, most businesses skipped that version and upgraded directly from Windows XP to Windows 7. In fact, by Gartner's reporting, 80 percent of companies upgraded from XP to Windows 7. That's an amazing accomplishment for Win7, but a big problem for Win8.

What has Microsoft inadvertently taught companies? You can upgrade your OS every 10 years. No need to incur the pain and costs of upgrading every 2 to 3 years as business used to do in the 90s.

Add to that the slowing hardware cycles in business (which often help usher-in new OSs) and increased push to virtualize the desktop, and it's clear business is not likely to help Windows 8.

It's Isn't Consumers

So if business isn't the customer, it must be consumers, right? Microsoft certainly seems to hope so with a big emphasis on consumer features in Windows 8. But do consumers (non-geek) really buy Windows anymore? Do they buy any operating system, for that matter?

Unlike 1995, when people stood in line to buy copies of Windows 95, the OS in 2011 is a commodity. It's an invisible layer that just comes with a PC, phone, or tablet. With constant crashing and BSODs a thing of the relative past, people have forgotten about the plumbing layer that makes their PC tick.

No, consumers don't buy Windows. They buy new computers, and an OS comes with the computer. But unfortunately for Microsoft, the sales of new computers are starting to fall-off, too. So the primary well through which new versions of Windows are pushed to consumers is starting to dry-up, with the consumer flocking to "cool" Apple hardware and tablets.

And like business, the family PC is lasting longer than it used to these days. Gaming has largely moved to the console (for which Microsoft is getting its share via the Xbox), and browsing the web, checking email, or creating a Office doc just doesn't need more megahertz.

Tablets or Bust

If the neither business or consumer customers are interested in buying an OS, then it's fair to conclude that Windows 8 is not for desktops. Sure, it will trickle-out to desktops via new computer purchases and the lagging corporate giant finally upgrading from XP, but the success of Windows 8 will not come from its traditional home on PCs and laptops.

For Microsoft and Windows 8, it's tablets or bust.

Think the new Metro Tile UI looks a little crazy on a desktop? Fine. Microsoft doesn't care, because it has clearly been designed to make the Windows tablet experience more exciting. You already know what you're going to get (and likely what you want) on a desktop with Windows 8: a lightly improved version of Windows 7. But on a tablet, everyone is ready to be wowed with something radical (and not in the deflating "WOW Starts Now" Vista sense).

That said, consumers still don't buy operating systems.

In this era of tablets, shoppers do not go in search of an "iOS tablet" or an "Android tablet" (see: Google Buys Motorola). Instead they buy the iPad, the Motorola Zoom, or the Samsung Galaxy. They buy the experience, software + hardware.

Who Will Control Microsoft's Fate?

Based on this complete analysis, the success of Windows 8 is going to come down to the hardware Microsoft can bring to market for Windows-powered tablets.

Traditionally, with the exception of Xbox, Microsoft leaves hardware manufacturing to partners. And so far, there's no reason to think Microsoft won't continue to rely on this model with Windows 8 and tablets. But given the unbelievable importance to Microsoft of a successful Windows 8 tablet, which will depend in large part on hardware, is Microsoft ready to leave its fate in someone else's hands?

Look left or look right and Microsoft's peer competitors are all controlling software and hardware:

  • Apple with iOS and the iPad
  • Google with Android and (acquired) Motorola hardware
  • Amazon with custom Kindle Android and assumed tablet hardware

Is it time for Microsoft to pivot and take control of the entire experience? Will Microsoft follow the Google model and acquire a major hardware partner (I wonder who that would be…) while still licensing the OS to the remaining partners?

If there's one announcement not widely rumored for BUILD, I would predict it will revolve around this very issue. And since Microsoft isn't likely to depend on the same partners that have failed to help Windows Phone, maybe BUILD will bring the introduction of the Windows Tablet (Designed by Microsoft in Washington. Assembled in China.).

We'll find out in a few days. Either way, Windows 8 isn't for desktops, it's for tablets.