This is probably the book that took me most time to finish in all my life! I started reading this in February and reached the final page in mid August, and this is not because it is boring or tedious in any way (in fact, I found it extremely interesting), but because the information density per page is very high.
The most remarkable thing about this book is that it is loaded with code for real tools not much different than those present in modern day unix systems. It includes fairly complete implementations for grep, roff, ed, m4 and some other smaller tools.
In summary, this is a very well written book, showing *lots* of code, and with a lot of practical advice on practical software development.