Thursday, October 22, 2009

Windows 7 Launch


Today is a big day for Microsoft and Windows since they just released the new Windows 7 OS version. Along with all the events around the world and the buzz in different media, Microsoft launched a Windows 7 aggressive campaign on several Microsoft and Windows sites.

Included in this campaign is a Silverlight application that was launched today at Microsoft Home Page, and I’m very proud about it since I was part of the development team who made it possible.

The application was built using Silverlight 2 to provide a consistent experience for SL2 and SL3 users and it promotes a clean and engaging interactive design where users can read quotes about Windows 7 reviews from users around the world, Windows 7 product information, Windows 7 PC offers and a very nice video section with 7 second demos about Windows 7 promoting the top notch OS features.

Being part of this huge campaign and the development team of the Silverlight application was a great experience. The level, quality and expectations are really high among this type of development, especially if the application is going to be placed in the Microsoft Home Page. I won’t go into too many details about the application implementation, but we used top best coding practices and industry proven solutions to accomplish an engaging but simple interactive application that not only looks cool, but actually is useful for users to take a quick dive into Windows 7.

One of the challenges we had was to make the application really light, weighing no more than 300kb!!! If you take into account external data sources, video playback functionality, smooth animations and transitions, user interactions, analytics, embedded fonts and all the server side stuff going on at the same time, that number is quite impressive.

As a high level technical approach, we implemented a subject/subscription pattern to broadcast and handle events across the different application components and modules, a loosely-coupled tier architecture for the different server side functionality and Model-View-ViewModel approach for the front-end controls which allowed an extensive use of bindings using the application data context.

We also implemented the application in a way that it allows the layout to accommodate to different sizes and distribution just by modifying some configuration parameters, that you can check visiting the Home Page and the Download Center Page.

One of the things I love about Silverlight is the wonderful/painless workflow between designers and developers thanks to the interactive animators working on the project. The use of Visual Studio and Expression Blend gives you so much power to create engaging and rich interactive web applications that I can’t think of a better way to do something like this without them. I must say that I’m in love with these two products and how well they work together, especially if you have experienced people both on the animation and development worlds. Expression Blend is a great product that even Adobe hasn't been able to match for the Flash/Flex development. I truly believe in the separation of logic and UI having C# code behing files and XAML markup files that Microsoft achieved with Windows Presentation Foundation and Silverlight.

I’m very excited with the upcoming release of Visual Studio 2010 and the .NET Framework 4.0!!!

Make sure to check Microsoft Home Page for the full version of the application and the Microsoft Download Center for the small version of the application.

Cheers Windows 7!!!