With Polar bears drowning, glaciers melting, forests being cut down…preserving the environment is a serious issue for the world.
In Microsoft we are investing our resources to foster environmental sustainability.
Imagine a World Where Technology Enables a Sustainable Environment is the theme of the Imagine Cup 2008 competition. It will be a pleasure for me this year to judge the finalists teams (or may I say the brightest technology students in the world ) in the Software Design invitational.
The competition will begin next week in the magical location of Paris, France. I expect it will be very though to award only the top 3 teams…since I’m sure we will see a lot of great projects and ideas from all over the world!
Stay tuned, I’ll keep you updated!
Based on the questions I received in the last period, I’d like to share here some links that will eventually help you building your Silverlight 2 applications.
Runtime
Development Tools
Official Resources
Screencasts
Tutorials / Tips&Tricks / Blogs
Showcase / Demo
Thanks to all the authors.
As I said in the previous post, .NET 3.5 Service Pack 1 addresses issues that were found through a combination of customer and partner feedback, as well as internal testing. Overall, .NET 3.5 Service Pack 1 offers customers many new features and improvements in responsiveness, stability and performance for Visual Studio 2008 and .NET Framework 3.5.
Now…obviously I trust the WPF team , but I was curious to test the “real difference” given from the .NET Framework SP1 (Beta); for the sake of a perf exercise, I’ve written a tutorial to compare the previous BitmapEffect with the new Effect, which is one of the new classes with HW-acceleration support introduced by the SP1.
You can download the source code for this tutorial here. Please remember that, in order to compile the project, you need to install the .NET 3.5 Service Pack 1.
1) Button with Blur Effect
The first sample I’ve created is a Button with a Blur effect.
The Radius property of the Blur effect is bound to a slider, which allows me to change easily its value at runtime.
1: <Button Content="Ciao" x:Name="button" Width="400" Height="150" Grid.Column="1" Grid.Row="1">
2:
3: <!-- FAST, HW ACCELERATED -->
4: <Button.Effect>
5: <BlurEffect Radius="{Binding Path=Value, ElementName=slider}" />
6: </Button.Effect>
7:
8: <!-- SLOW, SW ACCELERATED (deprecated) -->
9: <!--<Button.BitmapEffect>
10: <BlurBitmapEffect Radius="{Binding ElementName=slider, Path=Value}" />
11: </Button.BitmapEffect>-->
12:
13: </Button>
After running and profiling this sample (how-to later in this post), these are my empirical results:
As expected, the Effect is 5 times faster then a Bitmap Effect.
2) StackPanel with Animating Blur Effect
Running the Perforator tool with a slightly more complex sample, the results are stunning: you can see a huge step in the memory usage, from 150MB (sw acceleration) to 16MB (hw acceleration)…an outstanding 1000%!!!
3) HOW-TO PROFILE AND MEASURE PERFORMANCE
I would like to share quickly how I’ve done the previous tests.
These are Snapshots from my tests:
CVD…
These are just easy snippets of code, that don’t really require a lot of memory. However, although simple, they already clearly show some of the performance improvements provided from the .NET Framework SP1 (BETA).
I can’t wait to install the SP1 RTM!!
If you want to try this with your machine, you can download the source code for this tutorial here. Please remember that, in order to compile the project, you need to install the .NET 3.5 Service Pack 1.
Thanks to Ravi Nar and the Vista Squad folks for participating yesterday at the “Building RIA for Desktop, Web & Mobile using Silverlight & WPF” session in London. I really enjoyed presenting with you and answering your questions (it’s been a while since I had so many questions in such a short timeframe )…and talk with .NET, LINQ, Mobile, ASP.NET…as well as Python and Flash developers.
As promised, you can download here the slides from the presentation. A video of the session, thanks to Ian, will be available on the Vista Squad videos repository.
I’d like to give here a few links as follow-up to the presentation:
1) WPF (Windows Presentation Foundation)
WPF is a next-generation presentation system for building Windows client applications with visually stunning user experiences. With WPF, you can create a wide range of both standalone and browser-hosted applications.
Interesting links:
I’ll publish the source code for some of the demo you’ve seen yesterday in the next post.
2) Silverlight
Microsoft Silverlight is a cross-browser, cross-platform, and cross-device plug-in for delivering the next generation of .NET based media experiences and rich interactive applications for the Web. (Luckily you all already knew the definition )
Again, I’ll publish in the next days the source code for the demo you’ve seen yesterday.
3) Silverlight for Mobile
Bringing Silverlight to devices expands the reach that developers and designers have when creating rich Internet applications. This enables them to easily leverage content, assets, and code that they are using today for browser-based Silverlight applications. Support for Silverlight on devices will quickly help change the landscape for the types of user experiences consumers can expect from their phones by bridging rich interactivity, wireless data, media and more.
Feel free to ask me questions or to send me feedbacks, by commenting this post. Thanks again to everybody, I’m looking forward to meeting you again soon
PS: just as a reminder, Forza Italia!
Sign up for “The Wrath of Khan” meeting, organized by the UK user group Vista Squad.
The meeting will take place in Microsoft Cardinal Palace place, on 18th June, with the following talks:
More info and agenda here.