@Edent thanks for the review. I'd also highly recommend the fascinating Ten Books on Architecture by Vitruvius. Written ~2000 years ago, its tenets of Stability, Utility and Beauty are relevant to modern software development.