Прежде всего выражаю благодарность моим друзьям и помощникам, которые работали со мной на семинарах и помогали создавать учебные проекты: это Дэйв Бартлетт (Dave Bartlett), Билл Веннерс (Bill Venners), Чак Аллисон (Chuck Allison), Джереми Майер (Jeremy Meyer) и Джейми Кинг (Jamie King). Я благодарен им за терпение, с которым они относятся к моим попыткам построить наилучшую модель совместного существования нашего коллектива.
За последнее время (несомненно, из-за широкого распространения Интернета) ко мне обращалось множество людей, которые мне помогали, — особенно те, кто работает на дому. В прошлом мне пришлось бы нанимать огромный офис, чтобы вместить всех этих людей, но благодаря Сети, курьерской почте и телефону я мог пользоваться их содействием без дополнительных затрат. Пола Стойер (Paula Steuer) оказала неоценимую помощь: она взяла под свой контроль мой сомнительный трудовой график и привела его к нормальному виду (спасибо за то, что подталкивала меня, когда я чего-то не хотел делать, Пола). Джонатан Уилкокс (Jonathan Wilcox) просеял всю мою корпоративную структуру и отыскал все скрытые ловушки, которые могли помешать нормальному ходу дел (с юридической точки зрения). Спасибо за внимание и настойчивость. Шарлин Кобо (Sharlynn Cobaugh), эксперт по обработке звука, играла важную роль при создании мультимедийных семинаров, а также решении других проблем. Спасибо за скрупулезность, с которой она подходила к решению совершенно необъяснимых компьютерных проблем. Группа Amaio из Праги помогла мне в работе над некоторыми проектами. Дэниел Уилл-Харрис (Daniel Will-Harris) предложил изначальную идею «работы по Интернету»; и конечно, именно ему принадлежит решающее слово во всех решениях из области графического дизайна.
За прошедшие годы Джеральд Уайнберг (Gerald Weinberg) стал моим «неофициальным» учителем, и за это я благодарен ему.
Эрвин Варга (Ervin Varga) очень помог мне с технической правкой 4-го издания — хотя разные люди помогали мне с другими главами и примерами, Эрвин был главным техническим рецензентом книги. Он нашел многие ошибки и внес дополнения, значительно улучшившие мой текст. Его педантичность и внимание к деталям просто потрясают; бесспорно, это лучший технический редактор, с которым мне доводилось работать.
Мой блог на сайте Билла Веннерса www.Artima.com помог мне организовать обратную связь с читателями. Спасибо всем, кто помог мне прояснить некоторые концепции, — Джеймс Уотсон (James Watson), Говард Ловатт (Howard Lovatt), Майкл Баркер (Michael Barker) и многие другие... особенно те, кто помогал мне с проработкой темы параметризации.
Большое спасибо Марку Уэлшу (Mark Welsh) за его постоянную помощь.
Эван Кофски (Evan Cofsky), знаток всех тонкостей установки и сопровождения веб-серверов на базе Linux, помогает мне организовать нормальную работу сервера MindView.
Кафетерий Camp4 Coffee в Крестед-Бьют, штат Колорадо, стал стандартным местом проведения досуга посетителей семинаров MindView, а во время перерывов они обеспечивают отличное выездное обслуживание. Спасибо моему другу Элу Смиту (А1 Smith) за то, что создал это заведение и сделал его таким отличным местом. Я также благодарен всем баристам Сатр4, таким приветливым и дружелюбным.
Я благодарен всем сотрудникам Prentice Hall, которые снабжали меня всем необходимым и мирились с моими особыми запросами.
Некоторые программы оказались воистину бесценными в ходе работы над примерами, и я очень благодарен их создателям. Cygwin (www.cygwin.com) решает бесчисленные проблемы, которые Windows решить не может (не хочет), и я с каждым днем привязываюсь к этому пакету все сильнее. IBM Eclipse (www. eclipse.org) — совершенно замечательное творение для сообщества разработчиков. JetBrains IntelliJ Idea продолжает прокладывать новые творческие пути в области инструментариев разработчика.
Я начал использовать Enterprise Architect от Sparxsystems во время работы над этой книгой, и программа быстро стала моим основным UML-инструментом. Форматер кода Jalopy, созданный Марко Ханзикером (Marco Hunsicker) (www.triemax.com), часто оказывался очень полезным, а Марко помог настроить его под мои специфические потребности. Я также обнаружил, что J Edit с плагинами Славы Пестова (Slava Pestov) (www.jedit.org) оказывается весьма полезным в некоторых случаях; это вполне достойный редактор для начинающих Java-программистов.
И конечно, я постоянно использую в своей повседневной работе Python (www.Python.org), творение моего друга Гидо Ван Россума (Guido Van Rossum) и группы безумных гениев, с которыми я провел множество замечательных дней. Спасибо всему сообществу Python, объединившему таких выдающихся людей!
Хочу отдельно поблагодарить всех своих учителей и учеников (которые на самом деле тоже являются учителями).
Кошка Молли часто сидела у меня на коленях, пока я работал над книгой. Так она вносила свой теплый, пушистый вклад в мою работу.
Напоследок перечислю лишь некоторых из моих друзей и помощников: Пэтти Гаст (Patty Gast) — ас в области массажа, Эндрю Бинсток (Andrew Binstock), Стив Синоски (Steve Sinoski), Джей Ди Хильдебрандт (JD Hildebrandt), Том Кеффер (Tom Keffer), Брайан Макэлхинни (Brian McElhinney), Бринкли Барр (Brinkley Barr), Билл Гейтс из «Midnight Engineering Magazine», Ларри Константин (Larry Constantine) и Люси Локвуд (Lucy Lockwood), Джин Ванг (Gene Wang), Дэйв Мейер (Dave Mayer), Дэвид Интерсимон (David Intersimone), Крис и Лора Стрэнд (Chris and Laura Strand), Элмквисты (Almquists), Брэд Джербик (Brad Jerbic), Мэрилин Цвитанич (Marylin Cvitanic), Марк Мабри (Mark Mabry), семья Роббинс (Robbins), семьи Мелтер (Moelter) и Макмиллан (McMillan), Майкл Вилк (Michael Wilk), Дэйв Стонер (Dave Stoner), Крэнстоны (Cranstons), Ларри Фогг (Larry Fogg), Майк Секейра (Mike Sequeira), Гэри Энтсмингер (Gary Entsminger), Кевин и Сонда Донован (Kevin and Sonda Donovan), Джо Лорди (Joe Lordi), Дэйв и Бренда Бартлетт (Dave and Brenda Bartlett), Блейк, Эннет и Джейд (Blacke, Annette & Jade), Рентшлеры (Rentschlers), Судеки (Sudeks), Дик (Dick), Патти (Patty) и Ли Экель (Lee Eckel), Линн и Тодд (Lynn and Todd) и их семьи. Ну и, конечно, мама с папой.