Summary
There's been a lot of talk lately about a decision by the community to fork the Hudson continuous integration project, but the real fork has been done by Oracle, not the community.

Advertisement

Oracle forks Jenkins

The history

Since Thanksgiving of last year, there's been quite a lot of drama
surrounding the open source project Jenkins, formerly known as Hudson.
The catalyst was when Oracle started a migration of the project to its
new java.net infrastructure, and failed (without malice, it appears)
to notify the Hudson developer community in advance. Upon discovering
that the migration process would leave the community without the
ability to make commits for a week or longer, Hudson founder and
chief contributor Kohsuke Kawaguchi shifted
to using github in order to allow contributions to start flowing again.

While Oracle didn't consider the situation serious enough to speed
up the java.net migration, they did inform the Hudson community that
they felt Hudson should continue to be hosted on Oracle-owned servers.
In particular, Oracle SVP Ted Farrell stated
that:

Because it is open source, we can't stop anybody from forking
it. We do however own the trademark to the name so you cannot use the
name outside of the core community.

In response to this statement, consensus quickly formed within the
developer community to change the name of the project from Hudson to
something that was not already trademarked; Jenkins was soon chosen as
the new name. Talks were held with Oracle, and once it became clear
that Oracle
would not relinquish its claim to the Hudson name, the decision
was made to go forward with a rename. A vote was held, and the
community overwhelmingly
agreed to rename the project to Jenkins.

Was the project forked, and if so, by whom?

As soon as the community started to coalesce around the idea of
moving the project hosting to github, Oracle started to refer to the
move as a fork, as seen in the quote above. The fork rhetoric later
heated up in a post by Ted
Farrell stating bluntly that "We are talking about a fork, so IMO
we should call it what it is." I believe this choice of wording was
part of an intentional effort to paint those in favor of renaming as
an offshoot of the "real" community. Indeed, the term fork often
carries with it a negative connotation, and forks are often viewed as
selfish acts which are divisive to the community. However, in this
case, I would argue that it is Oracle, not the developer community,
which has made the decision to fork Jenkins.

The decision to rename a project is certainly not, in and of itself,
a fork. Mozilla's web browser went through a
couple renames before landing on its present name of Firefox. In
that case, as with the rename to Jenkins, the name changes were driven
by conflicts with existing trademarks. No one considered it a fork.
The fork really occurred when Oracle made it clear that they did not
wish to go along with the change, but would rather take their ball
(trademark) and go elsewhere. While Oracle does have a developer who
is slated to continue work on the old Hudson project, it's
contributions to Hudson have been less
than 1% of the commits since Kohsuke left Oracle.

Normally, I wouldn't worry too much about corporate rhetoric.
Unfortunately, it appears to be having repercussions. Most notably,
Jason van Zyl of Sonatype has
said that Sonatype will be
working on Hudson, not Jenkins. Jason didn't use the work "fork",
but his wording amounted to the same image:

I think this whole situation is unfortunate, but
ultimately Kohsuke has the right, like everyone else, to do what he
feels is right. I honestly do not believe what has happened is in the
best interest of users, but this is my opinion and only time will
tell.

Some of you reading this may know and respect Kohsuke. Those who do no
doubt have little reason to doubt him when he writes
that:

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 I see it, Hudson was not forked, but merely renamed. Oracle's
unwillingness to work with the creator and chief contributor of the
project then led it to fork Jenkins, using the Hudson name they hold the
trademark on. This was done regardless of the detrimental impact this
fork could have on the community.

My own belief is that regardless of the course Oracle and Sonatype
choose, the legacy Hudson project will be unable to keep up with the
community driven innovation that Jenkins will continue to enjoy. I
may be proved wrong; it may be that Oracle and Sonatype will be able
to move the new Hudson project forward in a way that can outshine
Jenkins. In the mean time, however, users will have to choose between
Jenkins and the new Hudson project. Efforts to label Jenkins as the
fork and Hudson as the original project amount to little more than
attempts to influence people to walk away from Jenkins out of fear.
If you currently run a legacy Hudson distribution and need to decide
which path to take, I encourage you to examine what both projects will
offer going forward and make your informed decision accordingly, free of FUD.

> I don't know if I agree.> > I am not a fan of the whole Jenkins - Hudson situations.> But at the end of the day Kohsuke was paid to work on> Hudson. Oracle clearly owns the Hudson trademark and the> project.

I think you forgot some important facts:* Kohsuke started hudson in his free time end of 2004* Sun started paying kohsuke to work full time on hudson in 2008 (3.5 years later). At that time hudson had more than 50 contributors and was an awarded software project

You may want to think twice before saying that Oracle owns the project.

> I think you forgot some important facts:> * Kohsuke started hudson in his free time end of 2004> * Sun started paying kohsuke to work full time on hudson in 2008 (3.5 years later). At that time hudson had more than 50 contributors and was an awarded software project> You may want to think twice before saying that Oracle owns the project.

It is not appropriate to state opinions as facts.

In the US, it appears that the "spare time" projects of salaried employees can be considered to be the property of their employers if the projects are related to the employment, e.g. software development.

Please do not construe my comment as a comment on the original topic; I am only criticizing your dogmatic comment. (It is painfully obvious to me that this whole soap opera is the result of too much ego and dogmatism.)

> In the US, it appears that the "spare time" projects > of salaried employees can be considered to be the > property of their employers if the projects are related > to the employment, e.g. software development.

I would be really interested to know if this is true, because for me it sounds like... slavery... Does anybody has a link where this is discussed, or court cases where this was enforced? Does this require special contracts, or is it 'by default'? Was it true for Sun, is it true for Oracle? What if somebody is employed, let's say, 80%?

Well, even if it is true, then it doesn't matter that much I guess because Sun agreed to open source Hudson.

> In the US, it appears that the "spare time" projects > of salaried employees can be considered to be the > property of their employers if the projects are related > to the employment, e.g. software development.

US law doesn't say anything of the sort. Employment contracts, particularly for R&D-centric companies in Silicon Valley, often include that sort of language. Laws vary from state to state in terms of how (or if) they can be enforced. I am not a lawyer, but I have been a programmer in Minnesota for over 10 years, and I've never had to worry about what I write in my free time.

> In the US, it appears that the "spare time" projects of salaried employees can be considered to be the property of their employers if the projects are related to the employment, e.g. software development.

Even if the "spare time" meant weekends? It would be very strange if it is enforceable in courts.

Whatever be the case, just holding on to the name Hudson will not benefit Oracle if they do not put in the resources it needs. Users would simply migrate to Jenkins as the latest and greatest.

> > In the US, it appears that the "spare time" projects of> > salaried employees can be considered to be the property of> > their employers if the projects are related to the> > employment, e.g. software development.> > Even if the "spare time" meant weekends? It would be very> strange if it is enforceable in courts.

I believe Cameron is correct here. And if fact, there are good reasons to have this sort of rule. An employee might come up with an idea at work, based on conversations related to her job, but then decide to develop it on personal time. The legal route many companies use to protect themselves is to say that they own all intellectual property created by employees during their tenure at the company, unless an explicit waiver is given. I recall being quite shocked the first time I heard about this; in the years since, I've grown use to it, and can even see reason in it.

All that said, I don't consider it particularly relevant to the issue of Jenkins. Regardless of it's history, it's now under an open source license. Oracle is free to make a fork of the project if it wishes, and it's free to use it's ownership of the trademark as it sees fit. Likewise, neither Kohsuke nor the rest of the community is under any legal obligation to honor that fork.

> > I think you forgot some important facts:> > * Kohsuke started hudson in his free time end of 2004> > * Sun started paying kohsuke to work full time on hudson> in 2008 (3.5 years later). At that time hudson had more> than 50 contributors and was an awarded software project> > You may want to think twice before saying that Oracle> owns the project.> > It is not appropriate to state opinions as facts.[...]> I am only criticizing your dogmatic> comment. (It is painfully obvious to me that this whole> soap opera is the result of too much ego and dogmatism.)

Cameron,

I don't know KK's contract, so I don't really know who owns the intellectual property of Hudson. Maybe you do?

But as far as I know, a project isn't just an idea, or a name or a set of source files (especially when open source). It is not "owned" anymore in the same sence as a closed source project.

WRT to the dogma, I titled my blog entry "a question of fears and miscommunications", so I think I lean partially onto your side there. I thought that a lot could have been cleared if the parties had managed to make agreements. But this hasn't happened.

As for a corportation owning your spare time work, I find it an unbalanced solution. That's not like that in my country, and I am often allowed to have 2 works (depending on the contracts). That's again an opinion and that's not related to the case at hand.

Thanks for the spin. There are two sides to every story, and I guess you have shown it here. But it matters how?

The hudson/jenkins ci tool is now split brain. Open source contributors on one side, corporate/enterprise legitimacy on the other. Too bad. Each lost a member and needs to grow a new one.

Jenkins needs corporate legitimacy. Now, its back to being an open source project. In my job, managers don't like depending on software that doesn't have corporate backing. Not to take anything away from the good effort of the Jenkins team, but you and Oracle didn't do me any favor with this.....code split (?).

Goes without saying that Oracle needs community contribution.

So, really, what does it matter whether I see rightfully one or the other as the forker? This article is more of the same demonization we have seen many times before in many other kinds of communities.

No. I didn't work with him at Oracle, I'm not involved with the Hudson issue, and I'm not a lawyer.

> But as far as I know, a project isn't just an idea, or a> name or a set of source files (especially when open> source). It is not "owned" anymore in the same sence as a> closed source project.

Generally, this is true. In reality, by way of license and trademark it is possible to own by way of control (JBoss for example), although the choice of the Hudson/Jenkins license doesn't really enable this.

> WRT to the dogma, I titled my blog entry "a question of> fears and miscommunications", so I think I lean partially> onto your side there. I thought that a lot could have> been cleared if the parties had managed to make> agreements. But this hasn't happened.

The "taking sides" concept is more conducive to sports teams than situations like this. I just don't understand the rush to polarization that topics like this spark.

On the other hand, I do think it's proper to hold Oracle to account on its management of projects that it claims responsibility for, like Hudson. I think a number of concerns (e.g. trademark) and complaints (e.g. infrastructure) are or were valid, and we missed a good opportunity to engage constructively with the other stakeholders in the project.

I also find the amount of venom (see Jason van Zyl's blog comments) directed at anyone who doesn't "take the right side" to be disturbing. Maybe it's like politics: "Follow the money .."

> As for a corportation owning your spare time work, I find> it an unbalanced solution. That's not like that in my> country, and I am often allowed to have 2 works> (depending on the contracts). That's again an opinion and> that's not related to the case at hand.

I see both pros and cons. I do have members of my engineering team that contribute to open source and commercial projects outside of work, but -- at least in the case of commercial projects -- they do get written permission to do so, following Oracle policy, based on the non-overlapping nature of their "day work" and the other projects that they wish to contribute to.

> Saying that the project was never Oracle's will only make> companies want to support fewer open source projects.

What...

Businesses invest in open source software to commoditize their complements and to offer a different business cost and ethics model from their competitors (who generally are proprietary but market share leaders).

Businesses don't care at all about the perception of the project, just whether the project helps the business make money.

> > But as far as I know, a project isn't just an idea, or> a> > name or a set of source files (especially when open> > source). It is not "owned" anymore in the same sence as> a> > closed source project.> > Generally, this is true. In reality, by way of license and> trademark it is possible to own by way of control (JBoss> for example), although the choice of the Hudson/Jenkins> license doesn't really enable this.

Cameron, I don't think license and trademark are the primary factors in large software. They are merely contributors. The real value that a company can hold is in everything licensing entails, e.g. certification against a test suite that only that company has access to. From the perspective of open source developers, this is what differentiates what the project is.

> In the US, it appears that the "spare time" projects of> salaried employees can be considered to be the property of> their employers if the projects are related to the> employment, e.g. software development.> > Please do not construe my comment as a comment on the> original topic; I am only criticizing your dogmatic> comment. (It is painfully obvious to me that this whole> soap opera is the result of too much ego and dogmatism.)> > Peace,> > Cameron Purdy | Oracle Coherence> http://coherence.oracle.com/

I understand this to be enforceable only where the "spare time" project is related to employed activities. IOW, if you're a game programmer and write an open source relational database engine in your spare time, your employer has no hook to claim anything related to the database engine.