On May 20, we held the Releng 2013 workshop in San Francisco. By all accounts it was a success! I was unsure what to expect given that this was a first time for this workshop. It seemed to be a topic that generated a lot of interest. We had around 80 attendees which to my understanding was the highest attendance of any workshop at ICSE this year. It was great to have so many people interested in release engineering and research in the room. It was also fantastic to meet my co-organizers Bram, Foutse and Christian in person after working to organize this event since last fall.
The night before the workshop, I went out to dinner with the other organizers and some of their professor and post-doc colleagues. I was struck by how enthusiastic they were about release engineering topics and interacting with industry. One of them said “We want to make sure that we’re working on relevant problems.”
There were two keynotes at the workshop. The opening keynote was Release Engineering as Force Multiplier by John O’Duinn of Mozilla. The afternoon one was by Roman Scheiter of LinkedIn and entitled Against All Odds – Completely Overhauling Linkedin’s Release Process. Both were fantastic accounts of how the build, test and release pipelines at these companies were improved to make the organizations as a whole more effective. It was an interesting contrast in that LinkedIn
moved from branch based development model to trunk based continuous integration while Mozilla moved from trunk based continuous integration to branch based development model.
One of the researchers commented that if you have negative results, you don’t publish a paper. So they were somewhat surprised to see the openness from those from industry on the things we did wrong. My understanding is that’s not that common in academia given the push to be the first to publish a new result. A different culture.
Some highlights for me from the other talks:
- The software delivery model at Netflix by Curt Patrick and Gareth Bowles (development islands, no release engineers, their team provides tooling for self-serve builds)
- Hal Wine from Mozilla on using Hg and Git on the same codebase (many asked why – that sounds crazy!)
- Jim Buffenbarger from Boise State University gave a talk on amake which includes automatic dependency processing
- Akos Frohner and Boris Debic from Google gave a talk about the continuous release process at Google and which included some incredible numbers (100 million unit tests run a day!). Boris also had some great things to say about the value of release engineering such as “Release engineering should taught in business school, not in computer science classes. It has real business value, and developers can learn it later. ” “Startups should hire release enginners early, otherwise they will have to drain the swamp later”. “Companies that don’t do release engineering well don’t compete well in the marketplace.” Definitely words of wisdom.
- Dustin Mitchell from Mozilla gave a talk on the Buildbot continuous integration framework. Later that afternoon, Moses Mendoza and Matthaus Owens from Puppet Labs presented how they build their packages for their consumers and mentioned that they hoped to collaborate with Dustin and learn more about Buildbot. Which was great – so glad that the workshop encouraged this collaboration.
- Ryan Hardt, a post-doc from University of Wisconsin (Milwaukee) gave a talk about Formiga, an Eclipse plug-in for refactoring Ant code which looks very promising.
- Peter Rigby from Concordia University described DCVS systems facilitate different workflows between developers as opposed to more centralized systems. Very interesting!
At the end of the day, I had the honour of moderating the discussion panel. The panel started out with professors Mike Godrey from Waterloo and Gunther Ruhe from the university of Calgary, as well as practitioners Jason Newblanc from Salesforce and Curt Patrick from Netflix. Discussions included what topics needed more research (dependency analysis), to a discussion of the skills do you look for when hiring a good release engineer (communication skills above all). Given that one of the main goals of the workshop was to bring together researchers and release engineers it was very gratifying to hear from the researchers on the panel how happy they were that they had the opportunity to learn from the presentations earlier in the day. After a while the panel shifted to include new members with new topics, and then we wrapped up to head to post-workshop dinners where the discussions continued.
Several attendees mentioned to me that they were happy to attend the workshop because it validated the release engineering work that they do is important. I’m very fortunate to work at Mozilla on a large release engineering team where there are many people who love to talk about build optimization and automation. But many release engineers work in organizations where they are the only ones who are interested in this subject. To bring all these people together was a great experience!
We would like to thank everyone who attended the workshop. Thank you to our session chairs who timed the talks and ensure that we stayed on schedule. Thank you to Juliana Saraiva, our student volunteer, who helped with setup and throughout the day with audio and visual issues.
A special thanks to all of our speakers. Having been a speaker in the past, I understand all the work that goes into preparing talks on top of your regular day jobs and truly appreciate the effort that made this workshop successful. At the end of the day, there was a resounding show of hands from attendees that they would like to attend another workshop. In fact, several companies volunteered to their space to host events which is very generous. Please follow @relengcon on twitter for more information on upcoming events. Many of the papers and presentations are available on the web site. If your slides are missing from the web site, please email them to Bram.
Also thank you to my colleagues at Mozilla for arranging our releng work week to be same week so many of us could attend, despite it being a Canadian holiday weekend. You’re all amazing 🙂