The scary thing about Silverlight is that you are one security threat away from losing your clients. One thing that Iâve thought a lot with the problems on IE lately is that people who wrote âOnly-for-Internet-Explorerâ websites did not give their users the option to switch browsers if they felt unsafe due to all the security flaw hype.
A little common sense and a knowledge of web standards and itâs easy to write HTML that will look good and be functional in all browsers. Still, in my experience, too many developers are choosing a platform and sticking with itâmost of the time that is IE. Itâs easier to test one browser, itâs easier to tell a user to use the browser thatâs probably already installed on their pc.
Flash and Silverlight are different than HTMLâthey are runtimes which are allowed to run inside the browserâkind of like how Java applets used to be able to. They are executables which run compiled functionality on your computer. They are cross-browserâbut not like html is cross-browser. When I look at a Silverlight or Flash app on my pc, itâs always the same runtime working. Silverlight is a few years old and really starting to look like Flashâallowing Microsoft developers like me to get more fancy and provide far better functionality for our users. Silverlight runs on Windows and Mac, but has ignored the Linux landscape (there is an open-source Silverlight runtime called Moonlight being developed for thatâbut I consider it a snub).
In the world of web development, I think Flash and Silverlight are âcheatingâ at cross-platform compatibility. Everyone has accepted Flash (except the iPhone/iPad), but the jury is still out on Silverlight.
Silverlight and Flash are great in that they move a lot of the processing to your computer and free up resources on the server from which they originate. But they also increase the responsibilities of they client over the server.
Security flaws are found all the time. We all scramble around and try to fix them when they come up. As a software developer, I like the idea that I can apply a patch to a server and be done with it. With client driven app, I need to make sure all of my users apply the patch (and do it in a way that lets them know that the app is safeâand not to panic). Flash could bounce back from it (âYou need it for Youtube, too. You should apply the patchâ), but Silverlight is too new.
Iâm often seduced by the cool things that Silverlight can do. Iâve played around with it a lot and have written several small apps (including an animated Overpass ad on my blog), but Iâm not ready to jump in head-first yet.