Harry Pierson comments here and here about "stuff he didn't know about WF". Pay attention; some good tidbits of knowledge you'll find in there. Pay particular attention when he says which features of WF as implemented on V1 are "toys"; it will save you a lot of grief down the road.

This is something that, as much as I like WF, I feel very strongly about, and I've had some discussions (not very succesful, mind you) on this topic in the past. I understand the fact that there are limitations on what could be implemented for a V1 product, and I do understand that because of the extensible and host-agnostic architecture of WF it was difficult to provide anymore out of the box for V1. I do fully recognize the goodness in the WF architecture (there is a lot to like, really). However, that was never my point.

You know, it's fine if that was the intention, really. What I really don't like is that if indeed those services were merely examples/toys intented to show they should have never been part of the core product in the first place. As Harry correctly points out, they should've been samples included in the SDK will full source code (what good is an example binary assembly with no code, reflector notwithstanding?).

Making them part of the core product is, frankly, deceiving and will cause many people to think they are production ready services they can fully rely on for real world scenarios (and yes, that includes things like multi-server/cluster/load-balanced deployments and the like; those are must-have features for a product of this kind, imho), particularly since the documentation doesn't say outright what the limitations of them are.

It never hurts to ask again :-)


Tomas Restrepo

Software developer located in Colombia. Sr. PFE at Microsoft.