Why WPF matters.

I was just reading Peter Varhol’s blog entry about the delay in the WPF editor tools (expression et al),….
While on the one hand I’m happy as it gives me a bit more time to get up to speed with WPF,  on the other I am sick and tired of reading stupid comments about WPF that seem to equate it only to 3D and Aero glass etc.  I can’t help but wonder if these are the same kind of people that fixate over the wheel trims of a car and the decals rather than the performance, stability, road handling, safety and FUNCTIONALITY !!
Seriously, when was the last time you wrote some code to write a documents, such as an invoice or a receipt (every day business events) to a printer ?  Try doing it in VB.NET or C# in 5 or 10 minutes.. yeh right, maybe you can, but I’m there with a scrap piece of paper scribbling done co-ordinates as I try to programmatically layout the page.  That’s right, there is no declarative layout.  that comes with WPF.
Or perhaps you’re doing that touch screen application you see at virtually every shop or supermarket, or wanting to display data in a block format, not that unsightly throw back to the early 90’s excel spreadsheet looking thing they call a data grid.  For example, look at listings on ebay, there’s use of a block format… typically a couple of pieces of data along the header of each item, followed by a description etc.  Now try doing that in Windows.Forms today ..  you end up having to search for a 3rd party tool, or delving deep into custom drawing your own control.  Yet if it was a web app, it’s simple to do because you can easily mix and match declarative programming with procedural. But you don’t even have to do that with ASP.NET thanks to niceties such as the repeater control.
Sure you could have a repeater control for windows.forms, but you’re still faced with scalability issues, as the rendering is done around window for each element in each item. Then you also have the positioning and sizing issues to deal with as each item may or may not have certain fields. 
yet when you have a document like flow concepts naturally, as html does, then the task is simple.  And that’s what WPF brings to rich client applications, the goodness of document flow.
If you think WPF is only about 3D, animation, aero glass etc, then you’re memorized by the bling, the wheel trims, the decals…  It’s time to focus on the car.

3 Comments so far

  1.   Mitch Wheat on July 26th, 2006          

    Hi Bill

    Whilst I do not relish having to learn yet another transient development paradigm, I completely agree with your comments.

    I look forward to the day when web and windows forms fuse to become ‘webdows’!

    Assuming you meant mesmerized above.

    Mitch Wheat

  2.   bill on July 26th, 2006          

    hey Mitch,

    Yeh it was late at night and I was in bed when I wrote that, so the ergonomics wasn’t the best (there’s actually a lot of typos in there)

  3.   Daniel Moth on July 27th, 2006          

    While I agree with your overall stance, the example of Glass seems irrelevant since it is not supported by WPF… 🙂