I was asked a very good question as to what the criteria is to decide whether to bring a tool on board at work.
In the presentation that JP did at the Calgary Code Camp regarding his topic of Monorail, he cautioned its use because of a few underlying technologies that he does not yet have the confidence in their longevity. This also brings concern over the tool’s ability to fulfill all the needs of his use in the dynamic implementations on customer sites beyond what is used in a demonstration or sample applications.
Customer’s (the vast majority) don’t care that you are using Rhino.Mocks, TypeMocks, NMock, rolling your own mock… as long as you are producing quality software that satisfies their need.
The question then becomes, what are the criteria that get us, as professionals, to the point customers in the direction of relying on certain tools in their production environment(s)?