In this episode of DevOps Radio, we hear from Kohsuke Kawaguchi, CTO at CloudBees, Inc. and founder of the Jenkins project, on the release of Jenkins 2.0.
Andre Pino: Today you're listening to a special Jenkins day podcast. I'm your host, Andre Pino. And I'm here celebrating Jenkins day with Jenkins founder Kohsuke Kawaguchi. The reason I've asked you to come on the show today is because I want to give listeners the chance to get inside the mind of the Jenkins master on this momentous occasion of the launch of Jenkins 2.0.
Kohsuke Kawaguchi: Yep, me too. Thanks for having me.
Andre: So today is actually a pretty big day for the community, right? After ten years and 655 releases, Jenkins 2.0 just formally launched – the longest 1.9 release ever. So why now?
Kohsuke: So the project has managed to gradually evolve over time quite nicely. But I think the – so that kind of makes the 2.0 even more significant, like the first time in the ten years history of the project that we are taking on the major version upgrade. And the reason we are doing it is I think when we step back and think about what Jenkins has traditionally focused on, the focus around the build and test automations, and despite the fact that there are a lot of interesting things have happened in terms of plugins, those are still left to the exercise of the user to put them together. So it was kind of a painful process – if you're new to Jenkins – figure out where the cutting edge stuff is, and then sort of see how to use those. We just weren't doing the justice to all these new people who are joining Jenkins, coming to Jenkins now.
Andre: So KK – how is Jenkins 2.0 going to be rolled out?
Kohsuke: We've been producing these alpha and beta releases of previews, and we've been gradually exposing it to more and more people so we can get more feedbacks. And at some point, this is going to go into the release candidate and then we're gonna produce the _____. And then so what's going to happen here from here on, is actually like we're gonna go back to the usual weekly schedule, so there will be 2.1, 2.2 and hopefully another 2.650. And then for us importantly for some of the users, if you're using the LTS version of Jenkins, then at some point in the future hopefully within a few months, we're going to pick up the next baseline for OPS and that will be based on 2.X. So at that point, you will have a stable 2.X _____ to migrate to. SO that's I think the general release roll out time.
Andre: So how easily will it be for folks to migrate to Jenkins 2.0?
Kohsuke: Compatibility is so deeply ingrained in the psyche of us that even though it is a major version upgrade, we basically check everything that's necessary to keep the Jenkins cooperation working. So it is a drop into placement, you can adjust – if you're using the native packages you just need to use your package manager to update. If you're using a raw file, you can just drop the Jenkins form and overwrite your old versions and it will come up as the same set of jobs and plugins that you're using today – the already free upgrade.
Andre: You've really come a long way since the very early days when developers were running Jenkins under their desk. So where is the Jenkins community today? What do the numbers look like?
Kohsuke: I think the last number I see was around the 130 or something like that. I need to remember this number. Yeah, I think it's like 130000 installations we track around the world.
Andre: And today continuous delivery is all the rage, so how do you see Jenkins within that context?
Kohsuke: A different part of me have different take on this. In some ways it's still the same thing about just automating things, just a different part of what we do _____ goes well, and _____ very real solve problem that everyone can recognize the need to do. So we are just moving onto automate more and more things that was just previously not possible. But at the same time, I mean there's the CTO of the company – I see the value of being able to explain these automations in ways that other people can recognize and value. When we say continuous integration for our build automation, it's squarely an engineering concern. It doesn't bubble up to the level of anybody that matters. So that really controls the amount of resources we can throw at those problems. But the term continuous delivery kind of has this much stronger connotation. It acts to end to end automations and by doing that it could – the term – we can now talk about the values of the business people recognize, oh, we can turn the idea into the functioning production website faster. This is about helping the delivery ideas faster. That's the sensible thing. We can run the build on the servers, without me doing _____. So I think by sort of helping us explain these things more crisply, it allowed us to _____ improve this field faster. And I think that's a significant contribution. I think that's what's going on now. The ____ automation is keep on getting bigger and to the point that now like you're talking about entire end to end automation, that's really nice
Andre: In your role as chief technology officer at CloudBees, you look at a lot of different technologies and a lot of different trends. What are some of the hottest things you see happening today in the technology unit?
Kohsuke: So there's a few technologies that really excite me and I think one that's about to hit the mainstream is the containers – the Dockers and that sort of things. As I'm sure everyone has already had hard to the desk. But what's interesting about these things, these technologies push the envelope automation in certain ways, so now you can launch new containers, new copy applications left and right and throw them away without leaving any trace. That's a brand new capability that previously wasn't possible. And when people are doing Jenkins look at those technologies, the light bulb goes off in your head, oh, these things are possible, we can actually improve Jenkins to do that. And then leverage the capability that the containers are providing. That all together allow us to tell a brand new story that just previously wasn't even imaginable. Those things that got developed and then hopefully that will create another round of repo effect that this time around challenges the run time guy that oh, this server is doing these things, so that means if we can do these things on this side, we can do something even more interesting. And so that's kind of right now going on very much in this space and I love that. So the complete ____ in the future, I think what's really exciting is more the machine learning. We are starting to automate what's previously thought as like a scaling of human intelligence, just today I saw the news that the computer beat the best Go player in the world. And well, we have used the machine learning in the field of software development all that much. In the larger deployments of Jenkins, those people started to recognize this problem where we just can't look at the individual failures, or the state of individual projects that's running in this whole Jenkins deployment. So if you have I think there is room – growing room – for this machine learning to start playing some role in this space. And I think that's going to be exciting. That's the next case of improvement of automation if you can ____ that space.
Andre: Sounds like some really interesting things coming down the line. So as we conclude our time today, KK, you know, maybe you can finish up by telling us something about Jenkins that probably no one knows?
Kohsuke: So like a favorite topic – I grew up in Japan. Right? And so this – actually, let me start this again. This is actually about colors. I grew up in Japan and this is a country where if you ask children to draw a sun, they pick up red crayon, not yellow. Whereas I later learn that in some other parts of the world, people think sun is yellow, whereas in where I grew up, people think sun is red. And we are all seeing the same sun, but the community association between what you see to the world, that you're using, it's going to skew your perception. I obviously took it for granted, until somebody pointed this out to me. But there's another one of those where you know the traffic light – the red yellow. And in Japan you call it red, yellow and blue, not red, yellow and green. The go signal is not green light – it's blue light. So when I was writing Jenkins, to represent this type of things where everything is good, to me it was obvious in a nutshell to use the color blue for that. And later, like you know, my colleagues discover, this wasn't making no sense to them. So one day they asked, "Why is this blue? It always puzzled me, like why is it blue?" And I was like what do you mean? That's the traffic light. And that's when I discovered there was a cultural difference in how you see those things. And to this day I think the people are still puzzled about it, but just like in the good old Jenkins tradition, somebody wrote a plugin that turns this blue color into green color, and this turned out to be one of the most popular plugins. It's one of those trivia that people who go long enough in the project discover. And I feel like that's not outside obvious. I don't know if that's something that nobody knew, but I think it's a nice little note to end the interview with maybe.
Andre: Thanks so much for joining us today, KK. I just want to remind our listeners that they should head over to Jenkins.IO where they can download Jenkins 2.0.
Kohsuke: Thanks for having me.
Andre: Like what you've heard today? Don't miss out on our next episode. For more updates on industry buzz, follow CloudBees on Twitter, Facebook and LinkedIn, or visit our website at CloudBees.com.