I don’t remember exactly how google groups work, so I don’t remember if you have to be a member of a group to lurk, but a post came out from Microsoft that they intend to release guidance on cqrs. The thread is here.
The roadmap for the guidance is here and a related post about how cqrs supposedly works with Azure is here.
With my usual skill at people development, my response was:
“Oh dear god. Nothing can possibly go wrong with that.”
A lot of stuff then went on in the thread. A lot of it was around the idea that “we haven’t produced the guidance yet, why are people being so negative?”
Tom Janssens summed up some of the key points:
“It is very odd to see such an opinionated and aggressive slowchat on this usually very constructive and welcoming forum. Many of you here are truely experts in the field with years of experience in CQRS; let us try not to judge and be negative, but create an open an welcoming atmosphere for MSFT as well. “
“I assume that a lot of the persons in this thread are or have been software architects somewhere in the past. Do you still recall how hard it was to convince the others of using this whole new approach? Do you remember the learning process you had to go through - both you and your collegues- ? I made a lot of mistakes, and I assume I will be making lots more of them.”
“Here is something very appropriate for this thread IMO: one of my mentors always said: "the person saying it can not be done should not interrupt the person doing it". “
Not so fair enough, but actually bullshit. I’ll get to that.
“The guidance is going to be there no matter what, so let us try to make it as awesome as we possibly can. “
To which I responded, “Yep, sums it up.”
So, here’s the skinny
<Digression>The irony here is pretty thick. Way back in the day, Bellware (among others) used to accuse me of being a bought-out lackey and shill for Microsoft, which I always found funny. Though I haven’t changed much since then, the following will seem really funny.</Digression>
Regardless of all that, the issues here are pretty clear.
To Microsoft’s credit, they have said that they are being asked more and more about what cqrs and what it involves, and what it would talk to implement this. This is perfectly understandable. They want to respond to clients.
Also, they have said (through Glenn Block) that they want to engage with people such as Greg Young to get a clear grasp on what cqrs is. This is good. Glenn and Greg are good at what they do.
Where things start to go off the rails is pretty easy to identify: are they going to offer ‘guidance’ for cqrs along the lines of Oxite, well understood to be garbage? Are they going to offer ‘guidance’ for cqrs along the lines of N-layer app sample, also well understood to be garbage? Are they going to be able to transcend the failed patterns and practices guidance that has given us the ‘joy’ of the Enterprise Library, a set of largely inadequate tools (in their pre 5.0 versions) that plague us in the industry?
"the person saying it can not be done should not interrupt the person doing it". Um, no, the people who have already done it are trying to interrupt the people who’ve never done it before and spew out ‘guidance’ that tells people how to do it incorrectly
“The guidance is going to be there no matter what” Exactly. Greg Young might be involved, and we hope that he is. But if he isn’t, or if he is and ignored, the ‘guidance’ is coming out regardless. You have been warned.
Hoping for the best
I hope that p&p releases guidance (and not ‘guidance’) that is accurate and supported by the people that actually understand what cqrs is (in other words, not me, but true industry leaders).
But, as they’ve stated/threatened, it’s coming out regardless. Color me cynical if that isn’t something I find encouraging.