Seven years ago, I wrote the first line of code that started this whole project that is now known as Jenkins, and was originally called Hudson. I used to be the guy who broke the build, so I needed a program to catch my mistakes before my colleagues did. It was just a simple tool that did a simple thing. But it rapidly evolved, and now I’d like to think that it’s the most dominant CI server on the market bar none, encompassing a broad plugin ecosystem, commercial distributions, hosted Jenkins-as-a-Service, user groups, meet-ups, trainings, and so on.
As with most of my other projects, this project was open-sourced since its inception. Over its life it critically relied on the help and love of other people, without which the project wouldn’t be in the current state. During this time I’ve also learned a thing or two about running open source projects. From that experience, I think people often overlook that there are many ways to help an open source project, of which writing code is just one of many. There’s spreading words, helping other users, organizing meet-ups, and yes, there’s writing documentation.
In this sense, John is an important part of the Jenkins community, even though he hasn’t contributed code—instead, he makes Jenkins more approachable to new users. For example, he has a popular blog that’s followed by many, where he regularly talks about continuous integration practices and other software development topics. He is good at explaining things so that people new to Jenkins can still understand them, which is something often hard for people like me who develop Jenkins day in day out. He is also well-known for his training courses, of which Jenkins is a part. This is another means by which he makes Jenkins accessible for more people. He clearly has a passion for evangelizing new ideas and teaching fellow developers to be more productive.
These days I spend my time at CloudBees where I focus my time on Open Source Jenkins, the CloudBees pro version of Jenkins where we build plugins on top of Jenkins, and taking Jenkins to the private and public cloud with CloudBees DEV@cloud service. In this role I now have more interaction with John than before, and my respect for his passion has only grown.
So I was truly delighted that he took on the daunting task of writing a book about Jenkins. It gives a great overview of the typical main ingredients of continuous integration. And for me personally, I always get asked if there’s a book about Jenkins, and I can finally answer this question positively! But more importantly, this book reflects his passion, and his long experience in teaching people how to use Jenkins, in combination with other things. But don’t take my words for it. You’ll just need to read on to see it for yourself.