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 at 5:53 AM


Reader Comments:

Wed, May 18, 2011 Silver Dude NYC

I just started Silverlight 4 MVVM development and love it. 80% of our clients are on IE6, thus Silverlight is a strategic tool to give our web apps rich functionality without having to worry about multiple versions of webbrowsers. Faster to deliver, higher quality and consistency. Now we only have to develop Silverlight and eventually an HTML5 version.

Tue, Apr 12, 2011 HAD ENOUGH II Austin, TX

Couldn't agree with HAD ENOUGH I more. HTML 5 is a lot of hype. Has anyone actually tried using it? Silverlight is awesome. And with the MVVM pattern its more awesome. Been using it for 3 years. I used to be an ASP.NET classic/jquery/HTML/CSS developer. Now I think to myself. Why waste my time? Microsoft should concentrate on making the best web technology better. e.g. give me a better blend tool, instead of spending resources coming up with a tool for HTML5. Stay on the Silverlight line of thinking, Microsoft. When I put a Silverlight app in front of a client, their eyes pop out. Silverlight is the way to go with presentation. Making it better and more ubiquitous will just make it the the platform of choice.

Tue, Apr 12, 2011 JMac Arizona

I also agree with HAD ENOUGH. This is ridiculous on Microsoft's part. Microsoft didn’t become a market leader by making open software. Siverlight has finally starting to make significant market penetration on all hardware platforms. Pulling away from any focus on Silverlight only weakens their position. Microsoft’s weakness in the mobile device is solely due to the fact that they have not had an OS which was compatible with numerous hardware devices, and was reliable and competitive. I have been in this business for over 20 years. This does not comport with any other decisions made by Microsoft.

Sun, Apr 10, 2011 BEN DEWEY NEW YORK CITY

I love Had Enough's comment about "They don't want to have to abandon that stack, which is clearly superior, [..] and move to a one they see as frustratingly inferior". In my world of enterprise development rich and cheap are almost always chosen over broad-reach, especially when the app is internal only. I fear that MS is focusing too heavily on the broad reach aspect. I know mobile is a huge player and will surely play a large role in the future, but I'd hate to see a lose of momentum on silverlight under the false assumption that mobile will force everyone to choose board-reach as a priority when IMO its clearly not in the enterprise space.

Thu, Apr 7, 2011 Mike

I couldn't agree more with Had Enough. I recently had the pleasure or misfortune, which every way you look at it, of putting together some proof of concepts for each of the major smartphone operating systems. Silverlight on WP7 is by far the easiest, cleanest experience. MS please add Silverlight support on Android.

Thu, Apr 7, 2011 WHY Cross-platform

Silverlight is just another web fragmentation component; along with ActiveX controls (of old), Java applets, Flash, Curl, etc. These days, with MS phones at the bottom of the pecking order, WHY would anyone want to target SilverLight? Most developers would target the markets where the volume (and $$) are: iOS, Android and maybe RIM. However, with HTML5 and associated standards like SVG, CSS3 and family, it is very possible to create RIA web apps for phones. Having a better development and test environment for this toolset would make developers more productive and enable them to target multiple devices.

Thu, Apr 7, 2011 NOTHING BUT THE TRUTH

Silverlight is the right choice.

Thu, Apr 7, 2011 Garry@TriSys Cambridge, UK

With Mix '11 next week and rumours of the 'Jupiter' touch screen interface for Windows 8, coupled with this article plus comments, I am compelled to make a suggestion to Microsoft: Buy Visual Web GUI or architect something similar. The architecture of this product is much better than anything MS has come up, or coming up with. Developers can design web apps like WinForms and have them render in any browser - no HTML or Javascript code anywhere - the delivery engine takes care of that for you. If MS made this investment, it would greatly please all MS VS developers and would be a game changer. Please consider this request. I do not work for Gizmox (developer of VWG), but do know a good architecture when I see one.

Wed, Apr 6, 2011 Ivo Milanov

Going around the presentation layer mess and trying to target all devices from a single code base nowadays has only two feasible solutions: 1. use Java or 2. use Nevron Open Vision for .NET - a cross platform presentation layer framework that runs on WinForms, WPF, Silverlight, WP7 and will have many Mono bindings - all from a single code base. An HTML virtual client is also possible... Now you know what to do:)

Tue, Apr 5, 2011 samcov

Had Enough is essentially saying that this is just like a teacher dumbing down the lessons because on e student can't learn properly. We need to be moving forward, not backwards, unless there is a compelling reason. Unfortunately, that compelling reason is MS needs the market share and the bucks, although they don't say it directly. However, that need has blinded them to the original mission which was WPF Everywhere(WPF/E). If they lived up to that credo, we would have Silverlight on Android at a minimum, and possibly iOS.

Tue, Apr 5, 2011 Andrew Brust New York City

I hate to use the phrase "that's good feedback," but I'm going to anyway. Keep it coming. Honestly, I am not certain how MS can go about extending SL's reach to iOS and Android if Apple and Google aren't open to it, but your desire to have that coverage is still important to express here. Any thoughts/comments you have about MonoTouch and MonoDroid might be sensibly featured here as well.

Tue, Apr 5, 2011 Dumb Move

I too agree with HAD ENOUGH. I was really hoping to hear Microsoft announce additional platform support for Silverlight at Mix this year. Instead, they announce this. Who is going to adopt Silverlight going forward when Microsoft apparently has no plans to extend its reach? I believe the number one requested item on UserVoice was support for additional platforms. Great job Microsoft! By the way, Adobe managed to get Flash apps on both Android and iOS.

Tue, Apr 5, 2011 Also Had Enough

I completely agree with Had Enough. I am a asp.net/silverlight/wpf/sql/cache/oracle sql/java developer. Wen you cmpare html to other languages and platforms you can see its weaknesses. It is not ideal for building line of business applications or performance applications. Html is best for news, blogs, or marketting websites.

Tue, Apr 5, 2011 Had Enough

Putting increased tooling around a fundamentally deficient platform like HTML/Javascript/jQuery is like putting lipstick on a pig. It's still a pig. The developers who really do that kind of development tend to be MS haters anyway and no fancy new tools from their least favorite company is going change that. They're still going to manually type in all their markup and scripts in some non-MS editor. MS stack developers want to see that stack extended to support more platforms like iOS and Android. They don't want to have to abandon that stack, which is clearly superior, after all the time and expense that they have put into learning it and move to a one they see as frustratingly inferior and unproductive. Honestly, I cannot understand why MS is surrendering in a war that involves its core strength - software development platforms. If they had exhibited this kind of behavior in the past, we'd all be stuck with IBM TopView on OS/2 today.

Tue, Apr 5, 2011 Tom

"Totally agree with the previous commentator" -- I meant I agree with the FIRST commentator

Tue, Apr 5, 2011 Tom

Totally agree with the previous commentator

Tue, Apr 5, 2011 Andrew J. Brust New York City

I would not disagree with anything you are saying, but I would also say that the problem you point out is exactly why Microsoft is saying that they'll be focusing more on HTML 5 tooling going forward. That could change the productivity equation from where it stands today.

Tue, Apr 5, 2011 Had Enough

Programming in HTML, Javascript, and the nine million amateurish jQuery libraries needed to get anything done in the browser is the web equivalent of programming in assembly language for the desktop: incredibly unproductive and prone to hacking. Just try to implement a modern architectural pattern like MVVM across that mish-mash. All the hoopla around HTML 5 doesn't change the fact that it's still HTML. And don't give me any of that "write once, run everywhere" baloney. More accurately it would be "write once, debug forever because it runs differently in every browser". MS platform developers should be pushing MS to make Silverlight available on iOS and Android, not to dumb down development by making everyone do lowest common denominator web hacking. I don't see Steve Jobs pushing everyone to do that on the iPxxx platform. Nope, it's native development or the highway there.

Add Your Comments Now:

Your Name:(optional)
Your Email:(optional)
Your Location:(optional)
Comment:
Please type the letters/numbers you see above