"The name of the company is InfraDNA because I think of Hudson more as an infrastructure on which all kinds of server-side automation/tools can be built/deployed, and because I think this stuff is built into me (as in DNA) — when I look back my career as a software engineer, I always somehow seem to come back to tooling. (Plus, the domain name was available!)."
DZone took the opportunity to interview Kawaguchi about CI, Hudson, and his new company.
DZone: Is there any significance behind the timing of your departure from Oracle and the founding of InfraDNA? Basically I'm asking - Why now?
Kohsuke Kawaguchi: Back when the acquisition of Sun by Oracle was in progress, I started thinking/investigating about options that I had, and one of them was to start my own business.
As Hudson grew bigger, I got involved a bit more on the business side of it, beyond the engineering work. In doing so, I learned that large companies like Sun and Oracle have certain strengths, but they also have certain weakness, too. So the idea of a smaller business got attractive over time, and I eventually decided that that's the right thing to do.
DZone: What was the motivation when you first started developing Hudson?
Kohsuke: I think the motivation was two-fold. One was that I wanted to write a web app. Back then I was in the organization that developed JavaEE, and while my main responsibility was around XML, I always felt bad that I hadn't eaten my own dogfood, so to speak. So I wanted to write some real web app.
Another motivation was to scratch my own itch in the software development process. I tend to be the guy who breaks the build, so I wanted some software to find that out for me before my colleagues do. It turns out that this scratch is more universal than I originally thought.
I tend to create a lot of seemingly unrelated open-source projects (mainly on java.net), but as I develop Hudson, one way or another, I kept finding those projects useful in Hudson. So in a way Hudson became a compilation of my work. Nowadays, Hudson has become big enough that there's no shortage of exciting/challenging problems to work on, so it managed to keep me focused for more than 6 years now.
DZone: At what point did you start believing that you could build your own business around Hudson?
Kohsuke: To be honest, I'm not sure. It's not like there was a specific point in time where the answer changed from "no" to "yes" --- the process of conviction was more gradual, and mostly at the subconscious level. I think this is true with many people, but I really didn't think too much about other options seriously until the situation made me do so. My part in Sun was mostly enjoyable, I liked the people around me, and I enjoyed the freedom given to me.
But when I really started thinking about what to do in my life, everyone kept telling me that I should go on my own, and as I thought about that idea, I found it convincing.
DZone: How many people work at InfraDNA right now? Do you have customers yet?
Kohsuke: At this very moment it's just me, but stay tuned for the updates in the near future. And yes, InfraDNA has a few customers, and while deals aren't deals until signed, I think we'll have several more soon. Not too bad for a brand-new company, I think. And hey, if you'd like to see that number grow, contact me at info@InfraDNA.com!
DZone: How involved are you in the continuing development of Hudson? Do you ever plan on developing a 'souped-up' commercial version?
Kohsuke: I'm very much involved in the development of Hudson. It's partly because doing so is critical for InfraDNA and the Hudson project itself, but it's also partly because many prospective customers are interested in engaging InfraDNA to implement long-overdue changes to Hudson itself, and most of them do not benefit at all by keeping those changes private.
And yes, I'm working on commercial plugins and tools around Hudson too. I hope to launch them quickly, but I'm still busy coding them right now.
DZone: From your perspective, what's the current status of the CI ecosystem?
Kohsuke: I think CI servers are increasingly playing an important role in the software development process, and its role is expanding far beyond the original definition of CI. It's no longer a mechanism to just do a build/test to detect regressions, and it's becoming a place to build an elaborate automation of software development workflow, ranging from controlled flow of change sets to continuous deployment, performance regression tracking to release automation.
And then there's the dawn of cloud computing era, where the ability to utilize a larger number of computers effectively gets more important, and that's what CI servers are good at.
I think Hudson is well-positioned in this space. The fact that it's open-source and that it has unparalleled extensibility makes it a great platform to build all these integrations on. Many adoption surveys indicate that it's the #1 CI server, too.
So all in all I think this is a very exciting time for the CI ecosystem!
Kohsuke Kawaguchi Image via Andre