NWorkspace update

Yep, I still believe in the idea of an abstraction against which to program your consumer, one that can delegate to some popular OR Mapper or a Fake that fakes the database. I'm using it daily in my work on a current project and sure, there has been some friction, but overall I think it is serving me, my team and the project well.

I was listening to Rod Johnson the other day while he talking about Spring and it occurred to me that Spring has something regarding a generic Exception hierarchy for abstracting Exceptions from different OR Mappers and datastores that is exactly one of the things I have in NWorkspace, only that my version is much less sophisticated.
:-)
So perhaps there is some momentum in the idea after all. Oh, and there are more signs....

I was really interested in Kim Harding Christensen's usage of the Specification pattern [Evans DDD] for querying as well. I think it's a great way of making the code more intention revealing. So far I have used more generic queries, even if I have created type safe query objects such as CustomerQuery, but to my mind using Specifications is even better. What's more, if those specifications could use some generic query solution, the whole thing would be even nicer. Furthermore, Kim is using something similar to NWorkspace in his own development, but without a generic query language.

Yet another sign is that Sebastien Ros of Evaluant has created something he calls EUSS which is also similar to NWorkspace, including a generic query language. It will be very interesting to see if it takes off!

OK, to balance this post a bit, it might be that the generic query language is the problem and that it will be too powerless to be useful often enough. I strive for 80% of the cases. We'll see...