Review on the book "The Art of Unix Programming"
The Art of Unix Programming is written by Eric S. Raymond, published by Addison Wesley Professional, in September 2003.
Raymond is a famous open source advocate. This book is useful for people who are new to Unix to understand its culture, design philosophy and principles. It may also be useful for developers to rehash those time tested design principles to write better code. The author also reasons convincingly why open source is important for the new Unix community.
You will appreciate many of the Unix design principles if you are frustrated by the limitations of certain non-Unix systems or have worked with Unix for some time. For example, if you have done troubleshooting on live production systems, you would definitely appreciate the ability to dig into the running state of the system to understand how it works if the system is designed with transparency in mind. Probably the more experienced you are, the more common ground you will find in this book. The book elucidates these design principles very well.
One criticism of the book is probably that the author uses fetchmail to illustrate many design principles which may not be clear to users who never use fetchmail before. A more popular open source software package might be better.
It is also enlightening to read Rootless Root, The Unix Koans of Master Foo which appears as an Appendix in the book. Here Koan is a term used in Zen Buddhism meaning a short story of question and answer for meditation and spiritual enlightenment.
This book is also available online: http://www.catb.org/~esr/writings/taoup/html/index.html.