I was chatting with Mike Vernal at lunch today about the various reactions to Microsoft's Silverlight project and he mentioned that he hadn't seen much insightful analysis or critiques beyond general kudos and praise from the blogosphere. Since I'd seen quite a few posts that went beyond the kind of gushing you see in posts like Robert Scoble's Microsoft "rebooted the Web" yesterday or TechCrunch's Silverlight: The Web Just Got Richer, I thought Mike and my readers would appreciate some pointers to responses that contained a little more technical meat from seasoned Web developers. 

In his post Frustration with RIA platforms Julien Couvreur writes

There has been a recent flurry of announcements around rich internet applications (RIA) recently, from Adobe (Apollo, open-sourcing the Flex SDK and Tamarin), Microsoft (Silverlight v1.1) and Sun (JavaFX). They seem to battle plain AJAX on three main fronts: richer rendering capabilities, improved performance, and a comprehensive set of designer and developer tools.
...
But they do little to address the native problems of the web.
Here are some examples:

  • integrating web sites and services,
  • cross-domain mashups with private data,
  • access control, identity and charging for web services,
  • user-driven website customization and extension, safe client-side composition.

In other words, the recent wave of RIA platforms make things look nicer and run faster, but we are still left off with the non-semantic markup, the page model, and the same-domain policy.

Grant Skinner writes an interesting analysis from the perspective of a Flash developer entitled A Flash of Silverlight? My Analysis which is excerpted below

By now, everyone has heard of Silverlight (previously WPF/E), Microsoft's answer to the Flash player...From my perspective, the discussion can be broken into four categories: opportunity, runtime, tools, and intent.

Opportunity
...
Flash may not have the gold rush opportunities of Silverlight, but it is a very entrenched technology (98% installed base, 85%+ for Flash Player 9) that will continue to expand its reach, and offer stable growth in web interactive (and beyond) over a long period. There's money to be made in Silverlight development right now, but its future is less certain once MS stops throwing money at it. However, it is worth considering that the skills you acquire using Silverlight will be fully applicable to other Microsoft platforms.

Runtime
...
Silverlight has a lot of potential in this area if Microsoft can innovate. Unfortunately, I have yet to see evidence that they can, and Adobe has a massive lead, both in terms of capabilities and adoption.

Tools
...
Microsoft can and will build a better developer toolset, and provide a better story for tool integration. However their unwillingness to support Macs, and their inability to truly understand creativity or designers will be their Achilles heel. Adobe has a deep cultural understanding of the creative process, and experience with cross-platform support that Microsoft can't match

Intent
...
Cross-platform support for Silverlight is not in Microsoft's best interests if they kill Flash. Neither is continued innovation. As a long time Mac user, I really don't trust Microsoft's intentions, but I do welcome the pressure Silverlight places on Adobe to continue innovating

And from Mike Shaver of Mozilla there is the high cost of some free tools which contains the following gem

If you choose a platform that needs tools, if you give up the viral soft collaboration of View Source and copy-and-paste mashups and being able to jam jQuery in the hole that used to have Prototype in it, you lose what gave the web its distributed evolution and incrementalism. You lose what made the web great, and what made the web win. If someone tells you that their platform is the web, only better, there is a very easy test that you can use:

Is this the web?

When the tool spits out some bundle of shining Deployment-Ready Code Artifact, do you get something that can be mashed up, styled, scripted, indexed by search engines, read aloud by screen readers, read by humans, customized with greasemonkey, reformatted for mobile devices, machine-translated, excerpted, transcluded, edited live with tools like Firebug? Or do you get a chunk of dead code with some scripted frills about the edges, frozen in time and space, until you need to update it later and have to figure out how to get the same tool setup you had before, and hope that the platform is still getting security and feature updates? (I’m talking to you, pre-VB.NET Visual Basic developers.)
...
The web can eat toolchain bait like this for breakfast. And, if Mozilla has anything to say about it, it will do just that. You won’t have to give up the web to work offline any more, or programmable 2D graphics, etc. Soon you’ll have the power of 3D and great desktop/application integration as well, via projects like canvas3d and registration of content handlers, and you’ll have it in a way that’s built on open specifications and a tool ecosystem that isn’t a monoculture. Why wouldn’t you choose the web, given its record and power and openness?

All three posts contains some ideas I agree with and many I disagree with. I agree with Julien Couvreur that at the end of the day we still don't have a good solutions to many of the problems facing the Web as a platform. RIA platforms concentrating on how to make things shinier and prettier while writing less code are distracting us from many of the problems that still need to be solved to lead the Web to its true potential. Grant Skinner's post reads to me as if he's in denial. Everywhere he grudgingly gives Microsoft Silverlight a compliment he follows up with an insult that questions the company's competence and assumes that the platform will not fulfill its initial promise. Mike Shaver has a lot of good points in his post especially with regards to RIA platforms ensuring that they play nicely with everything that makes the Web so great in the first place. However I can't help but smile at the final comments in his post that end up sounding like he is pitching Mozilla's proprietary approaches to building Rich Internet Applications as alternatives to the proprietary approaches coming from Adobe, Microsoft and Sun.  :) 


 

Monday, May 14, 2007 11:23:34 PM (GMT Daylight Time, UTC+01:00)
Grant Skinner is hardly in denial. Macs are the preferred medium for designers, and these are the guys that'll be deciding the future of the front-ends in next-gen RIA's. Like it or not, they'll stick with dev platforms that they know will be supporting their preferred hardware in a few years time - and that just isn't top on the agenda for Microsoft. Most importantly, Microsoft just doesn't know design like Apple does.

Just like Xbox needed Halo, Silverlight needs a killer-app to get the installed user-base. And I've yet to see any evidence of a Silverlight based YouTube killer surfacing any time soon.
Monday, May 14, 2007 11:58:56 PM (GMT Daylight Time, UTC+01:00)
When is proprietary not proprietary? When it's open source..
Tuesday, May 15, 2007 1:12:55 AM (GMT Daylight Time, UTC+01:00)
Just to clarify, 3 of the 4 linked Mozilla features are based on WHAT WG specs. Not exactly proprietary, even if it is open source...
Tuesday, May 15, 2007 4:38:56 PM (GMT Daylight Time, UTC+01:00)
As Mark points out, everything but canvas3d is based on specs that have been built with other browser developers in an open fashion, and for which we're committed to tracking standardization updates. Canvas3d is more experimental, and is something that we've been discussing with other browser folks, but you're right to say that it's not specified in as open a fashion. Perhaps that weakened my post? Alas.

But my post was not just, or even primarily, about Silverlight and Apollo and JavaFX (I cannot get over that name!) being closed source; it was about the fact that what you get out of those tools isn't the web, and can't be used like the web can. Even the most "proprietary" canvas3d application can be viewed and repurposed and mashed up, and combined easily with existing content and tools and architectures on the web.

I _do_ think that being open in source and process is a strong hedge against being proprietary, and that it is an important contrast to consider versus platforms that have explicit tactics taken to prevent others from providing compatible alternatives. But that's not the only distinction in play here, and perhaps not the most important one about which to raise awareness.
Tuesday, May 15, 2007 5:31:32 PM (GMT Daylight Time, UTC+01:00)
Hi Mike,
I guess I've had the proprietary nature of RIA platforms on the brain since Mark Pilgrim's 'silly season' post. Even though your post wasn't about the proprietary nature of the platforms, it doesn't change the fact that one interpretation of your post is that RIA developers shouldn't target the Microsoft or Adobe platforms exclusively but instead should target the Mozilla platform exclusively. Of course, since the specs are open, the technologies aren't really proprietary but they effectively are if only Mozilla implements and supports them.

PS: I agree 100% with you that RIA platforms needing to be more like traditional Web technologies instead of taking a divergent path.
Wednesday, May 16, 2007 5:31:09 PM (GMT Daylight Time, UTC+01:00)
To address the view source of .net assemblies: It would certainly be technically possible to replace the IE "Page: View Source" with "Open assembly through Reflector in Visual Studio". If the assembly is obfuscated that could mean a little tedious search/replace work to make it compile again but ask anyone and they'd debug "obfuscated" c# in VS over JavaScript in IE.

Mashups etc: Probably something that's more feasible with the dynamic language runtime
Google Indexing/linking of dynamic pages loaded into Silverlight app from internal database: This is interesting and potentially allows to take the search engine usability/usefulness to a whole now level. (blah semantic web blah blah)
ac
Comments are closed.