Hudson's Origins

Hudson's Origins at Sun Microsystems

In 2004 Kohsuke Kawaguchi, an engineer at Sun Microsystems, started a side project to catch his own broken commits before his teammates did: a server that built the code and ran the tests after every change. He called it Hudson and released it on 7 February 2005. Where CruiseControl, the leading build server, was configured in XML files, Hudson installed as a single .war, was configured in a web interface, and loaded plugins, so anyone could add a version-control system, build tool or report without waiting for the core. It won the Duke's Choice Award at JavaOne in May 2008 and soon replaced CruiseControl as the default Java CI server.

The old name has never left the code. The controller installed in Installing Jenkins with Docker still sends a Hudson header, and its main configuration file's root element is <hudson>:

Hudson's name inside a 2026 Jenkins controllerShell
curl -sI -u "admin:$JENKINS_TOKEN" http://localhost:32080/ | grep -i '^x-.*\(hudson\|jenkins\):'
docker exec l2-jenkins head -2 /var/jenkins_home/config.xml
Output
X-Hudson: 1.395
X-Jenkins: 2.568.3
<?xml version='1.1' encoding='UTF-8'?>
<hudson>

1.395 was Hudson's last version, frozen for old clients that look for the header. Core classes still live in hudson.* packages too: renaming them would have broken every plugin.