Book Review: Code

Code, though you may have understandably guessed otherwise, has nothing to do with dead Italians painting secret messages about the bedroom habits of men with a specific gravity less than one. You may have followed with the, also incorrect, guess Code is about the proper tab-to-space ratio and usage of ancient Hungarian symbology for variable notation to gain Tibetan monk-like ascendancy into syntaxual samurai enlightenment. You are warmer though, there is enlightenment in the pages Code for this book covers what no other computer book has before it: why.

There are many how books. How to program this, how to use this, and how this works. How something works and why something works are two different and separate topics. Many people, I dare say most, are only concerned with the how. There is nothing wrong with this, many people don't have a desire to know more than what is needed to do a task. If you were a landscape designer, you would rather learn the why of soil composition than the dull world of logic gates. If you, like me, are a programmer, a system administrator, even - at the risk of being blunt - a hacker, that logic gate is the most fascinating sight to behold since man looked upon a loaf of baked dough while holding a serrated edge.

Code takes you from ground level; basics of electricity, and builds bit by bit (sometimes by byte) until you have designed your very first CPU. At every step, Code asks the why along with showing how. Why did computer designers choose a binary system that is so foreign to apes and men of ten fingers? Why is compiling code for an Apple system and an IBM PC such an obstacle? Why did Braille succeed where many other codes for the blind failed?

That last question hints at the importance of understanding the why when working with computers at the level hackers do. Louis Braille was blind, all the other codes were created by sighted people. One sighted tends to think on the problem of reading when blind in terms of the letter they are used to seeing. It takes effort for a sighted person to see as a blind person - in the same way it takes a human effort to think as a computer. A computer can multiply by a power of two quickly by shifting the number to the left one place for each power - a human (like you) will reread that last statement and still be thinking, "wha..?"

Code has a logical arrangement of concepts instead of the typcial historical presentation, but does fill you in on who and when the concept was discovered. Along with a wonderful amount of history tidbits to impress water cooler peers, Code is well written almost to the point of fluid prose. This comes as no surprise; Charles Petzold, author of Code, has become one of the best writers in computer programming of our time - mostly because he didn't want to write computer programming books. He wanted to write prose.

I regard Code as one of two must reads for any hacker seeking knowledge of his craft beyond syntax (the other is Cathedral and the Bazaar). I also think it has value outside of those in the software world, to anyone curious why something that can only understand on and off, one and zero, can do so much. Who knows, even a landscape designer may see grass differently after reading Code - well, maybe that's a stretch.

Posted By Mike On Thursday, June 01, 2006
Filed under review petzold book | Comments (1)

Submit this story to DotNetKicks   

Perry - Tuesday, December 05, 2006 5:24:39 PM

Thanks for the recommendation, Mike. I've just added it to my wish list.

Leave a comment

All comments are moderated manually.

Your name:

Your email (not shown):
Will display your Gravatar image.

Your website (optional):

About Michael

Michael C. Neel, born 1976 in Houston, TX and now live in Knoxvile, TN. Software developer, currently .Net focused. Board member of ETNUG and organizes CodeStock, East Tennessee's annual developers conference. .Net speaker, a Microsoft ASP.NET MVP and ASPInsider. Co-Founder of FuncWorks, LLC and GameMarx.

Proud father of two amazing girls, Rachel and Hannah, and loving husband to Cicelie who inflates and pops his ego as necessary.

 Subscribe to |  Comments

Follow me on Twitter | Contact Me

Related Posts

Book Review: Ignore Everybody by Hugh MacLeod

For the impatient, or those who trust my word completely, I highly recommend reading Ignore Everybody by Hugh MacLeod. Still reading? Okay – Hugh MacLeod ... Read more

Book Review: The Big Idea by Donny Deutsch

I’m going to keep this review of The Big Idea by Donny Deutsch and Catherine Whitney very short.  Unlike this book, I don’t want my post to be a waste ... Read more

Review: The Annotated Turing by Charles Petzold

Let me start by saying while reading The Annotated Turing: A Guided Tour through Alan Turing's Historic Paper on Computability and the Turing Machine I ... Read more

Developer's Non-Development Book List

I've been slack lately on posting, mostly because I'm still running around speaking and working on the details of CodeStock.  So I figure a "must ... Read more

Thoughts on Kindle, the Amazon eBook Reader

Because I've been lax on posting lately, I'm going to re-purpose a comment I left on Charles Petzold's blog. In reply to Kindle Me Elmo: I am not impressed.  ... Read more

XNA 3D Primer by Michael C. Neel

XNA 3D Primer by Michael C. Neel
Buy Now: [ Amazon ] [ Wrox ]



ASPInsiders Member

ETNUG Member