What I find silly is that a large majority of developers prefer creating applications in Flash rather than Silverlight. Flash has proved to be very hard to reverse engineer thus has very little open-source support. With Silverlight, Microsoft has sponsored Novell in creating Moonlight which is completely open-source and could be built into every browser at one stage.
Yet I still read that people won't touch Silverlight because it's so proprietary and made by Microsoft!
That's probably one reason but as history proves people will stick with what is popular and has a big install base unless an alternative exists that is so compelling that there is a real incentive to adopt it and help push it as the replacement. Silverlight apparently is not catching on in that way. Even companies Microsoft paid to use it are jumping off the ship. That cannot possibly be a good sign for its future.
Moonlight for the moment has stability issues. I'm using version 1.9.3, which is a preview, and version 1 which is more stable is worthless since I haven't found many clips compatible with it.
What I do like about it is that Microsoft supports it. The first time I installed Moonlight was because of a page that required Silverlight, and on clicking the "Install Silverlight" button, I got redirected to the Moonlight page.
That's pretty neat.
Silverlight has great potential, because you can reverse-engineer it more easily, has support for multiple languages and you only need a text editor to create a Silverlight clip. And in version 3 they are introducing an API for plugable codecs, which is making it possible to stream OGG/Theora and Vorbis files with a Silverlight applet.
Flash is more popular because of inertia, and because many designers use Macs and have invested heavily in Adobe tools. Microsoft Expression only runs on Windows. They would have a lot more to gain if they released a Mac port.
> Flash is more popular because of inertia, and because many designers use Macs and have invested heavily in Adobe tools.
A minor irony, Flash has had a bad reputation peformancewise on the Mac platform for a good decade now... and the migration from PPC to Intel hasn't helped matters much, as is my understanding.
From my experience, Flash has only ever worked optimally in Internet Explorer for Mac OS 9.x. Every other platform sucked hind tit. These days I bet Windows takes priority.
Silverlight is proprietary. And it's just the same type of evil, but maybe at a lower degree (it's still based on proprietary codecs and the main implementation is not free/open source).
Developers choose flash because it's much more popular and has mature tools and a significant pool of experienced professionals who can work with it. It's not only about the technical features of Silverlight compared to Flash (Silverlight doesn't really stand out), it's also about the ecosystem.
Silly? Flash has been around for ages, they've courted, supported and won over the design community, it seems to run most places you'd want it (already) and it's not Microsoft, it has great tool integration...
It'd be nice if there were maybe 2 or 3 factors that mattered but there are probably a dozen or more reasons people uses flash over silverlight and none of them have to do with openness. JavaFX and Silverlight are late to the game and they don't do anything more, they just don't raise the benchmark in any really significant ways.
Mono and Java both have been dealing with the same basic battle for their entire existence. C has been around longer, C is what the OS is written in... At least with Python or Ruby you don't have to compile so there is some sort of experiential advantage to the developer. Mono needs to be compiled, it's not terribly slow but all VMs (err, safe runtimes) have that stigma, you can develop much more rapidly with them with fewer bugs and there are whole classes of security defects that simply don't apply and then there is the tooling but that's just not sexy enough. If you only do C, then you're more "hardcore" and how the world perceives you as an OSS developer matters more than a lot of people want to admit.
The politics of Mono probably don't matter as much as the politics of Silverlight. Most of the people that worry about mono, from my experience, aren't developers. Where the design community is the primary user of flash and they've never been served by MS before and they have been exposed to stuff like IE's extended script.
A non-admin can't even install Silverlight on a Windows box! The installed base is close to zero and, at the same time, Flash is everywhere, with about 100% market share.
One doesn't need to look any further to understand why Silverlight is not the platform of choice for rich internet applications.
And, with HTML5 support on many browsers, I hope it never will.
Yet I still read that people won't touch Silverlight because it's so proprietary and made by Microsoft!