Editors often get short shrift in a book’s acknowledgments, sometimes receiving
only a token “. . . and I also thank my editor, who surely must have been doing
something while I was slaving over the manuscript.” Debbie Lafferty, my editor, is
responsible for the existence of this book. When I came to her with a mediocre
proposal for a mediocre introductory programming text, she instead suggested
expanding a section on gotchas into a book. I refused. She persisted. She won.
Fortunately, Debbie is gracious in victory, and she has yet to utter an editorial
“We told you so.” Additionally, she surely must have been doing something while
I slaved over the manuscript.
I would also like to thank the reviewers who lent their time and expertise to help
make this a better book. Reviewing an unpolished manuscript is a time-consuming,

often tedious, sometimes irritating, and nearly thankless task of professional cour-
tesy (see Gotcha #12), and the reviewers’ insightful and incisive comments were

much appreciated. Steve Clamage, Thomas Gschwind, Brian Kernighan, Patrick

McKillen, Jeffrey Oldham, Dan Saks, Matthew Wilson, and Leor Zolman con-
tributed advice on technical issues and social propriety, corrections, code snippets,

and an occasional snide remark.
Leor started review long before the manuscript was written, by sending me
barbed comments on Web postings that were early versions of some of the
gotchas appearing in this book. Sarah Hewins, my best friend and severest critic,
earned both titles while reviewing various versions of the manuscript. David R.
Dewhurst frequently put the entire project into perspective. Greg Comeau lent
use of his marvelously standard C++ compiler for checking the code.