The announcements around Microsoft’s new Silverlight platform yesterday were important to anyone who is thinking about where the web will evolve. For those of us watching the demos at the Mix conference the immediate importance of it was apparent - Silverlight will be the platform of choice for developers who build rich Internet applications. It makes Flash/Flex look like an absolute toy. After the keynote, the main topic of conversation in the hallways centered on just how effectively Microsoft carried out its execution of Adobe.
We didn’t cover the news as it broke - I was on stage at Mix and Nik Cubrilovic was denied a press pass due to a mixup and got in very late. There was a lot of early coverage but mostly from journalists who hadn’t been properly briefed on it or who rushed to post quickly.
In preparation for the Mix Q&A, Nik and I had well over 10 hours of briefing on Silverlight, with very senior Microsoft employees (Ray Ozzie, Scott Guthrie, Charles Fitzgerlad) as well as members of the product team that actually build Silverlight (Keith Smith and Brian Goldfarb).
Nik wrote a very long post yesterday afternoon on Silverlight, long after the initial news broke. From a pageview standpoint, the post was a loser for us. We would have been far better off doing a one-paragraph post at 10 am announcing the news, and by the time we wrote in the late afternoon the buzz had worn off somewhat.
I’m glad we waited to write. Nik (a long-time developer) was most impressed by how small Silverlight is (4 MB) and how fast it is (it blows away native Javascript routines - without exaggeration, Ajax looks like a bicycle next to a Ferrari when compared to Silverlight).
The news today about Silverlight is significantly more thoughtful. Microsoft-hater Steve Gillmor gives it a thumbs up and says “the engineering behind this is stunning.” Robert Scoble, who’s angry at Microsoft for not giving him a free pass to the Mix event, says “Microsoft “rebooted the Web” yesterday.” The list goes on.
If you are a developer or an entrepreneur, take a look at Silverlight, download some of the sample applications, and take the time to understand how it can affect your product. Our overview post is here, and our podcast interview with the product manager who built it is here.
Some of the most interesting new web applications will be built on this platform.





Microsoft PR : Hey Mike, can you get some buzz on a new marketing effort on WPF/E.
Mike A. : Sure, what’s the story
Microsoft PR : We’re renaming WPF/E to “Silverlight”.
Mike A. : That’s it?
Microsoft PR: Yup, isn’t going to be cool — Hanselman is going to go nuts!
Mike A. : Err…
Mike A. : Okay, can I have my check now?
I kind of agree with most people here - it really isn’t that big of a deal.
Personally, I don’t care if it’s Microsoft or not, as I hold no ill-will towards MS. But just reading the header paragraph on the silverlight site made me yawn:
“Microsoft Silverlight is a cross-browser, cross-platform plugin for delivering the next generation of .NET based media experiences and rich interactive applications for the Web. Silverlight offers a flexible programming model that supports JavaScript, .NET, and other languages.”
?!?!? WHAAA??? Would you care for some fries with that cliched jargon? I’m sure in the midst of the “hype”, it seems like MS is changing the world again… but until they tell us simple web designer folks what EXACTLY it is, it’ll just be another blip on the radar. Oh, and when is “MS Expression” going to change the world?… I’ve been waiting.
Something that seems lost in the original post and in the comments is the business angle on this.
Microsoft is a platform company.
They have consistently made business decisions on attacks to the platform. IE was a repsonse to Netscape, Windows Media was a response to Real, .Net was a response to Java, etc… Now that Flash/Flex is becoming a platform in its own right that is diminishing the importance of the operating system that it runs on, MS unveils silverlight. MS may talk about how cross-platform silverlight is, but if it isn’t going to sell more copies of Windows it would never make it out the door. This announcement is just another in a series from MS (see the above list and remember MS’s commitment to cross-platform on those) where the other shoe will drop eventually. Maybe this will be like IE or Real where MS comes out with Mac versions only to drop them after they have achieved dominance or maybe this is like .Net where there is a head-fake to cross-platform, but that was really just FUD.
It isn’t this announcement to watch, it is the follow-on ones.
Haha you said Blip. the secret word!!! AHhhhhh!
Seriously, all you uber-geeks need to calmn your asses down. The problem with technology is that it’s cool for the masses when it’s useful but feature creep can hype any cool technology above the masses head. It’s like coming out with “Speak and Spell” and hyping up all the cool LED and TTS/Sound Functionality to a target audience that could care less as long as it does something they NEED and couldn’t do BEFORE it was available…
MY PROBLEM IS WITH PORTABILITY!!!!
#1 I cannot even run this clock example from my local computer when no images are even used. Download zip here: http://www.bigdisk.co.uk/889404
and see it working here: http://silverlight.net/samples.....fault.html
#2 NONE OF THE EXAMPLES WORK IN SOCIAL NETWORKS THAT BLOCK JAVASCRIPT.
Mike: Why the heck can’t you acknowledge that? That’s a HUGE flaw and will ultimately fail Silverlight no matter how many features they have.
Consumers drive Flash and if Silverlight is NOT a consumer targeted RIA then Restate the post as such because this is not going anywhere on Myspace.
silverlight is the password to download the clock files
If Silverlight means the end of ActiveX, I’m all for it.
Silverlight
content
is
not
indexable
by
Search
Engines
So, let’s be logical here. Silverlight is not going to “reboot” the web. If your content can’t be seen by Google, there’s no reason to make everything in Silverlight.
I dont know that much about search engines but maybe it will be possible for search engines to index such stuff someday, XAML is text after all?
I posted a lot in the comments on the other silverlight story. I’ll say something different here.
These stories are not great for the credibility of TechCrunch, as many comments demonstrate. The hostility also seems to indicate that Silverlight is hampered by coming from Microsoft. Like in other areas such as mobile phones and set-top-boxes, Micorosft can have trouble woo-ing potential partners, maybe its blowback from their years building a reputation for playing dirty.
As a nerd I am extremely interested in silverlight, and all the stuff Adobe have been announcing. Silverlight has some potential and some flaws, at the very least it breathes some life into .wmv’s in the browser.
Im still more interested in AJAX than flash or silverlight. But Im very interested in rich animation and video. If someone made an cross-platform opensource browser plugin that rendered svg and mp4 and probably ogg video & maybe SMIL too, that would be a more interesting alternative that people could trust a lot more.
Theres a lot of confusion about Silverlight because it blends quite a few different things together. Some of the disadvantages of using it arent present if you only use certain aspects. For example you dont have to use microsoft tools to make the XAML or javascript. You could hand write the XAML or use 3rd party tools that will likely exist in the future (as they have started to exist for the desktop WPF sort of XAML), or generate it with server-side script. You can ignore the .NET stuff completely if you want, as you do start to get more locked into microsoft products if you want to make use of the CLR stuff.
Oh yeah and for anybody who loves AJAX but it growing tired of some of the joys of javascript & friends, what do people think of ext-js? (formerly known as you-ext)? I dunno, I just see that sort of thing as potentially more revolutionary and joyous to the web 2.0 scene than anyhting in particular that microsoft or adobe announced recently (although adobe did use ext in one of the apollo samples). The maturation of AJAX, anything that can help that, is more important than a new immature flash alternative on the block?
#12.
…or like a deep-frozen open vagina
Hey Mike … I have to say that your performance @ Mix stank as does this post.
We built Eyejot using Flex and thoroughly enjoyed the experience using Eclipse as our IDE. I’ve played around with Silverligh a bit (mostly just trying out the demos) and I’ve been surprised at how poorly Microsoft has presented it on their own site.
An earlier poster hit the head on the nail when talking about what made Flash so successful. It wasn’t just the technology and the support of traditional software developers, it was the creative design community embracing a single tool and, then later, a family of tools. That family has grown a great deal more sophisticated and Flash’s popularity will simply be difficult to unseat for a long time. This isn’t suggesting that Microsoft’s efforts aren’t eventually going to be considered very good and/or highly competitive. I know some of the CLR folks and they’re amazingly talented engineers. It’s just a very steep hill to climb. And, from my perspective, they’re not impressing the very people that made Flash to successful.
Mike - you might do well to enlist a technical advisory board for your publication. TechCrunch adds lots of value and has certainly become a popular destination not only for small tech firms craving attention, but for investors clamoring to find companies to support and grow. But, many of your stories, including this one, lack a legitimate technical foundation. I don’t want to be the 50th person here to throw up their hands at your statement claiming Silverlight is god’s new gift to developers. But, I do want to add my voice to the chorus of readers suggesting that your statements are largely without merit. You have a lot of highly technical readers. To keep them (and me) reading TechCrunh I think it’s fair that you try harder to blend good writing with better science and research.
the name would be perfect for a cigarette.
I am sure that Silverlight will find itself a user base drawing heavily from developers familiar with other MS environments, but to declare some kind of obvious victory against Flash is a little far fetched.
I am not a fan-boy for Flash, its a tool among many others, but it is silly to deny its abilities, especially in light of the advances made with Flash 9/AS3. As a relatively seasoned developer I dont see anything that is making me need to rush over to Silverlight right away.
One thing that I dont think has been touched on enough is how public the javascript is for a Silverlight app, you can easily view source and find the url of the javascript used. This is a big no-no for a lot of developers who feel the need to keep their code at least semi-private (look at the market in tools that make Flash .swfs harder to decompile). On top of this, anyone who is having to do serious development using javascript is at a severe tool disadvantage to what is offered in actionscript 3.
At the end of the day everyone is entitled to their own opinion and I can see where a developer who has spent a lot of time and effort learning a .NET friendly language could be very excited about this, but I think a statement like:
“It makes Flash/Flex look like an absolute toy. After the keynote, the main topic of conversation in the hallways centered on just how effectively Microsoft carried out its execution of Adobe.”
shows a great deal of bias and no lack of ignorance, especially from someone who should have been in enough product demonstrations to know that a product never looks better than when being shown by the company that made it. Oh, and the crowd at MIX is hardly representative of the cutting edge of the web dev community, I think most of those guys are probably still recovering from FiTC
It’s the distribution, stupid! The more people have it installed, the more I, as a developer, will be tempted to use it. And, MS missed a golden opportunity, not getting it bundled in Vista. Think about it, you just launched a brand new operating system that people are wrestling with installing now, and you missed the boat. People are buying 10’s of millions of Vista installed PC’s this year, and you missed the damn boat. Better hope Vista SP1 sneaks it in there.
Do you realize that Vista is the 1st operating system to actually bundle the .NET framework. Original XP never had any version of .NET pre-installed. Only SP2 brought along .NET 1.1. So, .NET was introduced in 2001 and, checking my watch, it’s 2007 and finally there’s an Microsoft OS with .NET preinstalled.
Again, it’s all about the distribution. Like someone previously said, it took Flash 10 years, 10 frickin years before there was a killer app (Youtube) to validate the technology and blow it out mainstream.
Silverlight will have limited success if Microsoft follows their usual timeframe of rolling out technologies. The only way Silverlight will have any success is if Microsoft forces an install the next time you do a reboot. Anybody remember Metro, Microsoft’s PDF killer (*cough* *cough*)?
Two point:
1) If Silverlight is equal to Flash I think that will be Flash the prefered platform
2) How I can develop on Silverlight? If I have to buy .NET I’m not very happy!!!
Paul (19) and Andrew (65) have the measure of this. Flash hasn’t reached deep into the commercial enterprise application development space like it should have. SL will change that and regardless of how one might feel about MS, it can only be a good thing.
Flash has long been the tool of choice for the creative community but not for enterprise software developers. Vastly different skillsets required. I see this as helping both come together to build apps that are robust, will scale and look good to boot.
We were one of the first enterprise software companies to rollout a hosted .NET/C# app in 2002. This year we got excited by what Apollo and Flex2 were trying to achieve. Whilst the SDK wouldn’t be as good as VS we were able to produce great looking -and performing- analytics with Flex2. What’s more getting it to work seamlessly with out .NET app was a breeze. The upshot is my customers love it . I’ll continue to work with both technologies and also look at SL. Anything that helps developers achieve robust, scalable business applications that look great can only be good for the web.
I’m extremely excited about the new Silverlight platform and have been watching it for a while. Glad you guys are also excited about it.
The reasons cited for it potentially taking over flash are not valid. It doesn’t matter if it is faster and better than flash if flash was already fast enough and provided the features that people wanted to use within reason. For example…all of those video sites using flash seem to be working just fine.
It may very well be a better platform (I don’t know yet), but either way the hurdle is going to be the huge investment of expertise into the flash platform by the web dev community.
Does anyone know, aside from the video codec, why someone would use Silverlight instead of Flex2? (assuming that existing knowledge of one platform was also not part of the consideration)?
I just spent a week learning flex2, just in time for the announcement that it’s being mostly open sourced… at this point I can’t think of any non video, non drm reasons to use Silverlight (I already know .net and c#)… Video and DRM are good reasons, but are there others?
thoughts?
WOW FACTOR inside!!
Linux anyone?
http://www.infoworld.com/artic.....nux_1.html
My perspective as someone that creates tools that output Flash content: Silverlight is very promising. Flash is great if you can do everything you want inside the Flash IDE, but for 3rd parties that want to export Flash content or built tools that create Flash based applications, the story is a complete mess. Here’s my input for what it’s worth:
Animation
The Flash format itself has no notion of animation other than transformation matrices. You can apply a matrix to an element on a per frame basis to move it around. Want to move something across the screen in 3 seconds? Calculate how many frames 3 seconds will take, then calculate the matrixes required for each frame along the way. Oh, and don’t forget that the player won’t actually maintain any frame rate unless you embed blank audio tracks, so that 3 seconds might turn out to be 2 or 6 or 5, it just depends what kind of mood the machine is in.
Silverlight supports the WPF animation model, which is not only time based instead of frame based, but lets you define the start and end conditions and it will figure out how to get there for you. No need to deal with matrixes. No need to calculate positions on various frames. It just works.
Shapes
Flash stores its shapes using binary shape records. In order to write shape definitions, you will need to either license a 3rd party Flash file format SDK, or build your own. It isn’t too difficult, but it does require a bit of a learning curve and the ability to manipulate things at the bit level, since shape records don’t align on byte boundaries. Needless to say, it isn’t the kind of thing most people can write and have all debugged in one afternoon.
Silverlight uses XAML. XAML is text based and can be output using a simple XML object. No need to buy special libraries to write files. No need to write your own libraries. Just stream some text to a file and you’re done–easily the type of thing that can be debugged and finished in an afternoon.
Text
Flash stores its fonts glyphs using the same exact shape definitions that are used for any other shape. The player itself does not understand TTF files, so you’ll end up digging deep into the Win32 APIs and the fairly vague definitions in the Flash file format documentation to come up with something that sort of does the trick. You’ll probably spend ages trying to deal with all the intricacies of fonts, because it turns out that typography is actually fairly complex… and you will have to deal with all those complexities yourself.
WPF/E lets you embed true type font information directly into your projects, and download that information with the downloader object. No need to do anything special. No need to handle anything yourself. It just works.
Video / Audio
Flash supports multiple video formats. The latest codec is really high quality and the bandwidth usage is nice. There is one problem though if you are creating a tool that outputs Flash content… the formats it supports aren’t really used by anyone else. The original video codec, Sorenson’s proprietary H.263 implementation is a mutant version of H.263. The compression follows the spec fairly closely, but there are a bunch of features dropped out and you can’t exactly just go find a complete spec on how to build your own encoder. The later codec from On2 puts you in an even worse position. Licensing Sorenson’s codec isn’t that expensive, but On2 will rape you with fees. They are relying on revenue from licensing the codec used by Flash to revive their $2 a share stock price. It is also a completely proprietary format (where at least the Sorenson one was loosely based on a standard). The audio formats Flash supports are all proprietary, except for ADPCM, which no one uses because of its horrible compression, and MP3, which is decent but dated, and still requires licensing fees and 3rd party conversion libraries.
Compare that to the Silverlight story. Silverlight implements industry standard VC-1 codec for video, as well as offering support for WMV and WMA. Just about everyone already has Windows Movie Maker, but if they don’t it’s not a big deal. Why? Because Microsoft makes available a free Encoder SDK for producing WMA and WMV. So, not only are you using formats that people are more likely to be able to encode themselves, but Microsoft also provides your product with SDKs if you want to do the encoding yourself. The best part about it is that Microsoft doesn’t rely on WMA/WMV licensing revenue to keep themselves alive, so not only is it easier to integrate, but it’s also cheaper.
Scripting
You can reuse C# classes from your tool inside your exported content. There is no development environment out there for creating real desktop applications which is based on ActionScript. If you go the Flash route, this means that all your classes and objects have to be written twice. You need .NET classes to handle the author time experience and Flash classes to handle the run-time. If you have server components, once again you need to switch back to .NET and throw out all the classes that the run time is using. For example, let’s say you are creating a tool that outputs rich media quizzes. With Silverlight / .NET, the same entity classes you use to deal with results in the player could be reused on the server side. With Flash, you’d have to write all that logic 2x and keep it in sync as your tool changes.
Tools
You can create Silverlight content with the same tools you use on a daily basis. Visual Studio.NET is by far the most powerful and most popular IDE. You can potentially have all the code for the server components, the authoring tool components, and the runtime/player components inside the same project. No extra skills required. No needing to hire some special Flash guru to do the graphics junk. Every developer can contribute to every part of your application.
Hey, I don’t understand any of this, but I do know that if I have to install Vista to use it, I’m noit going to need it.
Can’t use it, our intranet is 25% linux
Well apparently Mono are going to try to make a linux version so we’ll see what happens in that regard.
Just to chime in on this hot debate. Having worked in WPF, I can tell you that XAML is a very nice markup language and I wouldn’t mind working in it again.
There are constraints to any framework written as a layer of abstraction. When something breaks, usually the developer that’s implementing the framework has no way to resolve the issue, without some divine intervention, which we all know never happens in real life.
If you love Microsoft tools and you’ve had success using them then you’re probably going to eat this up. The web is begging to exist like our desktop does today but until someone takes a straight shot at it, there will always be the same nuances that exist today.
My opinion? Wait for the 3rd release of the Linux version then see about some kind of adoption :), like a web app or something.
If your company has the budget to go finkle-dingle with unproven technology then give it a shot but if not, you might have to quit your job and start your own Microsoft cheerleading squad. Your squad might have some hot chicks in it but you have to teach them to do new tricks before they can show their stuff.
Mmm, well I installed it all and it works, however, on my first SIlverlight project my AV S/W decided that the .js files Orcas was working with were virus possibilities and block access to them… Thereby preventing ANY possibility of using SIlverlight unless I disengaged my AV software realtime protection. Not likely - more than ever, I need my kit protected realtime.
Perhaps the ONLY occasions my AV software has ever hiccupped on my system and for files within a NEW dev platform - seems like there is some wheel reinventing going on.
I think that Silverlight will be important for UI development - once it’s actually fully available. For Silverlight 1.0 that won’t be until this summer (my guess, August or later) and for Silverlight 1.1, who knows.
I wouldn’t declare Flash/Flex dead just yet. The Flex platform is well thought out, though the actual tools may not yet be as mature as Visual Studio. I think that Flex has a lot to offer, and I prefer the default application look over that produced by Visual Studio.
My guess. Microsoft has introduced a new set of choices for those who want to develop RIAs. It won’t replace Flash, they’ll just be competitors to each for some time to come.
Pretty much everything Jesse Ezell says regarding flash is complete nonsense.
Animation - he’s obviously never heard of fuse or a dozen other programatic tween classes.
Fonts-what the f*ck is this idiot on about -dynamic text field, embed font, job done (2 seconds)
Audio/video-there are a myriad of free encoders based around the open source ffmpeg project, as for audio - this guy is seriously disturbed if he thinks wma is more universal than mp3..
Scripting - somebody tell him about apollo,take your app straight to desktop, he’s obviously not noticed through his redmond tinted specs.
Another microsoft shill that probably hasn’t actually used flash and doesn’t realise how the tool is used.
In response to #123:
First, you’re a bit off on your commentary:
Animation -
For animation purposes, there are very few animators that care really that an animation clip is exactly 3 seconds long. It’s all about speed of development in animation, and simple keyframes are really where it’s at, with the ability to define easing curves. Unless you have a full f-curve editor (ala after effects, or maya), Silverlight is not going to woo any animators. Makes me think you’ve yet to do any serious animation in Flash.
Shapes -
XAML? Few graphic designers could care less about dynamic parsing of shapes. What designers care about is that their graphics look right under all environments. The comment really doesn’t make sense. You can create any runtime shape you want in Flash through the actionscript drawing routines (including the BitmapData library where you have access to raw image data instead). For vector rendering, no one can deny Flash’s strength. Want to use SVG instead - there are SVG parsers written in Actionscript.
Text -
Fonts may be embedded in a Flash project during compilation or loaded through a shared library and applied during runtime. This includes any TTF, Type-1 or OTF font you have on your development system. Can Silverlight do that … nah.
The antialiasing engine (Saffron) is far superior to anything Silverlight uses. From a font-rendering and handling standpoint, Flash could do better than it’s doing, but Silverlight has yet to achieve the ease and quality of font-outline support currently in the Flash 8 Player runtime.
Your comments are not accurate.
Audio / Video -
VC-1 is not the preferred video codec on the web. WMV video encompasses less than 5-10% of delivered video, and VC-1 is of less quality and with a worse SNR than On2 VP6. I speak from experience in stating that WMV, as a delivery format, is close to dead. It requires more processing power to decode and a larger mbps stream to achive the same quality as VP6. FLV2 encoded video is far more pervasive already in the three years it’s been out.
Showing your lack of knowledge - the only serious video codec for doing high end video on the web today (ie, HD video) is not Flash or WMV. It’s H.264 (Mpeg-4 Part-10 / AVC), Apple’s format. HD video is best left to dedicated software, not runtime environments like Flash or Silverlight. From the AV end of things, Microsoft is way behind.
Scripting -
You obviously do not know much about Flash development.
Tools -
Obviously not learned about Flash development either.
well, i recall a battle in the 70’s around BetaMax and VHS - Betamax was technically superior, but VHS won. It was mass market. Sounds like Micklesoft trying to reinvent the internet again - oh! I recall the original MSN - with Blackbird - hey days - when microsoft thought the internet was a fad - rofl - sorry i had to get back on my chair.
well well well we find ourselves in this position again, popfly the utimate blog, myspace, masher - and now silverlight the next best thing after flash - now me thinks that this is another Micklesoft mishtake - shurely ???
later ladies
All hype there own products as usual
its all about the moneyn product domination