Monday 6 October 2008

Silverlight and WPF makes easy and engaging applications



A couple of weeks ago I was down in Brighton at Microsoft's ReMix'08 conference. The purpose of the conference was to engage designers and developers in a 'conversation' about how to deliver the next generation of compelling computer applications, whether installed or online.

Of course the 'big thing' featured at the conference was Windows Presentation Framework (WPF) and its online sibling Silverlight. To deliver such applications requires an extension to Microsoft's Visual Studio suite - so along comes Expression Studio with it's excellent Expression Blend integrated programming environment.

I must say I got to grips with Expression Blend quickly, and loved its ability to enable to me to engage with on-screen objects in 3D, and use Storyboards to animate them in an event driven manner!

The first milestone for getting to grips with Expression and WPF was to improve the look of the application I created that runs 24/7 on the 42 large media information screens around Tesco.com's HQ building in Welwyn Garden City.

The first application which I wrote in May this year used basic Windows forms objects to display basic information plus PowerPoint slides (saved as JPEGs). Teams around the building quickly engaged with the concept of sending up slides to the screens so everyone knew what they doing (whether work or some team do), and there is always some great content up there.

The application also monitors a Twitter account where people can send text messages straight to the screens - something which works really easily and is very popular.

Post reMix I decided that this would be the application I would re-write. It also meant that I could get through the wish-list of extra features people wanted - including news headlines, weather, and displaying the time both for UK and India. It also show the current Tesco share price and our 'Tesco week number' (where week 1 is the first week of our financial year). The application also includes 'anti burn-in' features that move objects around the screen to a different location every hour, and changes the background colours - that way every pixel on every screen gets the full exercise of all colours and all brightnesses!

It took just about 20 man hours to re-write and it too runs happily 24 hours a day across all the screens. It was designed in Expression Blend, then programmed in Visual Studio 2008 Professional edition using C#. It runs on a Windows XP box in the server room, and distributed as a radio signal (within the cables) with HD distribution amplifiers over our CAT5e cabling before being fed into the PC in socket on each screen.

No comments:

Post a Comment

As this blog grows in readership - and because it carries the Tesco brand - I have had to become more careful about the sort of comments that are acceptable. The good news is that I'm a champion of free speech so please be as praising or as critical as you wish! The only comments I DON'T allow through are:

1. Comments which criticise an individual other than myself, or are critical of an organisation other than Tesco. This is simply because they cannot defend themselves so is unfair and possibly libellous. Comments about some aspect of Tesco being better/worse than another equivalent organisation are allowed as long as you start by saying "in my personal opinion.." or "I think that...". ... followed by a "...because.." and some reasoned argument.

2. Comments which are totally unrelated to the context of the original article. If I have written about a mobile app and you start complaining about the price of potatoes then your comment isn't going stay for long!

3. Advertising / web links / spam.

4. Insulting / obscene messages.


Ok, rules done - now it's your go: