I did 11 of the 12 chapters of this. Each chapter is has a practical exercise. You do need some programming experience. Really teaches you how a computer works buy building on in a high level description language (processor, memory etc all from nand gates). Then you build an assembler for it. Then a compiler.
Most of the comments here suggest excellent resources ("Code", "NAND to Tetris", etc) to learn about how computing works on a fundamental level. Those won't be immediately useful to someone who wants to understand how "monitor, hard drive, RAM, CPU" all fit together in their laptop, or if they want to build a computer out of parts. If that's the goal, I recommend the following:
1. "How Computers Work" by Ron White - it looks like a children's book, but it provides a lot of good information about components of modern digital technology. I personally learned quite a lot from this book. https://www.amazon.com/How-Computers-Work-Evolution-Technolo...
2. A+ Certification Guide - provides practical, hands-on info on how a modern Windows PC operates, from both hardware and software perspectives. It's a long book geared towards someone who will build and repair computers professionally, but you don't have to read it cover to cover. https://www.amazon.com/CompTIA-Certification-Eleventh-220-11...
(my background: phd in computer engineering and lots of real world experience building and repairing computers and computer networks).
I highly recommend the course “Computer, Enhance!” by Casey Muratori on substack for those interested in how CPUs / assembly work. You get to decode byte code, simulate instructions, learn how the stack works, etc. It is really well-paced, gives you plenty of space to figure things out your own way (with reference material if you need it), and helped me get several “aha!” moments that solidified how things work.