Luke Hohmann is that rare software technologist who views software development from the viewpoint of the end user. He passionately believes that one hour spent with an end user is worth many hours making software architectural choices or days documenting perceived user requirements.
With an analytical and rigorous approach to problem solving and programming techniques, this book is oriented toward engineering. Structure and Interpretation of Computer Programs emphasizes the central role played by different approaches to dealing with time in computational models.