Goodreads helps you keep track of books you want to read.
Start by marking “Code: The Hidden Language of Computer Hardware and Software” as Want to Read:
Code: The Hidden Language of Computer Hardware and Software
Enlarge cover
Rate this book
Clear rating
Open Preview

Code: The Hidden Language of Computer Hardware and Software

4.39  ·  Rating details ·  5,287 ratings  ·  427 reviews
What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries.

Using
...more
Kindle Edition, 400 pages
Published (first published September 29th 1999)
More Details... edit details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Code, please sign up.
Popular Answered Questions
Matthew Hayes This book pretty quickly gets into electricity and basic circuits.
As you get further into the book, it gets very technical, to the point where you are…more
This book pretty quickly gets into electricity and basic circuits.
As you get further into the book, it gets very technical, to the point where you are actually building a computer and programming it.

There isn't any math, but definitely electronics and computer science.

I would not recommend this if you "in general have no inclination towards the sciences".(less)
Jan Martinek The use of an old Intel 8080 processor may seem outdated, but it just follows the logic of the book — it grows knowledge from bulbs, switches and…moreThe use of an old Intel 8080 processor may seem outdated, but it just follows the logic of the book — it grows knowledge from bulbs, switches and relays into more complex structures. Those may be built from relays or transistors and it would not change the underlying logic (author even mentions that it's just a matter of feasibility of its construction).

Hence I don't think that this book can be considered in any way outdated — even the final chapters that talk about PCs in late 90s are written in a general fashion and do age quite well.(less)

Community Reviews

Showing 1-30
4.39  · 
Rating details
 ·  5,287 ratings  ·  427 reviews


Filter
 | 
Sort order
Craig
Aug 14, 2011 rated it it was amazing  ·  review of another edition
I'll be honest. I only read this book because it was quoted as a must read by Joel Spolsky on a stackexchange answer about how to go about learning programming (and finding out if you want/should be a programmer).

I was a little hesitant due to the year of release. Being at least some 11 years old that's a lot of time in the tech world. Ultimately though that doesn't matter. I defy any developer/programmer/system builder to read this book and not blitz through it lapping it up. Yes if you've done
...more
Naessens
My opinion on this book is really divided : on the one hand I enjoy some chapters, on the other hand I hardly managed to restrain myself from flipping through other chapters. Basically, this book designs and builds a basic computer by introducing in each chapter a concept or a technology used inside computers. It was written from 1987 to 1999, consequently one shouldn't expect any description of newest technologies.

It starts really slowly with the first chapters, but then things get more and mor
...more
Cardinal Biggles
Raise your hand if you think metaphors and analogies should be used sparingly. I'll raise my hand with you. This book is for us.

After reading this book, I can see behind the pixels on my computer screen. I know what I'm really looking at. So many layers of abstraction are removed by learning about how logic gates can be arranged as processors and RAM, how code is simply a representation of those microscopic switches being flipped, and how pixels are simply a graphical interpretation of the state
...more
Mike
Dec 03, 2009 rated it it was amazing  ·  review of another edition
Recommends it for: nerds, geeks, smarty pants
Shelves: development
Electricity is like nothing else in this universe, and we must confront it on it's own terms. That sentence, casually buried near the beginning of the book, exemplifies the engineer's muse: a striving to become aware of the inhuman, how it operates, and to find means of creating a socket for human enterprise, something to extend the fallible chassis of our flesh.

The first two-thirds or so of this book follows a double track. One track covers the ways in which meaning may be encoded into messages
...more
Alex Palcuie
Apr 06, 2013 rated it it was amazing  ·  review of another edition
Shelves: favorites
If you work with computers and didn't read this book, you are lame.
Jan Martinek
Aug 08, 2016 rated it it was amazing  ·  review of another edition

What a ride! A book about computers “without pictures of trains carrying a cargo of zeroes and ones” — the absolute no-nonsense book on the internals of the computer. From circuits with a battery, switch and bulb to logic gates to a thorough description of the Intel 8080. Great way to fill blanks in my computer knowledge.

The book takes the approach of constructing the computer “on the paper and in our minds” — that's great when you're at least a little familiar with the topic, maybe not so when

...more
Lynn
Feb 28, 2012 rated it really liked it  ·  review of another edition
I have been an IT professional for 20 years, but I never knew what the switches on the front panel of the Altar computer were for. I do now.

In fact, because of this book, I know many things about how a computer really works that I never did before. I think this book is great for anyone, except Electrical Engineers who would be bored. Having some background in computers probably makes this book easier to get through, but Petzold assumes nothing and starts from scratch. He does a good job of makin
...more
Igor Ljubuncic
Jun 28, 2018 rated it it was amazing  ·  review of another edition
Shelves: software
This is a great book. Surprisingly interesting.

While the subject matter is not a new thing to me - far from it - the way the author goes about telling the story of how modern computers came to life is exciting, engaging and fun. He starts with morse and braille, talks about the principles of mathematics and information, explains the critical concept of switches, and finally moves into the world of circuit boards and binary data, cultimating in ALU. After that, he discusses the idea of analytical
...more
Yevgeniy Brikman
Every single person in tech should read this book. Or if you're just interested in tech. Or if you just want a basic appreciation of one of the most important technologies in human history—the computer.

This book contains the best, most accessible explanation I've seen of how computers work, from hardware to software. The author manages to cover a huge range of topics—electricity, circuits, relays, binary, logic, gates, microprocessors, code, and much more—while doing a remarkable job of gradual
...more
Jule
Mar 05, 2009 rated it it was amazing  ·  review of another edition
I LOVE this book. I regard myself an innocent computer illiterate. And Petzold helps me to walk inside an electrical circuit, a telephone, a telegraph, an adding machine, a computer, and to understand the basics behind the design, of what is going on inside. I start getting the math, the logic behind all this technology that has become pretty much the center of my life today. And I should understand the logic behind the center of my life, right?

What is so good about this book: it is written in
...more
Damon
Aug 01, 2010 rated it really liked it  ·  review of another edition
This book basicaly tries to take you from the very basics of how to encode information, such as how binary is used to represent complex information, to understanding how a computer uses information like this to perform intricate operations. The route between those two points is the interesting part, and there was some parts that I foudn really illuminating and important. For example, I didn't understand hexadecimal numbers (or indeed what base 4, base 8, etc) numbers meant before I read this boo ...more
Baq
Apr 04, 2017 rated it it was amazing  ·  review of another edition
Shelves: byte-me
Wow. I wish I had had this book back when I was taking my first Computer Architecture course in college! It carries you along from the very fundamentals of both codes (like braille) and electric circuits in the telegraph days all the way to the web in a way that even a layperson could understand, with plenty of verbal and diagrammatic explanation. It does at points get pretty deep into the weeds but I really appreciated the author's efforts to provide such an exhaustive dive into how computers w ...more
Rik Eberhardt
Jun 14, 2008 rated it really liked it  ·  review of another edition
In brief: be prepared to skim through at least 25% of this book! If I had this book in a seminar freshman year, I might have completed the Computer Science program. In a very fun manner, this book presents 3 years of introductory CS curricula: discrete structures, algorithms, logic gates, ... After reading this during two cross-country flights, I better understand (and remember) classes I took 10 years ago. Almost makes me want to try again (*almost*).
Carlos Martinez
Mar 06, 2019 rated it it was amazing  ·  review of another edition
Such a fun and interesting book. Petzold goes back to the very basics to explain how to build a computer (of sorts) from the ground up. First he explains binary (via morse code and Braille), then he introduces relays and switches, then gates and Boolean logic, and before you know it you're building an electronic counting machine. He continues with a potted history of transistors, microchips, RAM, ROM, character encoding and all sorts of other fun stuff.

I skipped over some pages, because I don't
...more
Mark Seemann
Jun 28, 2018 rated it really liked it  ·  review of another edition
Shelves: software
Since I loved Charles Petzold's The Annotated Turing: A Guided Tour Through Alan Turing's Historic Paper on Computability and the Turing Machine, I wondered if he'd written other books about the foundations of computer science. Code seemed like an obvious candidate.

This book explains, in as much details as you could possibly hope, and then some, how a computer works.

Since I've been a professional software developer for about two decades, the title of the book, Code, gave me an impression that it
...more
Geoff Rich
I really enjoyed most of this book. The slow unfolding of how computers are built actually work was extremely fascinating - from simple lightbulb circuits to logic gates to RAM to keyboards and monitors. Unfortunately, parts of this book seem quite dated (most anything discussing "contemporary" technology, i.e. 1990s computers) and the final chapter on the graphical revolution goes through way too much, way too fast to be of any use. A few chapters were tempting to skim For example, Petzold incl ...more
Trevan Hetzel
Jan 13, 2013 rated it it was amazing  ·  review of another edition
With a desire to learn how the high level code (HTML, CSS, JavaScript, etc.) I write on a daily basis actually makes its way through the magical land that is a computer and returns pleasantries to a human being behind the screen, I sat down with this "Code" book. The book is very intriguing from the start, beginning with the earliest forms of code (Morse, Braille, etc.). Petzold spends a long time laying down the basic blocks of electrical engineering before progressing to how bits flow through ...more
Alex Telfar
Mar 23, 2018 rated it it was amazing  ·  review of another edition
Shelves: not-at-library
Very close to my ideal book. Starts from understandable foundations and builds from there. Charles doesnt try to explain through high level metaphors (that do a poor job of capturing the truth -- I am frustrated after picking up another apparently interesting physics book only to find it contains no math), rather, he slowly builds on simple examples. And while it does get pretty complex, Charles doesnt avoid it. !!!

For a while I have been frustrated about my understanding of computers. I underst
...more
K.C.
Jun 06, 2011 rated it really liked it  ·  review of another edition
This was a wonderful non-fiction read, especially the first 15 or so chapters. Chapter 17 ("Automation"), however, was where I began to feel a bit in over my head. While that chapter was fairly thorough, when I got to later chapters and realized I couldn't quite grok what was going on in these chips, it was hard for me to tell whether I was holding myself back by not fully understanding the concepts of Chapter 17, or if Petzold was simply glossing over some of the details that might have clued m ...more
Travis Johnson
Sep 10, 2009 rated it it was amazing  ·  review of another edition
I really, really truly love this book. The beginning is slightly slow, but after the 1/3 mark or so, I couldn't put it down(literally. hello, 5am.)

I probably learned more about architecture from this book than the quarter in my Architecture & OS class at university.
Randall Hunt
Feb 22, 2011 rated it it was amazing  ·  review of another edition
Recommends it for: CS Majors, Everyone
Shelves: all-time-greats
Definitely one of the greats. If not already, it soon will be, a staple of computer science literature. It's both a narrative history of Computer Science and a brilliant introduction to systems and programming. This book should be a pre-requisite for introductory CS classes.
Angelos
Aug 05, 2017 rated it really liked it  ·  review of another edition
A very nice introduction into what makes computers tick. It's detailed enough to give you a sense on how things work, yet not overly complicated to intimidate you. I really liked the gradual introduction to concepts of increasing complexity where each builds on the one before it. I feel like I've learned a lot by reading this book, especially since we had no relevant computer architecture courses in college.

That said, I have a couple of complaints.

One is that I feel the author covers the initial
...more
Ieva Gr
Dec 31, 2018 rated it really liked it
Shelves: technical
The book reminds me of the courses that students usually have during the first year of the University. It provides a general overview of how computers function. Starting from workings of an electrical circuit and building up to various logical elements with gradually increasing complexity. It also discusses some relevant historical moments as a typical professor in a typical lecture would do and ends with a broad overview of personal computers as they were in 1999.

The summary on the back of the
...more
Jakub
Apr 02, 2018 rated it it was amazing  ·  review of another edition
Shelves: programming
I wish I discovered this book earlier. It is a great introduction to computation and I do recommend it to everybody that would like to understand what is going on inside their laptops or phones.

I found the "big picture" to "the actual details" ratio very suitable for a casual read. There are some parts that require more attention though - especially when the author explains the details of a data flow in the computer or the way Intel 8080 chip works. Nevertheless that's an inherent characteristic
...more
Eugene
Jan 22, 2019 rated it it was amazing  ·  review of another edition
Хорошее введение в схемотехнику и вообще работу компьютеров.
Alb85
Ottimo libro che ha l'ambizioso obiettivo di spiegare come è fatto un computer, dalla A alla Z. Nella prima metà vengono spiegati dei concetti specifici in modo dettagliato e chiaro. Nella seconda metà del libro la complessità dei concetti aumenta ed ovviamente diventa difficile descriverli con completezza in poche pagine. L'autore fa di tutto per facilitare la comprensione del testo, raccontando per esempio aneddoti su come si è evoluto il computer, inserendo un sacco di immagini e tabelle, ed ...more
Nick
Jan 24, 2019 rated it really liked it  ·  review of another edition
When I started reading this book I had an inkling that this book is suitable for nerds/technical people but after reading the first few chapters I thought that probably I was wrong. As it turned out in the end, it's at best a mixture of two with a heavy hilt towards first.

The book explains in detail the working of a computer system along with the history of its progress over the year. It starts with a very innocuous example of communication between two close by living friend using just a torch.
...more
Gustav Tonér
Sep 23, 2018 rated it it was amazing  ·  review of another edition
Basically everything you need to build a modern computer, both hardware and software, from scratch. Perfect read after the apocalypse. Too few people grasp these relatively easy concepts that power modern society through the internet and the cell phones in our pockets. This book summarizes computer technology in a clear and concise way.
Scott Johnson
This, finally, was what I was looking for in my quest to understand computers.

We start with some really boring, basic things about the most elementary circuits. It gets a pass because it's necessary if you're coming in blind, but I've taken courses in things like the physics of transistors, so I wasn't a fan personally. The same goes for assorted later sections on number systems (already overly familiar with Binary and Hex, thanks).

Then we move into how you take very simple components and constr
...more
Simmoril
Jul 25, 2010 rated it really liked it  ·  review of another edition
One of the biggest difficulties that is unique to Computer Science is this idea of 'layers of abstraction' - interfaces created to help hide the complexity of the underlying layer. While this can be a boon when developing, it becomes a problem when those lower layers start misbehaving, and you don't know why. Or, at a more basic level, these layers of abstraction can make it hard to understand why things are the way that they are (like why computers don't count in base 10, or why I can't run Uni ...more
« previous 1 3 4 5 6 7 8 9 next »
There are no discussion topics on this book yet. Be the first to start one »
  • The Little Schemer
  • The Elements of Computing Systems: Building a Modern Computer from First Principles
  • Programming Pearls
  • Hacker's Delight
  • The Practice of Programming (Addison-Wesley Professional Computing Series)
  • Advanced Programming in the UNIX Environment
  • Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
  • The Art of UNIX Programming
  • The Architecture of Open Source Applications
  • Elements of Programming
  • Concepts, Techniques, and Models of Computer Programming
  • On Lisp: Advanced Techniques for Common Lisp
  • A Discipline of Programming
  • Write Great Code: Volume 1: Understanding the Machine
  • Computer Systems: A Programmer's Perspective
  • 97 Things Every Programmer Should Know: Collective Wisdom from the Experts
  • Expert C Programming: Deep C Secrets
  • Beautiful Code: Leading Programmers Explain How They Think

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »
73 followers
Charles Petzold has been writing about programming for Windows-based operating systems for 24 years. A Microsoft MVP for Client Application Development and a Windows Pioneer Award winner, Petzold is author of the classic Programming Windows, currently in its sixth edition and one of the best-known programming books of all time; the widely acclaimed Code: The Hidden Language of Computer Hardware an ...more
No trivia or quizzes yet. Add some now »
“Code is not like other how-computers-work books. It doesn't have big color illustrations of disk drives with arrows showing how the data sweeps into the computer. Code has no drawings of trains carrying a cargo of zeros and ones. Metaphors and similes are wonderful literary devices but they do nothing but obscure the beauty of technology.” 10 likes
“In 1948, while working for Bell Telephone Laboratories, he published a paper in the Bell System Technical Journal entitled "A Mathematical Theory of Communication" that not only introduced the word bit in print but established a field of study today known as information theory. Information theory is concerned with transmitting digital information in the presence of noise (which usually prevents all the information from getting through) and how to compensate for that. In 1949, he wrote the first article about programming a computer to play chess, and in 1952 he designed a mechanical mouse controlled by relays that could learn its way around a maze. Shannon was also well known at Bell Labs for riding a unicycle and juggling simultaneously.” 3 likes
More quotes…