Many years ago when I was a student at the Theoretical Physics department of Odessa University, USSR, I regularly both praised and cursed Introduction to the Theory of Quantum Fields by N. N. Bogolyubov and D. V. Shirkov. This was a large volume (over five hundred pages) covering many topics not described anywhere else. It was one of the most essential books for students at that time. On the other hand, it was plagued by typos, misspellings and outright errors. You could not just take a formula from this book and apply it for your work. You needed to find a pencil, a thick stack of blank sheets and follow the derivation, correcting authors’ mistakes and getting the right answer after much toil and sweat. According to an urban legend, when the authors taught the course on Quantum Fields, every student was required to present a newly found error in the textbook to get a passing grade—a Soviet variation of the famous DEK’s checks.
I recalled this experience when I’ve read the new book by Herbert Voß. The book describes PSTricks—an immensely capable system of graphics combining the power of TeX and PostScript. While many people nowadays use TikZ (an alternative system), PSTricks remains the strongest one, in my opinion. The beautiful examples throughout the book and on the PSTricks home page (http://tug.org/PSTricks/main.cgi/) demonstrate the vast possibilities of this system. Today PSTricks can be easily used to produce PDF files, which used to be one of the most important advantages of TikZ.
Unfortunately, the official manual of PSTricks is rather old, and documentation for many important parts of the system is dispersed among multiple guides for individual packages. Moreover, some of the documentation remains available only in French or German, which is frustrating for many users.
This book strives to be a comprehensive guide to the complex world of PSTricks. The author describes in detail the base system and spends some time on the contributed packages, in a style resembling the LaTeX Companion series of books. For some packages, such as pst-geo, this book provides English documentation for the first time ever (after the time spent with pst-geo I feel I almost can read French). This book will be useful for both novices and experts. Herbert Voß is the leading developer of PSTricks, and his knowledge of the system is unsurpassed. I am an old user of PSTricks (full disclosure: the book mentions a contributed package co-authored by me), but even for me some of the chapters were eye-openers, like the very thorough description of three-dimensional plotting, or the detailed discussion of pscustom objects.
PSTricks, despite its long history, is still being actively developed, so the information in the printed book quickly becomes obsolete (as mentioned above, Herbert himself contributes to the obsolescence of his manual). At the moment I am writing this review, the PSTricks web site announces several updates made just two days ago. Nevertheless a book like this is important: it serves as a compass in the ocean of documentation. In many cases even the fact that a package solving some problem exists can be pivotal. Thus buying this book is a good investment for anybody working with PSTricks.
Unfortunately the comprehensiveness and indispensability are not the only common features between Graphics and PostScript for TeX and LaTeX and Introduction to the Theory of Quantum Fields. Like the latter book, the former has too many typos for the user’s comfort. Typos in a mathematical formula are rather nasty; typos in a program code can also be very bad. I started to list the typos for this review, but soon found out there were just too many of them in the book. There was an effort to crowd-source the proofreading of the manuscript: the volunteers from the pstricks mailing list got a chapter each to find the typos (another full disclosure: I worked on proofreading Appendix A), but this obviously did not work as well as a professional copy editor would. Even the book index has problems: on page 886 LaTeX packages are indexed under “Pakete”.
In many cases the language of the book might be improved, and sometimes I could not figure out the meaning of the author’s text.
The style of the book is uneven. Well written chapters coexist with somewhat haphazard texts. Sometimes the commands are used in the examples, but explained only several pages later, if ever. For example, the code on page 174 uses \pst@@@vlabel and \pst@@@hlabel macros which are not explained anywhere in the text. The book is illustrated by extensive examples. Sometimes the code for these examples is printed in the book; sometimes the reader is referred to the web site. The same can be said about the typographic style of the book: some chapters use marginal notes, some not. Some use “dangerous bend” symbols, some not. This might be expected in a collection of chapters by different authors, but a monograph should have some stylistic uniformity.
The book could be improved by a chapter introducing PostScript language for the beginners. The book does include a list of PostScript commands in Appendix B—a useful resource but by no means suitable as the first reading about the subject. The knowledge of PostScript is not necessary for the basic usage of PSTricks, but is helpful for the advanced tricks. Appendix D on PDF would probably be better as a chapter—with the extended discussion of transparency and other PDF-related features.
There are probably many other improvements that could be made to this book.
The urban legend mentioned in the beginning of this review says that at some point Bogolyubov and Shirkov collected the writeups of their students and used them for the corrected edition of their book. I do not know whether this is true. However, the fourth Russian edition on my shelf today has many fewer typos and mistakes than the early ones.
This book by Herbert Voß has had five editions in German. This is the first English one. I wish the author would make a new edition correcting the problems I’ve described. However, even now this is the most definitive English book on PSTricks—albeit very frustrating at times.