I hated this book. I had no idea it was possible to screw up a story involving zombies. Apparently it can be done as long as you create cookie-cutter,...moreI hated this book. I had no idea it was possible to screw up a story involving zombies. Apparently it can be done as long as you create cookie-cutter, excessively unlikeable, and one-dimensional characters. Add in a dash of one-sided social politics. Keep from having much of anything interesting involving zombies actually occur so that the reader cares. That's my opinion, anyway.(less)
The beautiful thing about a book like The Pragmatic Programmer is that it sparks ideas when you read it. Can you do something more efficiently? Can yo...moreThe beautiful thing about a book like The Pragmatic Programmer is that it sparks ideas when you read it. Can you do something more efficiently? Can you do it more elegantly? Can you make the computer do the work instead?
I like to think that I already ask myself those questions all the time. Nevertheless, I found myself reading a page or two and then having to stop because I was having a great idea and needed to write it down. I filled six sheets of letter-size paper with dense, cryptic notes. That's six pages of Great Ideas about software. Many of them had absolutely nothing to do with whatever I was reading in The Pragmatic Programmer at the time. The ideas bubbled up from the bottom of my brain like swamp gas.
The experience was as effervescent as it sounds. And completely invigorating. I ended the day with a finished book, those six pages of notes, and a whole new enthusiasm for my software projects. I should read these non-language-specific programming books more often!
I've loved the "broken windows" theory from the Software Entropy section in the first chapter since I read the excerpt online years ago. I've still never heard a better explanation of what happens when code quality and clarity starts to deteriorate. The message is clear: don't let problematic code sit and rot. It's not going to get better on its own.
I love the emphasis on DRY ("Don't Repeat Yourself") and the use of simple, elegant tools like domain-specific languages and plain text.
Another real stand-out for me was the Tracer Bullets concept from the second chapter. It's a wonderfully visual metaphor for building enough of a software system so that you can demonstrate its functionality completely from one end to the other (i.e. multiple pieces of a system all working together, but supporting a minimal number of features). What I love most about a tracer bullet system: you will probably end up with something you can demonstrate to non-programmers! In my experience, that's a huge benefit.
There's a large amount of ground covered and nothing is covered in depth. Which is great. I appreciate the low page count and Hunt and Thomas supply examples to make each concept clear. It's an information-rich and idea-rich book. You could do a lot worse than to simply follow all of its avenues and master them. Much, much worse. (less)
This was my second reading of the first and second volumes of this series. I highly recommend this book, and the whole series to anyone interested in...moreThis was my second reading of the first and second volumes of this series. I highly recommend this book, and the whole series to anyone interested in learning Go. For a game with so few actual rules, it can be challenging to understand how to actually play. Not only will you learn to play the game, you'll start to develop some neat tactics. The other volumes are equally good, with increasingly advanced strategies.(less)
Shimomura has a huge ego. It's plastered all over this book. You will never again see the term "ankle-biter" this many times in print (unless somebody...moreShimomura has a huge ego. It's plastered all over this book. You will never again see the term "ankle-biter" this many times in print (unless somebody publishes something called "Ankle-Bite!: An Ankle-Biter's Tale of Ankle-Biting").
If anyone reads this book, please count the number of times "ankle-biter" is used and give us the tally. Inquiring minds want to know!(less)