Redmond Diary

By Andrew J. Brust

Blog archive

A New Position Paper on the 5s (Silverlight and HTML)

In the run up to Microsoft's MIX conference, next week in Las Vegas, a new post on the Silverlight Team Blog from Microsoft Developer Division VPs Walid Abu-Hadba, Scott Guthrie and Soma Somasegar provides new clarification of Microsoft's position on Silverlight and HTML 5. Read the post and interpret it for yourself. My take is this: given the current landscape of Smartphone and tablet OSes, only HTML 5 can let you reasonably target all of them, so Microsoft's going to bring you greatly improved dev tools for that platform. If your app needs to run only on Windows, Mac OS and/or Windows Phone 7, then Silverlight provides a richer, more optimized experience and greater developer productivity, so Microsoft's going to continue to invest there too.

I recently gave a talk on the Mobile Market at an exec briefing outside of Boston. In conducting my research for that talk, I discovered than an emerging strategy for mobile development is the creation of native apps that are merely thin shells around an embedded HTML 5 browser. The combination of there being five or six major mobile OS platforms (WP7, Android, iOS, BlackBerry, Symbian and webOS) and the fact that WebKit browsers show up on most of them (with IE9 and HTML 5 coming soon on WP7) means that a cross-device approach is the only one that's economically feasible for many developers, and HTML 5 is the cross-device approach that works.

With all that in mind, I think the position Abu-Hadba, Guthrie and Somasegar have outlined is the only one that's reasonable. The pledge Microsoft has made to support developers with strong HTML 5 tooling (and its gracious admission of the deficit that exists there right now) is a big deal, and I think it will be genuinely welcomed and appreciated by the developer audience.

Microsoft offers a strong Web and cloud platform that provides a superior environment for serving virtually any device (via HTML 5). It also has a highly evolved rich client platform in Silverlight that works beautifully on Windows, Mac and Windows Phone. So the emerging rule of thumb is to use Silverlight if the device targets support it; use ASP.NET and HTML 5 if not, or use a combination of Silverlight on supported devices and HTML 5 on all others. I think this is an ideal protocol given the far-from-ideal fragmentation we have in the client market.

There's the adage that when developing an application you can pick any two of the following three attributes: good, fast and cheap. Maybe we have a corollary to that now for cross-device development: pick any two of: rich, broad-reach and cheap. If that's the landscape, and I think it is, then Microsoft is giving us the best possible approach and toolset to work within it.

Posted by Andrew J. Brust on 04/05/2011


comments powered by Disqus

Featured

  • Uno Platform Wants Microsoft to Improve .NET WebAssembly in Two Ways

    Uno Platform, a third-party dev tooling specialist that caters to .NET developers, published a report on the state of WebAssembly, addressing some shortcomings in the .NET implementation it would like to see Microsoft address.

  • Random Neighborhoods Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the random neighborhoods regression technique, where the goal is to predict a single numeric value. Compared to other ML regression techniques, advantages are that it can handle both large and small datasets, and the results are highly interpretable.

  • As Some Orgs Restrict DeepSeek AI Usage, Microsoft Offers Models and Dev Guidance

    While some organizations are restricting employee usage of the new open source DeepSeek AI from a Chinese company due to data collection concerns, Microsoft has taken a different approach.

  • Useful New-ish Features in .NET/C#

    We often hear about the big new features in .NET or C#, but what about all of those lesser known, but useful new features? How exactly do you use constructs like collection indices and ranges, date features, and pattern matching?

  • TypeScript 5.8 Beta Speeds Program Loads, Updates

    "TypeScript 5.8 introduces a number of optimizations that can both improve the time to build up a program, and also to update a program based on a file change in either --watch mode or editor scenarios."

Subscribe on YouTube