note
ady
This can be classified as an "advanced book" in the sense that to really evaluate/appreciate the design choices made by the 30+ different authors (and projects), you should have some experience developping software, where you have wrestled with the same general kind of design issues. <br>
<br>
You should also have a reading familiarity with language grammars (BNF) and parsing, algorithms, complexity (O) and testing, programming languages (C, C++, Java, Haskell, Scheme/Lisp, Perl), frameworks (OO) and architectures (layering, services).<br>
<br>
For a novice (actually for any...) programmer, I'd rather as a first read recommend a book like "Perl Best Practices" by Damian Conway or Bjarne Stroustrups new book on Programming, Principles and Practice(see <a href="http://itmanagement.earthweb.com/features/article.php/3789981">ref</a>). But with the above prerequisites, I find the "Beautiful Code" book thought provoking and inspiring (each author has his own preferences viz. design and coding - sometimes contradicting - , but they describe the alternatives, explain their mistakes and argue for their final choices.<br>
<br>Best regards,<br>
Allan Dystrup
736395
737305