I read the Ousterhout book a couple of years ago and realized almost immediately that this guy truly understood the importance of a number of thigs he discusses. One of the most important concepts he gave me was the notion of "cognitive load." It was Alfred North Whitehead who said:
“It is a profoundly erroneous truism, repeated by all copy-books and by eminent people when they are making speeches, that we should cultivate the habit of thinking of what we are doing. The precise opposite is the case. Civilization advances by extending the number of important operations which we can perform without thinking about them. Operations of thought are like cavalry charges in a battle — they are strictly limited in number, they require fresh horses, and must only be made at decisive moments.”
― Alfred North Whitehead, An Introduction to Mathematics
Or to be more succinct and to the point in the programming sphere, this:
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
—Martin Fowler
Overall, I'm largely in agreement with Ousterhout and with your own assessment of his book. With respect, we disagree somewhat about things you question Ousterhout's text.
But yours is a great review and a valuable service to the IT community that increasingly finds itself facing Technical Debt to the point of bankruptcy. As someone pointed out recently, "disruption" is a form of bankruptcy as a new competitor, unsaddled with the years of technical debt accumulated by your own product, suddenly is able to compete so dramatically that your own market share becomes insignificant.
The video of Ousterhout's presentation at Google was an unexpected gem. Thanks for it, and I shall recommend it to others.
I read the Ousterhout book a couple of years ago and realized almost immediately that this guy truly understood the importance of a number of thigs he discusses. One of the most important concepts he gave me was the notion of "cognitive load." It was Alfred North Whitehead who said:
“It is a profoundly erroneous truism, repeated by all copy-books and by eminent people when they are making speeches, that we should cultivate the habit of thinking of what we are doing. The precise opposite is the case. Civilization advances by extending the number of important operations which we can perform without thinking about them. Operations of thought are like cavalry charges in a battle — they are strictly limited in number, they require fresh horses, and must only be made at decisive moments.”
― Alfred North Whitehead, An Introduction to Mathematics
Or to be more succinct and to the point in the programming sphere, this:
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
—Martin Fowler
Overall, I'm largely in agreement with Ousterhout and with your own assessment of his book. With respect, we disagree somewhat about things you question Ousterhout's text.
But yours is a great review and a valuable service to the IT community that increasingly finds itself facing Technical Debt to the point of bankruptcy. As someone pointed out recently, "disruption" is a form of bankruptcy as a new competitor, unsaddled with the years of technical debt accumulated by your own product, suddenly is able to compete so dramatically that your own market share becomes insignificant.
The video of Ousterhout's presentation at Google was an unexpected gem. Thanks for it, and I shall recommend it to others.
Keep up the great work!