The difference between a good and a poor architect is that the poor architect succumbs to every temptation and the good one resists it.
Architect: Someone who knows the difference between that which could be done and that which should be done.
No matter what the problem is, it’s always a people problem.
Gerald M. Weinberg
… the purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise.
Edsger W. Dijkstra, “The Humble Programmer” (1972)