Screw best practices and dogma
DogmaDogma is a set of principles laid down by an authority as incontrovertibly true.
5 problems with dogma (and principles)1. Like best practices a design principle leaves no room for improvement and only makes sense in a context.
2. Combining design principles often works against your real and honest goals.
3. Design principles are often in conflict, which can only increase complexity.
4. Design principles come with a downside. This also reveals the truth about dogma: dogma lays down negatives as incontrovertible truth.
5. Design principles that worked in the past will not necessarily work in the future. Dogmas eventually collapse.
Why is dogma even more dangerous than best practices?
Dogma is even more dangerous, because dogma is much harder to refute, and teams can base even more value on dogma since it is an entire set of principles driving an entire architecture. Challenge one principle and you challenge the dogma and architecture as a whole.
"Don't be trapped by dogma --which is living with the results of other people's thinking. Don't let the noise of others' opinions drown out your own inner voice."
Steve Jobs (1955 - 2012)
What should you embrace instead of dogma?
Simply embrace design rationale and empirical data:
A is important, so we chose B, accepting downside C.
Design teams can easily be locked in best practices and dogma. These often times divide a team in dysfunctional and irrational ways. Blindly following the dogma while losing sight of core goals.
Empirically, I have seen some of the most successful (and profitable) teams refute best practices and dogma, so there has to be something to it.
The main point: any design team should challenge best practices and dogma. As Alan Kay said, "Point of view is worth 80 IQ points."
In my view, best practices and dogma do not lead to great design — more often, they lead to poor over-abstracted design which can be even worse than an under-abstracted design.