Principles vs strategyA set of principles does not make a strategy. Though it’s certainly better to have a set of principles than to have no principles and no strategy.
What are your principles?
It’s a broad question.
You probably have many.
Perhaps honesty is a personal principle for you.
Or on a professional level, maybe always doing hard work.
Software developers often have principles. Some of them have names.
But are principles enough?
Well, of course it depends on your goals. But I’d say generally speaking, principles are not enough.
Without a strategy (or a direction), principles can’t help you get there.
Of course in the absense of a strategy, principles may help you be less miserable. Living by the principle of honesty is going to generally be better than not, even if you don’t have any life dreams to fulfill. Doing hard work is likely to lead to a more fulfilling career than not, even without career ambitions. Programming according to SOLID principles is likely to produce more pleasant code than not.
But for principles to really shine, you need a direction. A goal. A strategy.
In his book/blog series on Wardley Mapping, Simon Wardley puts it like this:
The point I want to emphasise is that principles are fine and yes strategy has to adapt to the game but don’t confuse the two. A set of principles does not make a strategy. Though it’s certainly better to have a set of principles than to have no principles and no strategy. This is equally applicable in business.
The broad application of software architecture principles
When I learn about a new architectural principle, I like to extrapolate the larger truth, and see if it applies to other domains.