This is a marvelous book for anyone starting a study of computers. Or just starting a job in computers. Or even well down the path if you feel you don't have a full grasp of the underpinnings of your profession. Yeah, I'm looking at you, Software Developer, who only knows software. I've worked with many a folk with excellent software engineering skills who never even thought about what's under the hood. This book is for you too!And what an ambitious book it is! Starting with Boolean logic it builds a hardware platform that mirrors what you'll see in real life. You could probably cast that design in silicon and add a few peripherals and have a real live computer. Then it moves onto an introduction to programming and what goes into building assemblers and compilers. Kudos to the author for building a virtual machine to run that stuff on! Then it moves into building a basic operating system, with just the kinds of things you'd expect in a real, albeit simple, OS.When I say "it builds" I should say "you build". The whole point of the book (and the course available both free online and in many universities) is to have you get your hands dirty. *You* will create the logic circuits. You will test them. You will write the assembler and compiler. You will write the OS. Man, I would have loved this course way back when I was in school.Also kudos to the authors for skipping over all the bugs and problems. They assume, for example, no syntax errors in your code. Realistic? No way! But seeing that they provide you with error free tests that's a plus and not a negative. Why mess up clear and concise descriptions with the Real World, eh? There's plenty of that down the road!There are of course some nits to pick. Some axes to grind. But, to paraphrase Dr. Frank-N-Furter from the Rocky Horror Picture Show, they didn't build this book for me. I've been noodling around with real computers since 1970 or so. I've studied this stuff for both fun and practicality. For me this was a great nostalgic trip down memory lane. It brought to mind all the classes I took, all the books I read, all the computers I've built, all the operating systems I've hacked, all the programming languages and techniques I've acquired over the years. And even so I found it a great read. (caveat: I did not do any of the coursework. For me it was not necessary and I have plenty of other projects to work on)So, yeah, get the book. Find the course. Do all the work. Unless you're an old hand like me (and I don't know many old hands quite like me) this book will enrich your journey thru all things computing.