After 180 pages or so, I mostly skimmed this book.
There are a lot of problems here that I will try putting into words. From the very start, the reading experience is very jarring. Now, I have a lot of software engineering experience, and I believe it is not down to the technical complexity. I found that the writing style of the book contributes to this feeling. Some of the sentences are so long that, by the time you reach the 3rd line in the sentence, you are already lost. I found myself reading these kind of sentences 3-4 times just to make sense of them. Considering, it is not a textbook, I don't understand the need for that. The vocabulary adds to the feeling, words like surcease make rather unwelcome unappearance.
However, I feel the major cause is the organization. The book presents a lot of case studies for each of the Unix principles it presents. So in a chapter, you might come across 5-10 shorts studies (spanning 1-2 pages, sometimes shorter). And therein lies the problem. Jumping across so many different types of concepts which can't go into required detail would always be jarring. Perhaps, it would have been better to present an example of a study end to end like fetchmail, and then discuss all the unix principles it embodies. It would have certainly made for a more compelling study, atleast for me. It would have led to continuity of the topic.
Another problem with the book would always be that it is quite old, and some obscure technologies like CORBA, XML-RPC are legacy or mostly irrelevant.
I find it hard to understand what kind of audience this book caters to. To Unix fanboys maybe? In terms of good programming practices, there are focused, well-written books, same goes for system design. Is it a book or is it more of a dissertation on the Unix principles and how they have been applied successfully?
As someone else mentioned in the reviews, reading the chapter 1 might be enough, which is quite good. I feel rather generous giving 2 stars here, on the basis of how it stands together as a book.