Code Reading (ISBN 0-201-79940-5) is a 2003 software development book written by Diomidis Spinellis. The book is directed to programmers who want to improve their code reading abilities. It discusses specific techniques for reading code written by others and outlines common programming concepts.
The code examples used in the book are taken from real-life software, many of them coming from the export-19980407 NetBSD snapshot. Although the programming language of choice is claimed to be balanced, the use of C to illustrate basic concepts predominates. Excerpts from important open-source code systems like the Apache Web server, the hsqldb Java relational database engine, the NetBSD Unix distribution, the Perl language, the Tomcat application server, and the X Window System are presented.
The book covers most concepts related to code that are likely to appear before a software developer's eyes, including programming constructs, data types, data structures, control flow, project organization, coding standards, documentation, and architectures. A compact disc with 16 million lines of open-source code, accompanying the book, provides the context for all the presented examples. The end chapters may be the ones of most use to advanced users, as the initial chapters delve into programming language constructs, regular expressions, etc.
The book inaugurated Addison-Wesley's Effective Software Development Series, edited by Scott Meyers, and received the 2004 Software Development Productivity Award in the “Technical Books” category. It has been translated into Chinese, Greek, Japanese, Korean, Polish, and Russian.
Famous quotes containing the words code and/or reading:
“Many people will say to working mothers, in effect, I dont think you can have it all. The phrase for have it all is code for have your cake and eat it too. What these people really mean is that achievement in the workplace has always come at a priceusually a significant personal price; conversely, women who stayed home with their children were seen as having sacrificed a great deal of their own ambition for their families.”
—Anne C. Weisberg (20th century)
“I have not placed reading before praying because I regard it more important, but because, in order to pray aright, we must understand what we are praying for.”
—Angelina Grimké (18051879)