In the last 5 months the OpenStack project has landed 7000 patches from nearly 700 different contributors. Over 550 developers have contributed to the tens of thousands of code reviews needed to land these patches. All in a source base that’s 1M lines of python code. After 3 years as a project, OpenStack is approaching the level of activity of the Linux Kernel. How can a project grow that fast, onboard that many developers, and yet still have coherent releases that ship on time? By a fusion of the best lessons learned from Open Source development, from Agile Software development, and a few new tricks of our own. All rolled together I call this Software Engineering 2.0.
This talk is going to give some background on OpenStack, the challenges of a rapidly growing project, and how we’ve addressed those in both tooling and process. You’ll learn about code review; preemptive continuous integration; and how testing clouds, on clouds, with clouds, is fun, and not nearly as confusing as you’d imagine. Everything we’ve created for OpenStack is open source in it’s own right, so you can directly apply some of these techniques to your own projects. This also gives a more modern view of where Software Engineering is headed.
Sean Dague is a Senior Software Engineer at IBM’s Linux Technology Center, and the Founder and President until deposed of MHVLUG.