Acknowledgments
Writing a book started out fun, but it
soon became far more work than I imagined. My wife, Irina, and
my children, Naomi, Rebecca and Menna were very patient with
me when I locked myself in the study day after day, night
after night. But my children have asked
me never to write a book again. For now I'm inclined to agree,
but we'll see.
Phil Thompson wrote the software that
this book is all about — and has fixed bugs faster than
I could write chapters. Cameron Laird is responsible for
egging me on to start writing, and Shawn Gordon for
introducing me to Joshua Drake, who dared to take the book on.
Michael Holloway, the editor, has fixed lots of bad English
and made this book a better book.
Neelakantan Krishmaswami is ultimately
responsible for getting me to look at Python at all —
everyone needs someone else to help him over the
indentation-is-block-marking hurdle, and Neel helped
me.
Jim Bublitz and Wilken Boie have
contributed largely to
Appendix C — Jim by writing the introduction,
and Wilken by writing the overview of directives. Gerard
Vermeulen wrote Appendix B. I've been editing
their texts, though, so any mistakes are mine. Cameron Laird
gave persmission to use the graphics of a remote control for
Chapter 22. Bruce Sass took the time to explain
about Debian packaging. Steve Purcell helped with the chapter
on unit-testing.
The following people have helped me
learn about Python, Qt and the combination in the past years,
on the PyKDE mailing list (set up by Torsten Horstmann) and
the Python newsgroups: Aditya Bhambri, Albert Wagner, Anshul
Shekhon, Arun Sharma, Corrin Lakeland, David C. Morrill, David
Eller, Deirdre Saoirse, Dirk Reisnauer, Henning Schroeder,
Johannes Sixt, Jonathan Perez, Karan Vasudeva, Maik Roeder,
Marco Bubke, Martin P. Holland, Neal Becker, Pete Ware, Peter
Torstensen, Reiner Wichert, Richard Jones, Steve Noble, Toby
Sargeant and Gerrit Sere.
Finally, many people have read the
drafts and helped me write a better book by sending me their
comments - sometimes very long and detailed: Andre Gosselin,
Andy Anderson, Brent Burley, Christopher Farly, Damon Lynch,
Dave Turner, Dincer Aydin, Mark Summerfield, Robert Hicks,
Sean Ahern and Yigal Duppen.