Colin Eberhardt's Adventures in WPF

News on Silverlight adoption from the Silverlight 3 UK Launch

July 23rd, 2009

Yesterday myself and Gary Scott (our MD) went down to London for the Silverlight 3 UK launch event. This is the first time I have been to Microsoft’s London office so I wasn’t quite sure what to expect. The glass-clad arched office exterior, and shiny minimalist interior were certainly stylish, however I was a bit disappointed to see an X-Box in the reception rather than a Surface.

microsoft-office

The event itself was quite low-key, with around 50 attendees (you can see some of their reactions via the twitter tag #sl3uk). The launch itself consisted of two presentation sessions hosted by Ian Ellison-Taylor (GM, Presentation Platform and Tools, Microsoft) and mainly consisting of a number of shorter presentations / success stories from a range of UK companies. The focus seemed to be less on SL3 and more on the whole toolset that surrounds it, with various Expression Studio components such as Sketchflow and SuperPreview being highlighted.

For me, one of the most compelling technology demos was Silverlight + IIS SmoothStreaming. Ian demonstrated how live HD video could be delivered to the browser in a way that degrades seamlessly when network bandwidth falls. Even more impressive is the way that this feature is used to provide an almost instant response when the user clicks on the scroll bar in order to ‘jump’ to a specific point in the video. Typically video players will buffer for a number of seconds before play re-commences, however with SmoothStreaming, low quality video is delivered almost instantly, and slowly ramps back up to full HD quality, again quite seamlessly. I can certainly see the major broadcasters wanting to adopt this technology.

Of the UK companies, the most interesting demonstration was of the new Tesco Beauty Room. This prototype application uses deep-zoom to provide users with a very visual and quite unique shopping experience. I am not entirely convinced of the usability of this application, you could quite audibly hear the amount of mouse activity required to select a product via deep-zoom, however the fact that a major global retailer is taking an interest in Silverlight is significant.

In the Q&A session I had the chance to put my question to Ian about Silverlight adoption:

quote Personally I think Silverlight is great, as do many of my fellow developers, however, we are finding a certain reluctance to adopt Silverlight from the companies we are working with due to low penetration figures for the Silverlight plugin. Is it just a waiting game or does Microsoft have a strategy for driving adoption? quote

I am happy that Ian’s response was both long and thoughtful. Microsoft currently believe that about one-third of all browsers have the Silverlight plugin installed, Ian also mentioned a slightly higher adoptions figure in the UK. A quick check from riastats.com agrees with this claim:

silverlight-adoption

Considering the age of the technology, Microsoft are pleased with the current level of penetration. From past experience in technology adoption, they expect that it will accelerate to follow an S-curve. However, figures from statowl.com do not show any clear signs of accelerated adoption yet:

adoption

Ian mentioned that there are some companies with Silverlight projects on hold until adoption reaches 40%, other 50% – which should contribute to adoption growth and acceleration.

In my opinion, these figures should not give anyone cause for concern. Microsoft is trying to break into a market which is dominated almost exclusively by Adobe Flash, with the only other competition being Sun’s Java-FX, Microsoft can happily play the long game!

Other interesting points included the Silverlight powered online SEAT Exeo marketing campaign. Their figures indicated that 59% of people who visited the site without Silverlight installed the plugin in order to view their site’s content. Part of this success they attributed to a custom installer.

Finally, it was fun to finally meet up with some of the other WPF Disciples in person. Here is a picture of myself, the CodeProject article machine Sacha Barber (left) and recent Microsoft MVP awardee Marlon Grech:

disciples

Regards,
Colin E.

Silverlight v3 ClearType Font Rendering – A comparison

July 14th, 2009

Text rendering has been a problem for both Silverlight and WPF for a while. This blog post looks at ClearType in Silverlight v3 and compares it to WPF and WinForms text rendering.

Text clarity is something that concerns me quite a bit. In financial applications, such as our market overview pages, often large quantities of both graphical and textual data are rendered to the screen. Users of these applications need to be able to rapidly digest information, hence clarity is very important.

I was very happy to see that text rendering in Silverlight has been improved by the introduction use of the ClearType sub-pixel rendering algorithm. The following table contrasts the same Tahoma text rendering using Silverlight, WPF and WinForms in order to compare the text clarity.

To scale Zoom x4
Silverlight v2.0 silverlight2 silverlight2-zoom
Silverlight v3.0
(ClearType on)
silverlight3 silverlight3-zoom
WPF
(ClearType off
)
wpf wpf-zoom
WPF
(ClearType on)
wpf-cleartype wpf-cleartype-zoom
WinForms
(ClearType off)
winforms winforms-zoom
WinForms
(ClearType on)
winforms-cleartype winforms-cleartype-zoom

From the above table you can see the tell-tale colour-halos around text in Silverlight v3.0 indicating that ClearType rendering is being used. Previously Silverlight used the same anti-aliasing approach used by WPF.

The text rendering of WPF has been criticised quite a bit. The main problem is that text glyphs are not snapping to pixel boundaries, which results in some rather unpleasant artefacts when text is animated. However, the good news is that this will be fixed in .NET 4.0.

The addition of ClearType text rendering in Silverlight v3.0 is certainly good news. However, if you compare the images above, I still find that the WinForms ClearType rendered text is clearer that its WPF / Silverlight counterparts. If you inspect the word ‘bold’ which is rendered in white text on a blue background, the WinForms text is much clearer. The WPF / Silverlight fonts appear much ‘fatter’ with less space between the letters. All the above applications used exactly the same font (Tahoma) and the same font size.

Regards, Colin E.

Silverlight 3 UK launch … and the future of WPF?

July 9th, 2009

A brief article on the launch of Silverlight 3 and why the interest in Silverlight is eclipsing that of WPF.

The excitement behind Silverlight has been gaining in momentum throughout this year, with one of the highpoints being the MIX09 conference in March this year where the announcement of Silverlight 3 beta took centre stage. There are no signs of this momentum having dropped with the final version of Silverlight 3 being release tomorrow, on July 10th.

I will be attending the UK launch of Silverlight 3, together with our MD Gary Scott, at the MS Offices in London.

invite

… for some reason, we in the UK are 12 days behind the rest of the world ;-)

I came to Silverlight through its big-brother WPF about half a year ago. I was looking for a new challenge and WPF certainly delivered, the framework has an elegance that leaves its predecessor WinForms looking clunky and second-rate. Silverlight shares this same elegance, some of the finer details are missing (Triggers, 3D, double-click events!), however there are enough similarities that a WPF developer can pick up Silverlight in a matter of hours, furthermore developing applications that target both frameworks is quite straightforward.

Since making the move to Silverlight I have done very little with WPF. I have found that my Silverlight blog posts and articles have proved far more popular than their WPF counterparts. Also, our customers here at Scott Logic are showing an increasing interest in Silverlight, but rarely mention WPF. So why is this?

Most companies within the financial sector follow a similar archetype; with their desktop software being most typically developed with WinForms (or Excel!), and a seemingly equal split between companies whose web offerings are developed on a Microsoft platform (ASP.NET) or Sun Java (J2EE).

If we think for a moment about what WPF could mean for companies such as these; personally I think the answer is unfortunately very little. WPF revolutionises the way in which the UI is assembled and connects to your business objects, as a developer I think it is great! However, is that enough to convince the management that they should ditch their WinForms development and invest in WPF? I don’t think it is. Whilst the developers will enjoy the switch to WPF, what’s in it for the end users – skinning? rounded borders? (blurry fonts? – ahem). If there is no perceived end-user benefit or reduced development cost, there are no compelling reasons to adopt WPF. Interestingly Microsoft’s Tim Sneath mentioned that the early expectations for WPF were that it would be  “primarily for consumer software”, although he does allude to adoption of WPF for enterprise software – sorry Tim, I just don’t see it happening from here!

The story for Silverlight is very different. Delivering interactive web applications has always been a struggle, the use of AJAX to retrofit interactivity on top of what is essentially a static presentation model, HTML, is a constant battle. However, interactivity and a rich UI is something that all end-users want … and Silverlight certainly delivers. This is the reason why Silverlight is gaining interest not just from the developers, but also from their managers (and their manager’s managers). Interestingly those companies that develop their web-offerings with Sun Java seem to be as interested in Silverlight as their Microsoft ASP.NET counterparts.


tortoise

With Silverlight starting on what looks like a winning streak, what is the future for WPF? Some people are of the belief that Silverlight will eventually kill of WPF, however I do not share that view. Personally I think that WPF will be eclipsed by the shadow of Silverlight for a few years for the reasons given above. However, I think that WPF is the Tortoise to Silverlight’s Hare; as companies start to adopt Silverlight their developers will gain the expertise necessary to develop WPF applications. My thinking is that in a few years time, when these companies embark on new desktop software developments, it is not the features of WPF that will steer them towards WPF, but rather their developer skillset.

The immediate future for Silverlight looks very bright.

Or is it? … Unfortunately not. Our customers want to use Silverlight, but so often they cannot because they know their users do not have the required plugin to run Silverlight applications. The problem is that the end-users will probably not install Silverlight until they have a reason to, a sort of Chicken or the Egg problem. With statistics indicating that approximately 25% of users having Silverlight installed, this is a big problem.

So, back to the Silverlight 3 UK Launch, if there is a QA session, there is only one question that I really need to ask, and that is:

quote Ian, as a developer I am sold on Silverlight. The release of version 3 put the icing on a cake that is already quite sweet. But what is Microsoft doing to help user-adoption of the plugin? quote

Regards, Colin E.