CodeCraft
This book is one that ALL programmers should have on their bookshelf and keep within easy reach so that they can constantly refer to it. Knowledge of what this book contains is what separates programmers from coders.
My Rating: ![]()
![]()
![]()
![]()
![]()
Pros
- Covers all the different aspects of programming in a logical way.
- Looks both at the ideal way of doing things as well as the practical limitations that real world situations might apply.
- While there are a few code examples in the book in currently popular languages, the information applies equally to all programming languages and you don't need to know any particular language to follow the techniques described.
- Discusses many different programming styles and techniques and how to apply good coding practices regardless of which you use.
- Each chapter ends with a whole series of questions for you to consider that will help you to work out how best to apply the information in that chapter to your situation.
Cons
- I did find one diagram in the book that just didn't make any sense at all until I finally realised that one of the arrows on the diagram was pointing the wrong way.
Description
- First Edition: 2007
- 580 page paperback
- Published by No Starch press Inc
- ISBN: 1-59327-119-0
- The practice of writing excellent code
- Author Peter Goodliffe
Review
There are two types of programmers in the world - those that do what this book suggests and trainee programmers who haven't finished learning it all yet.
All of the information in the book is useful information that any programmer needs to know regardless of what programming languages that they use. With over 30 years of programming experience myself I can say that there is nothing in the book that I wasn't already at least aware of but it took me a long time to gradually discover all of that information and now here it all is in one well written and entertaining book. Now there is no excuse for a programmer to not know the right way to write programs that will function correctly, interface with other programs the right way, and be easy to maintain.
The author of this book really understands all of the aspects of programming (which of course is a lot more than just writing code). The book covers all of these aspects one at a time in a logical order looking first at how that aspect ought to be handled in an ideal world and then at what compromises that you may decide that you have to make in order to apply it to a given real world situation. Also discussed is how to handle legacy code that wasn't written properly and how to determine when you should or shouldn't rewrite it.
The author's writing style makes the information being presented easy to understand and apply while also making the book one that is interesting to read. There is plenty of humour in the book as well and I laughed a number of times particularly at some of the monkey cartoons used to illustrate the points made by each chapter (a job that they do extremely well).
What are you doing still here reading this review - go get the book and read that instead.



