As I was a fan of Sliverlight because of all the cool demos I saw the other day, I first joined the Silverlight development sessions.
Extensible Application Markup Language (XMAL) is a declarative XML-based language that defines objects and their properties in XML. XAML syntax focuses upon defining the UI (user interface) for the Windows Presentation Foundation (WPF) and is therefore separate from the application code behind it.
Just a side note, the room is filled with ASP.NET developers, let’s hope all of them are Microsoft Fan, and a few people do J2EE development, and even fewer does Python and Ruby on Rails programming. There are real gurus among source developers – they develop real good programs. Yet for a platform like Microsoft .NET, because of its extensive documentation and online support built by Microsoft MVPs, it is really easy to pick up and develop some interesting program on top of it.
Silverlight is still under heavy development, the most current version is 1.1 alpha, with C# support. But for this conference, they are talking about Silverlight 1.0 beta, the more mature version from the suffix. The emphasis they put in the conference is on design, so the speaker spent a great deal of time talking about Canvas and Brushes. For those of us who like to program a picture, Silverlight supports various type of brushes, including gradient brush, picture brush and shape brushes. The feeling of drawing using Silverlight is like composing a picture in illustration using different layers.
The speaker for that Silverlight session is Laurence Moroney, you can find more information on his blog.
We went on to talking about the video capability in Silverlight. The very first thing stuck in my mind is the word “DRM”: Laurence told us how good Silverlight support video streaming, you can even play “DRM” video through that, just use a simple tag<MediaElement>. I am not sure how I like that, though the mp3 player I have now supports DRM. But the most troubling thing is they only supports windows media player file. Which means I will have a lot of difficult in the video conversion on my Linux Box. Which reminds me that Microsoft might be coming up with a ZunePhone to support all these fun things for mobile devices. While I was fascinated about the easiness of using the video streaming capability, like locating a particular time in the video using Video.seconds.play = 5, I realized from the speaker, the video must be loaded until that seconds for you to use the property. That translates into no support for the real streaming like RSTP yet, but they are going to add MMS streaming support in version 1.1
Performance optimization is last thing Microsoft does.