Why am I passionate about this?
I love computers, and especially computer systems. I’m interested in how different pieces of hardware and software, like processors, operating systems, compilers, and linkers, work together to get things done. Early in my career, as a software security tester, I studied how different components interacted to find vulnerabilities. Now that I work on compilers, I focus on the systems that transform source code into a running program. I’m also interested in how computer systems are shaped by the people who build and use them—I believe that creating safer, more reliable software is a social problem as much as a technical one.
Nora's book list on systems and system failures for programmers
Why did Nora love this book?
Before I read this book, I knew a bunch of facts about the different pieces of computer systems. After I read it, I understood how those pieces fit together. Building all those pieces myself, starting from the simplest logic gates and working my way up, made some fundamental concepts finally click—like how a processor decodes an instruction.
I especially loved the book’s hands-on structure: each chapter is a project where you get a specification and test suite for the component you need to build, but you have to figure out exactly how to build it for yourself. Completing the projects often felt like solving a fun puzzle, and it made the concepts stick in a way that just reading about them wouldn’t have.
1 author picked The Elements of Computing Systems as one of their favorite books, and they share why you should read it.
A textbook with a hands-on approach that leads students through the gradual construction of a complete and working computer system including the hardware platform and the software hierarchy.
In the early days of computer science, the interactions of hardware, software, compilers, and operating system were simple enough to allow students to see an overall picture of how computers worked. With the increasing complexity of computer technology and the resulting specialization of knowledge, such clarity is often lost. Unlike other texts that cover only one aspect of the field, The Elements of Computing Systems gives students an integrated and rigorous picture…
- Coming soon!