If your nose is a bit sensitive, the physical book might smell of chemicals, or at least the original copy that I received did. I was able to get a less strongly smelling copy from the publisher, which helped a lot. The hardcover edition is fat and pricey but worth it - looking at the sample code from the kindle version it came with it was kind of hard to keep track of what's going on while flipping through screens.
Also - I was confused on this point for a little bit - if you're looking for coverage of user space processes like systemd or command-line filters like less or grep, this is not the book for you - it covers only the underlying kernel system calls and C API which those filters are written with.
That said, I'm learning a lot about Linux through this book - and C as well. I learned C++ before I learned Linux, in some programming class where we used it to build a simple calculator and similar tasks. Learning C a bit later was a pain because it seemed so archaic and there was no proper motivation. Reading this book, though, made me realize how C actually makes a lot of sense in its proper context as a tool primarily for systems programming, for which it was created.
It's still slow and dense to read and digest (I still have a long ways to go with it), but I don't think there's any way around that - there's a lot of subtle and good information here, and it builds up the foundations progressively.
Be sure to get a copy if you are a serious Linux hacker.
2017: The Year of Golang
3 months ago