This book is based not only on my own expertise and experience, but also on commonly accepted best practices. With the goal of encompassing a wide range of ideas, including a variety of opinions, and maximizing quality, I reached out to a number of contributors as well as external reviewers as I wrote the book. The people I reached out to are the masterminds, founders, and power users of the tools and concepts covered in this book.
I would like to acknowledge and thank the following people, in no particular order: Julian Simpson, “The Build Doctor,” for feedback on continuous integration; Prof. Dr. Michael Stal, principal at Siemens, for technical editing of the Scala chapter; Rainer Wasgint for providing the Siemens ALM field report and for discussing ALM; Radoslaw Holewa, Scala professional, for contributing the BDD/Scala section; Vaclav Pech (JetBrains), Groovy expert, for summarizing what Groovy is great for; Stephen Berczuk, author and SCM expert, for proofreading and technical editing; Lisa Crispin, author and testing expert, for proofreading and giving feedback; Simon Tiffert, development lead, for his contribution in the context of acceptance testing, including Excel, TestNG, and XStream; René Gielen, Struts 2 PMC chair, for contributing a Maven-related section and a section about the Git/SVN bridge; Heinrich Freiherr von Schwerin (Logica), Paul Lajer (Logica), Matthias Zieger (Microsoft), Sven Lindenhahn (T-Systems), Thomas Ferris Nicolaisen, Simon Brandhof (Sonar-Source), and Reinhard Borosch (IBM) for their feedback and for inspiring me; Matthias Weßendorf (Kaazing), for contributing the Maven releasing use case, which shows how a big project is released using Maven (derived from MyFaces’ releasing process); JFrog, especially cofounder and tech lead Yoav Landman, for supporting me with their product Artifactory, discussing the releasing of Maven artifacts in general, and proofreading; Atlassian, especially Jon Silver and Don Brown for feedback, proofreading, and support; and Szczepan Faber for writing about Mockito and mocking in general. Also, a big thanks to Szczepan for the discussions, feedback, and ideas for chapter 5. Thanks to Max Antoni for his Maven contribution; Anne Horton, author, for ideas about the Hudson/Jenkins and continuous integration sections; JetBrains, for inspiration and support; Hadi Hariri (JetBrains), .NET expert, for his .NET contribution; Jonas Borgstrom and team for feedback on the section on Trac; Eric Torreborre, founder of Scala specs2, for editing and proofreading and supporting the migration of the Scala/specs chapter from specs to specs2; Brett Porter, author and committer to Maven, for technical editing and proofreading; Wesley Williams (founder of GivWenZen) for his contribution; Matt J. Duffy and Greg Bates, from “Oxford Editing,” Roswell, Georgia, USA, for editing (on my behalf) and pointing me to the roundup; and Craig Smith for carefully proofreading the final manuscript.
At Manning, special thanks to Michael Stephens for guiding me through the detailed publishing process, Bob Aiello for his technical edit of the manuscript, Andy Carroll for his expert copyediting, and to many others who worked behind the scenes. Also, thanks to the following reviewers who read the manuscript at various stages of development: Andy Dingley, Christian Siegers, Michele Galli, Tariq Ahmed, Balaji D. Loganathan, Brad Gronek, Ben Ogden, Justin Tyler Wiley, Amos Bannister, Christophe Bunn, Dave Nicolette, Lasse Koskela, Robert Wenner, Benjamin Day, Deepak Parasam, Deepak Vohra, Carlo Bottiglieri, and Darren Neimke.