My greatest frustration with Silverlight has been that Microsoft seemed more concerned with putting on a sideshow than doing basic engineering. For example, for binding to a second datasource in support of foreign key lookups, the silverlight combobox was just plain broken. Through three major releases they did nothing about this while churning out ever more spectacular - yet fundamentally useless - multimedia goodies.
But now, the time is near... the tooling for Silverlight line-of-business UI design has appeared in the VS2010 beta. Lo and behold, at exactly the same time appears the beta of Silverlight4 - and a whole raft of basic engineering problems are either fixed or being redesigned.
In retrospect I shouldn't have been surprised. Microsoft knew it would take time to build a whole platform, and they knew that during gestation it was more important for releases to support glitzy demos than LOB apps, since the watching hordes of management dolts will point and go ooooh aaaaah and tell their friends if you show them a rotating cube with movies on its sides but will fall asleep if you show them bound comboboxes.
In the beta it's not quite ready for prime-time. But it's streets ahead of what went before. The key word here is beta. They're in full flight getting this ready for what is really the first serious use as a tool, and it's looking better by the day. This is so encouraging that for the first time in ten years I am actively participating in a beta program, rather than using it as a source of free software, because I see the bug reports making a difference.
But what is Silverlight and who cares anyway? Browser markup (HTML) plus script (javascript) plus web services is a great prototype of how to build UI agents for server based applications and a shitty way to build them for real. Silverlight is what HTML+JS only hints at. All the lessons have been retained: markup, stylesheeting, scriptability.
The major gaps have been plugged:
- A coherent and shareable security model has been created (look up Windows Authentication Services)
- There is now quite good tooling in VS2010.
- There are styling tools for arts departments that limit their stupidity options.
- RIA makes it straightforward to have consistent validation at both ends.
Personally I doubt that any arts major will ever master stylesheet design, but that's another matter.
The future is not pure Javascript. For LOB develeopment, which is where the money is and always has been, script is a disaster. It's a pig to develop, a pig to debug, a security disaster waiting to happen, a performance nightmare.
Arguments that Flash is everywhere and Silverlight isn't are irrelevant. That's like saying that COBOL is everywhere. It was, and in fact it still is, but that had absolutely no significance for the next generation of development. Besides, All Microsoft has to do to make Silverlight ubiquitous is push it out with Windows Update. I'll give you very good odds that it will be in a Windows 7 service pack not long after VS2010 goes RTM.
Unlike Flash, Silverlight is built on XAML for which there is direct support in Windows. From Vista onward, XAML benefits from hardware acceleration. Moreover, the intended use of Silverlight is LOB development. The game is changing because for the first time ever, LOB on the net is starting to look like a good idea from a technical perspective.
Silverlight is the next big thing. It's a very good idea backed by big money and experience, and now is the time to get actively involved in the beta program. If you do, there will be a lot less to bitch about in the release version.
Regarding other platforms, I don't think Microsoft much cares, and neither do I. Mac users do not represent a significant market force and never will. Unix users are more numerous but are religious in their anti-Microsoft practices and wouldn't use it, and Microsoft would rather sell you a copy of Server 2010 anyhow.
Silverlight4 being finally a viable runtime for applications development, I would seriously expect to start seeing it on compact devices like Smartphones.
This was the question:
What potential do you see in
Silverlight judging from the current
trends, and what do you think
Silverlight will be used for in the
coming years?
and I answered it, explaining at every turn why I think so. Naturally I get downvoted without a word of explanation, while responses that do not even answer the question get upvoted. I can only surmise that I have painted a picture of Silverlight web domination that offended some Flash or Apple fanboy who really should stick to writing rubbish games and playing with his iPhone.