Code Complete


Code Complete is a software development book, written by Steve McConnell and published in 1993 by Microsoft Press, encouraging developers to continue past code-and-fix programming and the big design up front and waterfall models. It is also a compendium of software construction techniques, which include techniques from naming variables to deciding when to write a subroutine.

Summary

McConnell defines the main activities in construction as detailed design, construction planning, coding and debugging, unit testing, integration and integration testing. Although he does not dismiss the value of other aspects of software development such as requirements and documentation, McConnell emphasises the construction of software due to several reasons. Within the view of the book, construction is a large part of software development, as the central activity within software development and can significantly improve the productivity of a programmer when focus is directed towards it; in addition, the source code is seen as defining the operation of the software, with documentation implicated when code and documentation are opposed. Lastly, the book contends that construction is the exclusive activity which is guaranteed to remain completed.
The techniques of a good programmer are also given throughout the book. The whole part seven of the book is about software craftsmanship.
The other six parts of the book are: laying the foundation, creating high-quality code, variables, statements, code improvements and system considerations.

Reception

Code Complete has received outstanding reviews, being widely regarded as one of the leading must-reads for software developers. It won a Jolt Award in 1993.
It is rated favorably on several lists such as Goodreads, Amazon and some independent blogs.
There are also negative reviews about the length and style of the book, which runs to over 900 pages and goes into detail on many topics.
The first edition has been superseded by Code Complete 2. The first editions can be found used and are still relevant for programmers using C, Pascal and GW-BASIC

Editions