Last week, I wrote a post that compared the Eclipse and Mozilla build infrastructure. It was surprised by the interest it generated. My conclusion? People like to learn about complex build systems and scalability. Shiny hardware doesn’t hurt either. At the same time, I was also thinking about what would make an interesting proposal to submit to EclipseCon.
In the midst of the mundane task of rebooting a performance machine in the lab, I was inspired. Wouldn’t it be interesting to open the door into a larger set of open source communities? To explore how they manage their build and release processes, hardware, software and the underlying technologies they use to transform source into binaries?
Image © criggchef, http://www.flickr.com/photos/criggchef/2665328223/ licensed under Creative Commons by-nc-sa 2.0
At Eclipse, sometimes we tend to limit ourselves to examining the projects within the Eclipse ecosystem itself as benchmarks for comparison. Other open source foundations, such as Mozilla, Gnome, Linux and Apache, have similar challenges. Do they have a centralized build farm? How do they support multiple streams, platforms and SCMs? How do they manage hardware and parallelize enormous test suites? What CI engine do they use? Why? How do they optimize their build processes to support their community’s goals? I think the open source build backstory would expose some interesting ideas to the Eclipse community.
You may be thinking, “Kim, you’re an Eclipse release engineer. What do you know about builds at other open source foundations?” The beautiful thing about open source is that it is full of passionate people who love to talk about their work. And by virtue of its open nature, we are free to discuss and learn from others. I’m confident that I could create compelling content by talking to other release engineers to tell the story behind their builds.
There are certainly a lot of fantastic talks proposed for EclipseCon this year. If you’re interested in this talk, please express your interest on the EclipseCon proposal. Thank you for your consideration!