Turning CQRS into a CheckBox
Imagine how cool it would be if the most complex thing a developer can possibly experience in his job could be reduced down to a CheckBox in a UI automatically creating your app?
Join the DZone community and get the full member experience.Join For Free
CQRS is probably amongst one of the most complex and misunderstood things that exists in software architecture today. In fact, it is so complex, that even "super grandmaster software architects" seems to mess it up sometimes. Having successfully applied CQRS into a software projects that succeeds, and putting it on your resume, might sometimes imply an additional digit in salary as a software architect - At least if you can explain how you did it. To understand why, realise CQRS is the stuff that makes Google tick. In Magic, CQRS is a CheckBox.
In fact, as I created the CheckBox, I was pondering whether or not to put it into the "Advanced" section, but I realised it was simply too simple, and it didn't even deserve to be categorised as advanced stuff in Magic. Bobby Fisher once said; "My favourite moment is when I crush a man's ego". I don't like crushing mens' egos, but I do enjoy simplifying things. Now as you generate your CRUD apps with Magic, you can as of version 9.3.8 literally click a CheckBox, and you've got CQRS! Seriously! For real mate! :D
I know this sounds like an April's Fools Joke, but it's not. In fact, when I claimed that I could teach software developers DDD in 5 minutes the 2nd of April 2019, Greg Young even asked me if the article was published a day late. Well, today I reduced CQRS to a checkbox mate. Of course, the reasons why this is funny, is because Young whom is an amazingly skilled software architect, happens to be the inventor of the CQRS term.
Check (Box) Mate Greg ^_^
Sorry, I couldn't quite help myself a bit there. Hopefully Mr. Young will take it as a sport though, and hopefully his ego will survive. And, for the record, it's not entirely correct to use the CQRS name for this - However, it does apply it the way most developers arguably (mis) understands it - And such for all practical concerns, becomes an implementation of CQRS as people understands it, through a Wizard CheckBox. In case you don't believe me, watch the following video ...
- Download Magic and check (box) it out for yourself ^_^
And in case you want to learn CQRS the way it is supposed to be understood, Greg has an amazing article about it on his blog. So I guess the conclusion is that I've turned how most people falsely assumes CQRS is supposed to be implemented into a CheckBox - Still quite impressive for a Tuesday I think. If I may be so blunt and to say that out loud myself :)
Maybe tomorrow I'll solve the unified theory of science or something ...? ;)
Opinions expressed by DZone contributors are their own.