3 ms·
Code: The Hidden Language of Computer Hardware And Software by Charles Petzold. I read it in my second year of studying computer-science during the summer brea
by pid0x17 16d ago
Code: The Hidden Language of Computer Hardware And Software by Charles Petzold.
I read it in my second year of studying computer-science during the summer break, and it completely changed how I view computing.
First of all, the contents alone are quite valuable, even though it is an old book, as it basically walks you through building a simple relay computer on paper, with a CPU, RAM, simplified input devices, teaches you Intel 8080 assembly as an example of assembly programming, and then even goes over a simplified BIOS, OS, GPU and higher-level languages at the end, and it does not assume you have any previous knowledge; it starts from the basic physics behind electricity, then goes into boolean algebra, logic gates, etc. It's basically computer-architecture for the layman.
Beyond the content of the book, I think the biggest mark it left on me is that it taught me that there is no magic behind the layers of abstraction, and that breaking problems and concepts down into simpler ones can make what initially seems like a very complex topic into something that someone can easily follow and understand.
After I read the book, a lot of things I had already learnt at university felt like they made more sense, and I then took courses like Computer Architecture and Digital Circuit Design, where I felt a lot more confident than I probably would have, had I not read that book. It definitely colored how I viewed a lot of the courses I took at university after having read it.
In my career as a software developer, I still often think about that book, and I love to learn things by re-inventing the wheel and building simpler versions of complex existing software.