|
The majority of computer science education focuses on software functionality. You're taught the process of building a program, usually from small, hypothetical programming problems and case studies. Once the program is working as expected, the project is over forever and you move on to the next one. While this approach may be effective for teaching future programmers how to use a specific language and implement certain functions, processes, and theories, it is terrible at preparing them for what the author of Code Craft calls "the software factory" -- the actual software development industry. It is only too late that so many programmers learn how to write secure, maintainable, readable code; some never do. Code Craft is the perfect segue from a computer science degree to the "real world" of software development.
Writing analysis
The design of Code Craft is brilliant. It's concise, straightforward, easy to read, intuitively organized, and leaves no technical details uncovered. Most of the book concentrates not on actual code -- though there are many short, theoretical pseudocode examples -- but on informing readers of the correct attitude toward solving the various problems they will encounter in the software industry. Much of the book concentrates on writing great software, but there is also a significant portion dedicated to the social and political aspects of working with other programmers in a software company.
Each chapter begins with a famous quote, then introduces the problems that the rest of the section will address. Key concepts are clearly defined when they are introduced, and all conceivable angles of every issue are covered. The chapter ends with a summary and some questions for the reader to ask himself to determine if he's following the book's principles as intended.
I was immediately put off by Code Craft's frequent quotations from the Bible, but the majority of these religious quotes are found early in the book, and don't continue to ruin the author's credibility beyond the introduction and the first two chapters. Still, there should be no religious crap in a technical book.
Code Craft's layout is such that you can start reading anywhere. If any of the book's material is useful to you, however, I suspect that most of it will apply, and therefore recommend reading the entire thing from cover to cover.
Putting the book to the test
Reading Code Craft and applying its teachings to your life means asking yourself some hard questions about your programming habits, work ethic, and even the approach you take toward your career. If you don't have an active desire to become a better software developer, whether you are a hobbyist or a professional, you won't get much from this book. In essence, Code Craft is a self-help book for programmers.
Code Craft revolutionized the way I think about programming. Granted, I am only a hobbyist programmer, but I'm frequently required to evaluate software and source code, and to hack in some necessary function or fix a bug that the program's developers won't fix. This book made me realize that I was causing a lot of my own programming difficulties by concentrating on creating something that works instead of creating something that I can easily modify, maintain, and confidently run in a production environment.
Summary and conclusions
Despite the great things this book has to offer, I'm giving it a 9 out of 10 for several reasons. I think the title is inappropriate for the content, I think the cover design reflects a hobbyist readership whereas the content is geared toward professionals, and I think that the Biblical references, however innocent they may seem, are a totally unnecessary distraction. The author quotes the Bible in his introduction and dedication, which almost made me abandon Code Craft outright. Is this a book on Jesus, or are we going to talk about programming here? Is this author going to give us myth and madness that we just have to take on faith, or will he present us with verifiable facts and valuable career experience? Readers should never know what your religious beliefs are.
Anyway, this book is definitely recommended to all computer science students, and doubly so to anyone who works within the software industry -- even if they have nothing to do with writing code. By far this is the best book on general programming that I have ever read.
| Title |
Code Craft |
| Publisher |
No Starch Press |
| Author |
Pete Goodliffe |
| ISBN |
1593271190 |
| Pages |
Paperback, 580 pages |
| Rating |
9 out of 10 |
| Tag line |
The practice of writing excellent code. |
| Price (retail) |
U.S. $24. (Buy it from Amazon.com) |
Discuss this article or get technical support on our forum.
Copyright 2007 JEM Electronic Media, Inc. No reprints without written permission. |