The blog of Eric Sibly; focusing on mountain biking, .NET development for the Desktop, Smartphone and PocketPC.

Thursday, September 06, 2007

WPF vs Windows Forms...

I saw this post where some dude postulated on WPF vs. Windows Forms, which almost coincided directly with a conversation I had yesterday with an esteemed colleague pretty much discussing this very topic.

My take on this is as follows:

Make Obsolete - Windows Forms has reached the end of its useful life from a Microsoft investment perspective, they should continue to support through the next .NET release, then deprecate (decorate with the ObsoleteAttribute), and finally remove altogether. Support should continue for some time on those versions for those who continue to have applications which need this functionality – they can exist side-by-side with latter versions of the .NET runtime. Reason to remove is two-fold: shows intent and reduces bloat.

Provide Tools – The tools story around WPF needs to improve, a lot, and fast. These tools, Cider and Expression, need to be out there yesterday, and totally free. Microsoft should look to encourage adoption of the platform and stop looking to try and make money off these tools. There more people who use the tools, the more applications that are created, the greater the demand for the platform – ergo more sales of the OS. Whilst on the subject of the tools, why don’t Microsoft just have a single version of Visual Studio that is free to everyone – it is the hobbyist developers that often create the most ??? applications.

Dog Food It – Microsoft need to demonstrate that they are serious about WPF and the .NET platform and start to deliver their own applications on the platform (other than Expression). By not doing this they are sending a confusing message in which they see the platform as not being good enough for their own use, and if they don’t fully trust should I? All these Live applications, such as Messenger, Writer, Photos; what about NotePad and Calculator, etc – these should all be WPF apps demonstrating the awesome power of the platform.