Archive

Archive for January, 2011

One last plea for Hudson/Jenkins vote

January 26th, 2011

As Andrew posted, the vote for Jenkins is open now. You need to be a member of the users or the dev list to be eligible, and the detailed instruction can be found here. I thought I’d take the opportunity to make one last plea to the community.

When the representative of Oracle says it to my face that I should just go find something else to work on, or that I need to immediately stop making [infrastructure] changes or the next email I will receive will be from their lawyers, or when you hear him describe me as a hurdle to the community, I think writing on the wall is pretty clear to me.

As such, regardless of the outcome of the vote, I find it very unlikely that I can continue to contribute to the Hudson project, and thus I will move on on Jenkins. I can’t control what others do, but I can at least decide what I personally do. While days leading up has been rather hard on me emotionally, now that I made up my mind, I actually feel good (besides, it’s such a nice day in San Jose today.) I’m confident that many key core and plugin contributors (who has made Hudson what it is today) will join me, and I hope users will follow us too (which is the other part of what made Hudson what it is today.)

What I’d like to ask the broader Hudson community is to have your voice heard and give us your support by voting. That you want to be with us. It lets us maintain the continuity of the project, it gives us legitimacy, and it sends a singal to the unaware silent majority which way they should follow. It’s the best way to maintain our community.

So please let your voice heard, and help us spread the word. For one last time.

hudson ,

On Oracle proposal about Hudson

January 24th, 2011

Oracle posted their proposal on the future of the Hudson project here (the cached version is here and here in case it changes.)

In this proposal, Oracle has not shifted at all from their original position that resulted in the community posting the proposal to rename. It’ll keep all the rights on the trademark Hudson, and it will continue to collect CLA from the core contributors. The proposal includes a clarified fair use policy to derivative work, but it doesn’t include any provisions about how the project can continue to use its name in the future, which was the central issue.

I think the message is quite clear, that Oracle intends to change the way the project is run, and that they are driving the effort unilaterally. You can see it in the proposal itself:

As many of you have pointed out, there can be a fork at any time. If Oracle ever did anything that the community disagreed with, whether it was enforcing new rights on the Hudson name, or trying to muscle the community, the community could always fork at that point in time. That is one of the assurances against a corporation doing things like that. … There are many ways to run an open source project. I think in order for Hudson to grow and reach more people the core community needs to grow and become more open and equal.

Notice that in their eyes, what happened in the past two months is not something “that the community disagreed with”, and putting a stop to a well agreed GitHub migration is not “trying to muscle the community.”

In my opinion, their proposal reinforced that our concerns were legitimate and what we feared is already happening. If the outcry from the community didn’t win any compromise from Oracle, I honestly don’t know what will. This is precisely why we need to rename now, and not later. If this isn’t enough for us to be resolute, then we’ll be divided and conquered through a series of highly technical confrontations that cannot rally a larger community, the community gets gradually boiled to death like a frog.

This “our way or highway” theme can be seen in many places throughout our conversation. They are going to dictate their will on us, when they contribute less than 1% of commits since I left Oracle. They think they have a proven record of leading open-source projects, when the record shows otherwise.

Since their position hasn’t changed, I continue to stand behind our earlier proposal to rename. That is,

  1. We rename the project to Jenkins. We’ll trademark the name, and transfer that to the umbrella of the Software Freedom Conservancy, to ensure that the owner of the key assets cannot use that to unfairly influence the project.
  2. For core, we’ll also start collecting CLA assignable to SFC for the same reason, when we are admitted to SFC.
  3. Grant the trademark usage in the same way the Linux trademark is handled.
  4. We’ll foster the same open atmosphere that we always had, where everyone is a committer just by asking (plus CLA for core), proposals are discussed on their technical merits and not by the title of the proposer, inputs from plugin contributors are valued, and the consensus of the community trumps any single entity.
  5. We’ll put an interim governance board in place, until the governance structure is secured and hold an election of the board members. I suggest myself, Andrew and, if Oracle elects to remain involved, Winston Prakash, the Oracle engineer working on Hudson, be the interim board members.
  6. We’ll move our infrastructure off from Oracle-owned servers and for other infra resources that are hosted elsewhere, such as GitHub and Google Groups, we’ll rename them for Jenkins.

Now that we know all the options on the table, I believe Andrew will get a vote going soon. Please help us with your support. To borrow a line from a movie I recently watched, “when bullies rise up, the rest of us have to beat them back down.”

hudson , ,

Bye bye Hudson, Hello Jenkins

January 11th, 2011

(This post was originally made under an incorrect location, so I’m moving it here. The contents haven’t changed since its original post on Jan 11th 2011.)

As some of you may know, toward the end of the last year, Hudson project has experienced a fire drill — you can see it here, here, here, and here. In short, the issue was that Oracle was asserting a trademark right to the project name “Hudson”, and that caused some considerable concerns to the community. Since then, key community members were talking with Oracle, in an attempt to produce some kind of proposal for a stable structure and arrangement, which was then going to be proposed to the Hudson community.

And as Andrew posted in hudson-labs.org, there is an update now — the negotiation didn’t work.

The central issue was that we couldn’t convince Oracle to put the trademark under a neutral party’s custody (such as Software Freedom Conservancy), to level the playing field. In a project where the community makes commits two order of magnitudes bigger than Oracle, we felt such an arrangement is necessary to ensure that meritocracy continues to function.

Aside from this, Oracle wanted a broader change to the way the Hudson project operates, including a far more formal change review process, architectures, 3rd party dependencies and their licenses, and so on. Those policies are worth discussing on their own, but it was very risky idea to have someone external to the project draw them up. Instead, in a normal OSS project, such processes would normally come out from the dev community itself, based on how it has been functioning. This is where I felt that the lack of “level playing field” I mentioned above is already affecting us. (And on that note, there’s another asymmetry about the CLAs, that we haven’t even touched on.)

All of those still might not have been a show-stopper if we felt that there is a genuine trust between us, but in this case, we just failed to build such a relationship, even after a month long conversation.

So in the end, we’d like to propose the community that we regrettably abandon the name “Hudson” and rename to “Jenkins” — it’s another English-sounding butler name that doesn’t collide with any software project as far as I can tell. This option was something we’d have liked to avoid, for all the obvious reasons, but I’m convinced that for a long-term health of the project, this is the only choice. It makes me sad at a personal level too, as I named this project Hudson back in 2004, and cherished it ever since. But the storm is gathering over the horizon, and the time to act is now.

The details of the proposal is again in the posting at Hudson Labs, so I won’t repeat it here. One thing I wanted to stress is that we’d like to move Jenkins under the umbrella of SFC, a neutral overlord that doesn’t concern itself with the daily technical matters of the project, just like how Sun was. That’s the model under which Hudson has grown, and I think it still fits us well.

There will be a poll running to get the broader community concensus. Please give us your support, and please let your voice be heard.

Uncategorized