Visual Studio 2008 review, and the WPF business apps debate

Review just posted on RegDeveloper.

In it I quote Peter Lindsey of component vendor Infragistics, who says that:

Microsoft, in trying to capture credibility within the media market, has poorly represented the value of WPF to business application developers.

The problem is that Microsoft decided to tell its customers not to use WPF (Windows Presentation Foundation) for line-of-business applications, which is a strange way to launch your next-generation GUI API, and tough on vendors such as Infragistics who have been busy providing business-oriented components like xamDataGrid.

Not everyone agrees that WPF is a no-hoper for business apps. See this post from software architect Ivan Towlson:

For me, the killer application of WPF is not bouncing buttons with dancing elves trapped inside them.  The killer application is information visualisation, the kind of things you get from Tufte and the periodic table.  And that’s something that even forms-style, line-of-business applications will find worthwhile.

When Microsoft introduced .NET it made great efforts to get VB 6 developers to upgrade and migrate their projects, even though there were sound technical reasons for caution. Why is it that with WPF those reasons for caution, valid though they are, have been allowed to dominate the messaging to the extent that most developers probably have the impression that WPF is irrelevant?


12 thoughts on “Visual Studio 2008 review, and the WPF business apps debate”

  1. Remember as well that many/most internal IT departments don’t have the services of a dedicated Graphic Desgner, whereas Microsoft have been promoting the role of the designer (rightly, in an ideal situation) in WPF GUI creation to the point where from the developer point of view WPF could just as easily have been named NFY (Not For You), like the Expression suite. Which is unfortunate, as is the use of SBM (Stereotype Based Marketing): “Whatever you do don’t let any of your colour-blind developers with no social skills or visual sense whatsoever ANYWHERE near the UI. Ha ha ha”. That’s fine when you have the *choice*.

    Developers on the other hand are also partly to blame…I note with alarm the number who are unwilling to go anywhere near WPF, or think it isn’t finished, until the entire VB (let’s face it that’s what they mean) control set has been faithfully replicated. The idea of composition, the shear degree of *freedom* that WPF gives you just hasn’t sunk in, while they yearn to reproduce the same old boring VB4 interfaces in the new toolset. Way to conform to the stereotype, guys.

    (If there’s any group of people I’ve forgotten to p off, it’s very early in the morning here so I’m a bit slow off the mark).

  2. Tim

    Re: WPF. Although it’s great that Microsoft now have a “designer” tool in Blend and a “developer” tool in VS2008, the reality is that they’re very different beasts. From the viewpoint of a component vendor, Blend is a nightmare of non-extensibility. (You want to add a new control? Markup the XAML. You want adorners with that? Tough, not supported.)

    Despite an acknowledgement by MS that the external ecosystem for WPF is so much less advanced than Windows Forms (like, duh), to me the issues are: the designer tools have taken well over a year to get to where they are now and are still incomplete; the WPF framework is still being evolved (extensibility and flexibility are problems for component vendors — both Infragistics and ourselves have had to ignore/rewrite fundamental WPF classes so that we can do what we have to do); and it’s going to take time to componentize the visualization components that people seem to want from WPF (grids are all very well, but they’re “old-school”).

    No doubt that developers and designers can write nifty-looking WPF applications right now, providing they spend a lot of time at it, but the ultimate strength of WPF will only come from the third-party market. That ecosystem is still playing catch-up, since it relies on the development tools and the biggest has only just been released.

    And then there’s Silverlight or WPF-lite to consider too. Again no real tools to speak of. It seems that the third-party component market is being blessed with the old Chinese curse: May you live in interesting times…

    Cheers, Julian

  3. Do you think it’s because MS have been targetting the J2EE-oriented market? J2EE’s main disadvantage, as far as I can gather, has been its excessive complexity. WCF is intended to provide a much simpler means of achieving the same ends, as far as I can gather, and it might just be that Microsoft is concentrating upon proselytising J2EE adherents.

  4. Clyde

    You may be confusing WPF and WCF? WPF is the GUI stuff so not very relevant to J2EE. I agree the acronymns are pretty confusing.


  5. No, I’m not confused, honestly 😉
    I was just wondering if Microsoft were trying to woo the enterprise developers by promising easier construction of multi-tier apps before targetting the presentation layer, hence the apparent neglect of WPF.

  6. I see WPF or Silverlight as Microsoft’s attempt to go after Flash and Flex. My thoughts on GUI development are as follows:

    – AJAX downloads fast, it is supported by most browsers and is an open platform. It is no wonder that this is the only technology supported on the iphone. Javascript is a great OO language, but its dynamic features make it hard for IDEs to support. Also, the differences between browsers is still a pain, but libraries like prototype help.

    – Java Swing Applets are an open platform, great IDE support and Java is a pretty good language. JFX might be an even better language for coding Swing Applets. But applets are the slowest to download and run.

    – Flash applications download instantaneously and they are taking over the Web. However, it is not an open technology since it is owned by Adobe, and it is a better platform for animation then for business applications. Also, you have to love Adobe products enough to buy into their IDE.

    – WPF is Microsoft’s attempt to get some market share from Adobe. But I think it is too late, Adobe has a huge head start. Also WPF will be controlled by MS and your stuck using Visual Studio.

    The best platform would be Java Swing applications running inside a fast open source JVM written by Google. I am hoping that Android goes beyond the cell phone and takes over all of the above.

  7. The best platform would be Java Swing applications running inside a fast open source JVM written by Google. I am hoping that Android goes beyond the cell phone and takes over all of the above.

    Depends what environment you’re working in and what you’re trying to achieve, I’d say.

  8. WPF is not ready for prime time in business development. Until it has at least the same support as ASP.NET development has in Visual Studio now, it will be religated to the fringe. Sure you will get a few nice applications developed just like in the early days of Java.
    C# and VB.NET have gained acceptance largely due to Visual Studio’s ease of development. I am looking forward to Visual Studio 2012. Maybe they will figure it out by then.

  9. Wow WPF and WCF are in prime time application development here!

    I can’t imagine going back Win Forms!

    Seriously, your POV might be web apps which is developed here, never the less, I don’t get your “not ready for prime time” comment.

    Does any new framework have its growing pains… of course. ASP.NET had some the same issues and complaints.

    Support on the other hand is were you find it Microsoft, forums, blogs and web sites which like ASP.NET you find and mark the good ones.

    You build up a repertoire of tools and support sources that with time become a comfortable blanket.

    Sometimes you have throw off that blanket to move forward.

Comments are closed.