Silverlight 5 is released!

Microsoft just released the version 5 of Silverlight! It’s a great news and I really want to congratulate the whole team on this impressive collective effort. The official announcement is on the Silverlight team blog!

The purpose of this article is not to be exhaustive about the list of features (there have been, and will be, many more very detailed articles such as this series on the Silverlight blog) but rather to explain why this version in particular makes me happy to be a Silverlight developer (features listed in no particular order!).

3D!

One thing is making me really happy and excited: the 3D integration. It is now possible to include and manipulate 3D models within a Silverlight application. This model is very similar to what XNA offers, which means that existing XNA developers will feel at home very fast with this new platform. It also means that existing 3D models can quite easily be run in Silverlight 3D. I am sure we all have in mind the pretty amazing demo with Scott Gu’s avatar during the Silverlight 5 firestarter (jump to 51:11).

I am really happy to have 3D integration in Silverlight now, because I have been working for the past few weeks on a new application for Kinect for Windows involving a 3D human avatar integrated in a Windows Presentation Foundation. The integration is completely seamless, and it looks like the avatar is completely part of the rest of the application. However, the rest of the application is WPF, with all the XAML, binding and MVVM goodness that it brings. This kind of seamless integration is now also possible in Silverlight, and that opens the door to a lot of pretty cool applications and a new kind of user experience.

In-browser trusted applications

We all know (or heard of) the Out-Of-Browser (OOB) application model which allows Silverlight to run outside of a web browser, just like a Windows application in its own windows, with its own shortcut, etc. There is also an elevated trust model for OOB, declared at build time, which allows such applications to perform tasks that are usually not allowed (such as saving or reading files from certain locations on the computer, run in full-screen with full keyboard support (ideal for kiosk applications!), host HTML pages within the Silverlight application, etc.

These features were already available in Silverlight 4, however in Silverlight 5 they are also possible inside the web browser. This makes the delivery of such applications a little easier, since the user does not have to “install” them and deal with a shorcut.

Trickplay

This feature allows to play video at various speeds, and even includes pitch correction to avoid that the speaker sounds like a chipmunk! This is especially useful when watching conference sessions: watch a whole 60 minute session in 30 minutes, and use the rest of the hour to be with your family instead Smile

Breakpoints in bindings

This one is pretty cool: Who has never had to debug a binding, because the binding expression had a typo, or the value was not what you expected? it was pretty cumbersome before! Well with Silverlight 5, you can set a breakpoint right in the XAML binding expression, and the debugger will break and allow you to inspect the expression!.

Performance, profiling

A lot of work has been put into performance too, and a new set of tools helps to profile the application and identify critical areas that need perf tuning.

Pinvoke

This is like COM on steroid: This allows your Silverlight application to access pretty much any of the Win32 APIs directly from within your app. There are even ways to listen to Win32 messages, for example to be notified when a new USB drive is inserted (this is only an example!). There is a good article on pinvoke by Alexandra Rusina (one of Silverlight’s PMs) here.

Note that pinvoke only works with elevated permissions, which really makes sense (I wouldn’t want any script kiddy to be able to format my hard drives without saying “OK” first)!!.

And more…

There are a lot of other improvements, notably useful when you use the MVVM pattern in Silverlight. For example, the ability to search for an Ancestor in a RelativeSource binding (something we had since the beginning in WPF, and because it was missing here led to some cruel workarounds in some applications in Silverlight…) is a good example of these apparently small changes, but that will mean a lot when you do need them.

With version 5, we have a super mature version of the framework!

What about Mac? What about other browsers? What about delays? What about Maryjo?

As usual it is interesting to witness the drama around the (perceived) delay in the delivery of this massive new version. It is important however to remember that there had not been any official announcement about a delivery date (the only thing we had heard was Scott Guthrie – who is not in charge of this product anymore by the way - talk about “end of November”). With a delivery in the first half of December, and considering that much time has been spent on last minute bugs, making this version as stable as can be, and (again) considering the massive additions to this new version, I say kudos to the team!

Edit: Maryjo felt insulted and I am a nice guy, so let me rework that paragraph a bit. Yeah I went too far and personal, so hopefully this is better.

Maryjo Foley, who seems to be reporting and speculating on a lot of bad news these days, reported that Mac OS would not be supported for Silverlight 5, and even worse that only Internet Explorer would be supported on Windows.

Side note: She actually reported that “One of my contacts said he believed that the final version of Silverlight 5 may only work with Internet Explorer on Windows and won’t work on Mac OS platforms or with other browsers at all. (Silverlight 4 supports Windows and Mac OS X and the IE, Chrome and Safari browsers.)”. Notice the lack of named reference, the “he believed” and the “may work”.

It’s a good example of why we should take this kind of “journalism” with a grain of salt. We are very rational people, fond of science and technology, and yet we seem sometimes to act like schoolgirls when someone writes something on the web. At this point, I think it is good to remember that Maryjo often reports hearsay and rumors. I don’t mean that she is always wrong, not at all, and in fact I do read her column with interest. But I always take it with a (large) grain of salt, and I remember that until a product is released, we don’t know what it will support. Everything else, really, is conjectures. A good thing to remember while Windows 8 is in preparation!

Side note again: It is very painful to insiders to read this kind of articles (if you can call it that) while we knew very well that it was completely wrong. Unfortunately, the non-disclosure agreement that binds us to Microsoft prevents us from correcting assertions like this, and we had to sit down and watch. This is very unfortunate and painful. I really hope that people learn, some day, to be reasonable when it comes to technology (but I am not holding my breath).

To be clear: the list of supported web browsers and operating systems did not change. It is available at http://www.microsoft.com/silverlight/what-is-silverlight/.

Some restrictions

There are a few restrictions around the 3D rendering, for security reasons. The best summary I found so far is on David Catuhe’s blog. Security restrictions are always annoying but the alternative is letting unsafe code run on the user’s computer, and we all know how Microsoft handled that in the past (ActiveX anyone?) so I guess that we need to accept that they err on the side of security this time. (Edit: updated on 12/10/2011).

Also, like previously, COM access does not work on Mac OSX and as I mentioned above, p/invoke is also only available on Windows. Both these features require elevated permissions by the way.

What about MVVM Light?

MVVM Light will of course support Silverlight 5, and I will release a version soon. I just need a little more time running my tests and making sure that everything is working as expected. Stay tuned to this blog for an announcement about the release of MVVM Light for Silverlight 5!

A few additional updates

Well there was a nice storm on Twitter, and within the noise I managed to grab a few useful facts.

First, the Blend preview for Silverlight 5 is available here. I did not verify that it works with Silverlight 5 RTM, but I think it should.

Then, Silverlight 5 will be supported until December 2021. That’s 10 years of support.

The offline documentation can also be downloaded.

Finally there was a lot of passionate discussions on Twitter tonight. I think it was especially interesting to confront the view of tech journalists versus MVPs vs developers. Bottom line is that there is a lot of passion around tech these days. I personally think it is too much passion, but some disagree and I think we will have to live with that for years to come…

Cheers,
Laurent

 

Print | posted on Friday, December 09, 2011 8:59 PM

Feedback

# re: Silverlight 5 is released!

left by reza at 12/9/2011 9:46 PM Gravatar
Its good news
we are waiting for silverlight 6 !!!!

# re: Silverlight 5 is released!

left by ali at 12/9/2011 9:53 PM Gravatar
Grate!
I,m waiting for silverlight 6 from tonight too!!!

# re: Silverlight 5 is released!

left by Scott Barnes at 12/9/2011 11:57 PM Gravatar
Dude,

You often go for the kill and sometimes you need to pump the brakes as I read the above post as someone overly excited about SL5 and not taking a step back and looking at this with an unbiased view to put it bluntly it sounds very fanboi`ish.

For example, when was the last time you saw Silverlight ever released this quietly? We would always make a bang when we did it even after MIX we'd still make a lot of noise...

When was the last time you ever saw us at the time not speak about the vNext? thats bad as whilst you think the support to 2021 is a good thing (it has to do with US govt / Military contracts and all software released by Microsoft has to be supported for approx 10years+ so its not a special thing)

Lastly in all honesty you think this being the last major release (speculation) is going to be a great thing for Silverlight adoption or bad?

Features are one thing, get excited with what you have but to also project that we're all grateful for the scraps of tech that are left over after a stream of promises from the past... i dunno man, to me this just got a little worse as the news is being confirmed and I was hoping it was the opposite...

# re: Silverlight 5 is released!

left by Laurent Bugnion at 12/10/2011 12:52 AM Gravatar
Hey Scott,

Remember what you told me about wishing you could get more excited about tech? it's one of these moments :)

Quiet launch: First I don't see that as a launch but as a RTM. Strictly speaking the launch was the SL5 firestarter which was quite noisy. Of course because they took longer to develop SL5 than SL2, 3, 4, the launch was quite some time ago and people may feel they need a new launch. However there is no major conference planned now (for instance I remember that SL2 was released during PDC08). Unfortunately, TechEd Europe was cancelled this year because they are moving it from November to June, so what is the alternative? Just waiting until MIX12 (which, yeah, we don't know when/if there will be one) or release now and give code to people. Or, organize a SL5 firestarter (the return). I know what you want me to say, but honestly, I got code and I am quite excited anyway :)

Support for 10 years is a good thing. It would be a good thing even if it was because they need to support Kim Jong Il's regime. (wait is he dead? I lost track). Well OK, maybe not in that case but my point is... what clients need most now is a reassurance that SL will be supported for a long time. 10 years in computer years is a long time. That's sufficient to make me happy.

Finally I don’t think I said something about SL5 being the last release or not. In all honesty? I don't know. I know that there are a lot of speculations internally at MSFT and externally, but you know me, I do my best to pay less attention to speculation and more attention to fact. I tend to agree with Rocky Lothka's post about SL6, and that's about it. For now, what I see is: We can talk to clients with facts, not just speculations. That by itself would be enough to make me quite happy.

Cheer up dude. It's not a bad day.

Friendly,
Laurent

# re: Silverlight 5 is released!

left by Andrew at 12/10/2011 1:06 AM Gravatar
Silverlight 5 is released and here is Scott Barnes popping in, trying to let us know(again) about how bad MS is and how dead Silverlight is.

I am very far from being a MS fanboy.
Too much bashing, no matter which side it is or it is about, never smelled nice.

# re: Silverlight 5 is released!

left by bitdisaster at 12/10/2011 1:10 AM Gravatar
I'm fine with this release for now. Great new features and my work is save for at least 10 years. Plenty of time to see how Metro on W8 is doing. Maybe they don't have plans for SL6 but they maybe reconsider. Who knows, at least XAML lives on for sure and I don't have to write complex apps in HTML/JS.

# re: Silverlight 5 is released!

left by Eugene at 12/10/2011 4:46 AM Gravatar
Laurent,

Yes, I'm agree - it's not a bad day for me as silverlight developer. 10 years is long enought and silverlight 5 already have all features for my business application.

Eugene

# re: Silverlight 5 is released!

left by Anil Mujagic at 12/10/2011 10:24 AM Gravatar
Complete product with 10 yrs of support - all that I need! My new SL5 LOB project already started this month and I wasn't wrong.
P.S. Some people should really learn when it's time to shut up and stop being PITA.

# re: Silverlight 5 is released!

left by alessandro at 12/10/2011 2:07 PM Gravatar
This is great news. Currently, while all the noise is HTML5, there are still no proper clientside js frameworks to leverage any of this functionality in a clear manner. Nor is there enough tooling. I am happy ms didn't go the Adobe Flex direction. Flex got donated to the opensource foundation.

I can now complete my current application without HTML5 distractions! As for Maryjo and Scott Barnes, I guess we can thank you both for all the FUD. I'm certain that your FUD has pushed MS to bring us a stronger SL5. I am happy I held on strongly to my sl investment.

# re: Silverlight 5 is released!

left by Adam at 12/14/2011 2:01 PM Gravatar
Unfortunately Silverlight has one major problem running in Safari (5) on a Mac (Snow Leopard/Lion). If a textbox has input focus and you press the backspace on your keyboard it navigates the browser to the previous page! This makes it unusable :(

# re: Silverlight 5 is released!

left by Musical at 12/19/2011 10:24 PM Gravatar
<< If a textbox has input focus and you press the backspace on your keyboard it navigates the browser to the previous page!

That's the delete key on a Mac.

That only happens on some systems. Here are suggested fixes, but have not tried them: https://discussions.apple.com/thread/2370867?start=0&tstart=0

Let us know the results if you try these

# re: Silverlight 5 is released!

left by Makis at 12/22/2011 6:59 PM Gravatar
Hi,

I am trying to run the 3D cube sample on my Mac mini 2010 edition. It has a GPU capable of shader 2.0 functionality (NVidia 9400M), but I cannot get it running. I have set elevated permissions, I have enabled GPU acceleration but nothing happens. I get this error: Please activate enableGPUAcceleration=true on your Silverlight plugin page.

On my pc the same sample runs without any problem.

Looking forward to your answer.

Best,
Makis

# re: Silverlight 5 is released!

left by Paul at 12/28/2011 4:36 PM Gravatar
Your comment on Mary Jo is totally unfair.

It is not her fault that Microsoft has shut down all normal communication channels and all she can find to fulfill our interest (vital for our businesses, mind you) in roadmap for SL are some rumors or unclear sayings.

She does her job honestly and notes every time that information is unconfirmed, if so.

You, in other hand, know the truth and from the top of your knowledge do nothing to make our view clear. You say you are tied by NDA. Okay, fair enough. But if so, please, do not make "oh, those clueless little people down there" comments without suggesting a legitimate way to obtain the same knowledge.

# re: Silverlight 5 is released!

left by Laurent Bugnion at 12/28/2011 5:15 PM Gravatar
Paul,

Sorry you feel this way. The majority of people who reached out to me feel differently, especially those who did lose some contracts because of rumors like this one.

Your comment about the "clueless little people" is very hurtful and (I hope) inaccurate. First of all i do not have secret knowledge about the future of Silverlight. In fact I am in exactly the same position as you. While it is true that MVPs often have preview information about Silverlight, it is not as frequent or as vital as you seem to think. In fact we were notified that Silverlight 5 was about to be released just a few hours before the actual time, which left me just enough time to type the article about. At this point in time, I still don't know if there will be a Silverlight 6.

Also, I think I have proven many times that I am full of respect for the whole community, and do my best to propagate as much information as I can without hurting the word I gave to the Silverlight team to keep certain information to myself. I certainly don't have a problem with people reading Maryjo's prose (as I mentioned, I read her articles myself), but I do have a problem when it starts crazy rumors based on unverified facts (which happened multiple times in the past two years) with consequences like people losing their jobs.

Maryjo knows what I think about this, she and I talked about it and we are fine. I am as unhappy as you about Microsoft's silence lately, and I take every occasion to make them know that this is not a good way to handle customers. With the MVP summit in February, I hope to have more occasions to talk about this with them. In the meantime, I just wish that this particular case will be a reminder that rumors are just rumors, and they need to be taken with a huge grain of salt.

Thanks,
Laurent

# re: Silverlight 5 is released!

left by David at 2/17/2012 8:27 AM Gravatar
Hi, to Paul and Laurent.
I lost my job because of this article: http://www.zdnet.com/blog/microsoft/will-there-be-a-silverlight-6-and-does-it-matter/11180

When my boss read it, he decided to silverlight developers and revrite existing application to ASP.NET MVC 3. In the end I lost a lot of nerves and looking for work, because of one speculator.
Laurent, I'm sorry, I still could not read your book(Silverlight 4 Unleashed). But I bought it so impressed and was full and I was full of hope for a bright future. But it seems one person can change the life of another, while at the other end of the world.
Post A Comment
Title:
Name:
Email:
Website:
Comment:
Verification: