Kohsuke Kawaguchi created the continuous-integration tool Hudson in order to simplify agile Java development processes. Kawaguchi ran the project as he saw fit, moving forward quickly and pushing out quick, new releases. This helped to propel Hudson to an over 80% share of the continuous integration market for Java, according to a survey by Sonatype released earlier this year.
But while Kawaguchi moved forward without looking back, Oracle was growing more and more concerned about how the project was led.
Ted Farrell, Oracle senior vice president and chief architect, wrote in a statement to SD Times that “Oracle had an issue with how decisions about Hudson (code changes, committers, etc.) were being made. We were working those through the community with [Kawaguchi]. More recently, there were also concerns around how changes to the Hudson infrastructure were being made. As an example, on Nov. 22, Kawaguchi moved both the mailing lists and source repository to new infrastructure without consulting anyone, including Winston Prakash of Oracle, who was co-owner of the Hudson project.”
The real issue, wrote Farrell, was that Kawaguchi moved the project without input from the community, highlighting Hudson’s capricious nature.
“After several unanswered e-mails to [Kawaguchi] to discuss these changes, I posted to the community mailing list asking for the moves to stop until we could discuss the best way to implement the changes,” wrote Farrell. “We had heard multiple complaints from users and developers about the unpredictability of the Hudson project. We were trying to address those concerns. A slanted blog post misrepresented a lot of these points and incited a lot of confusion around the event. We never forbid moving to GitHub. In fact, I stated we were in favor of doing that, but wanted some time to think through the ramifications to everyone.”
Oracle decided it would exert its ownership of the Hudson name and try to force some more structure into the project. Kawaguchi did not take Oracle’s pressure lightly. At the end of January, he officially forked Hudson, calling the fork “Jenkins” (in keeping with the project’s butler theme). But that was not the end of the drama.
“First, I wanted to apologize for not being able to resolve the dispute with a more happy ending,” Kawaguchi said. “We’ve really tried hard, but in the end we just weren’t getting anywhere. While there are different ideas in OSS about how many people should contribute (cathedral vs. bazaar), I think it’s more widely agreeable that an open-source project needs to be a meritocracy, where one is valued by his contribution. So in the end, we concluded that the only way to get back to a productive structure is to avoid the only thing that Oracle owns, which is the name.”
Kawaguchi postulated that Oracle was so hostile to him because, as he put it, “I’m not working for Oracle? Seriously, it’s not entirely clear to me what was their problem with me. But from the tone of the e-mail, it was very clear that they don’t intend to have me lead the project in the same capacity. I think they wanted to feel in control of the project by making sure that they understand changes that go in. Using trademark to push for that is a wrong approach, in my opinion, but I really don’t know what made them so upset.”