Every book is the work of a multitude. In writing this one, I have benefitted from the help, advice, and support of many of the most talented people in the Perl community. I would like to express my deepest gratitude:
To Linda Mui, my first editor, for her seemingly limitless patience and continuing faith, which gave me the freedom to eventually find my true subject.
To Nat Torkington, my second editor, for refiring my enthusiasm for writing, and for his extraordinary encouragement, support, and mateship over the past decade.
To Allison Randal and Tatiana Apandi, my third editors, for their grace, composure, understanding, good advice, quiet efficiency, and very practical assistance.
To Sean M. Burke, for his careful technical analysis, invaluable grammatical advice, salient questions, and for an especially brilliant footnote that I sorely wish I could have used.
To Nancy Kotary, for gently improving my writing with her superb copy-editing.
To Larry Wall, for his friendship and wisdom over the past five years, and for teaching me so much in that time, not the least of all: humility.
To Abigail, for bringing a no-nonsense approach to Perl coding and for invaluable advice on many topicsin particular, regular expressions and inside-out objects.
To Nate Bailey, for his unfailing support over the past few years, for helping me craft sentences that make sense the first time, and for his expert second-hand knowledge of sociopathy.
To Hildo Biersma, for his professional perspective on the realities of developing in large team environments, and for considerably more good suggestions than I was able to use in a single book.
To Chris Devers, for consistently better wordings throughout the book, and for saving me from writing an entire extra chapter, when a paragraph turned out to be enough.
To Richard Dice, for marshalling compelling economic arguments to keep the review process on track, and for finding me the perfect business-like operands.
To Stephen Edmonds, for unearthing three very subtle coding errors that would otherwise have passed most annoyingly into print.
To Paul Fenwick, for the much-needed teacher's perspective he brought to the presentation of these ideas, and for duly withholding biscuits when I broke my own guidelines.
To Garrett Goebel, for his extraordinary attention to detail and his remarkable ability to extrapolate from those particulars to excellent general advice.
To Mick Goulish, for enthusiastic encouragement, sound skeptical advice when I was under pressure, and some of the best laughs I've ever had, right when I most needed them.
To Uri Guttman, for seeing things no-one else did, in ways that no-one else could.
To Trey Harris, for so ably representing the expert programmer and thereby inspiring me to find better ways, instead of just easy ways.
To Brand Hilton, for unsurpassed typo correction, his uncanny ability to spot bugs in code samples, and his valiant defence of "unless".
To Steven Lembark, for so many excellent suggestions, and for helping to keep me focused on the needs of real-world developers.
To Andy Lester, for inspiring me with his deep understanding of, and passion for, the best coding practices.
To Greg London, for his insights into the needs of real programmers, and for telling me honestly when the humour didn't work.
To Tim Maher, for his friendship and support over many years, and for occasionally being the essential voice of dissent.
To Bill Odom, for sharing so much of his wisdom and experience, and graciously allowing me to steal so many of his best ideas.
To Jacinta Richardson, for her many excellent suggestions, both grammatical and syntactical, and for her uncompromising opposition to lazy writing.
To Bill Ricker, for his invaluable documenting of guidelines, modules, and versions; his eagle eye for corporate-unfriendly suggestions; and his extraordinary knowledge of computing theory, practice, and history.
To Randal Schwartz, for finding the time to offer feedback on my book despite the heavy demands of concurrently revising two of his own.
To Peter Scott, for sharing his unparalleled experience, knowledge, and wisdom, and for his and Grace's kindness and support in times of sorrow.
To Mike Stok, for his unique perspective on Perl programming, and the many insightful suggestions that flowed from it.
To Tony Stubblebine, for not being afraid to criticize when criticism was warranted, and especially for his sound advice on documentation.
To Andrew Sundstrom, for the unique way he blends the warrior, the philosopher, and the poet in all aspects of his life, including his programming.
To Bennett Todd, whose encouragement and advice I have now relied upon across five years and two books.
To Merijn Broeren, Dave Cross, and Tom Christiansen for their generous offers to help with this book.
To Dave Rolsky, Brian Ingerson, and Eric J. Roode, for being so open to my impertinent suggestions for improving their already excellent modules.
To my fellow Perl Monks: Joe Hourcle, for his detailed and timely help with BBEdit and TextWrangler; John McNamara, Jim Mahoney, Scott Lanning, and Michael Joyce, to whom belongs all credit for the Emacs advice herein; and all the other acolytes, monks, friars, abbots, and saints who helped me put together the editor configuration appendix: artist, barrachois, Fletch, InfiniteLoop, jplindstrom, leriksen, Limbic~Region, runrig, Smylers, and stefp.
To my parents, Sandra and Jim Conway, and my parents-in-law Fred and Corallie Stock, for their unfailing belief in me.
And above all, to my beloved Linda, who is the wellspring of all my inspiration, and the reason for everything I do.