Kelly: Hello everyone and thank you for listening into our podcast at Open Source Architect where we speak open source. Kelly here and I am privileged to introduce our guest today, Jenkins creator and CloudBees CTO Kohsuke Kawaguchi. Kohsuke we are honored to have you here today and welcome to Dallas.
Kohsuke: Thank you very much. And I’ve only been here to make connections to different airports so this is the first time I’m getting out of the airport and really enjoying this place.
Kelly: Well and we sure thought you were having a good time too. It’s 75 and sunny today here in Dallas and in a month or so we’re not going to have this nice weather it’ll be so hot the only thing you’re going to enjoy is your air conditioner.
Kohsuke: Yeah well you know my wife is also from Texas and she spent a lot of time in Austin and so she used to tell me that you can make an egg boil on the front of the car. So I guess in that standard I suppose this is nice weather.
Kelly: You know I’ve never actually tried that before. But you didn’t come all this way just to watch an egg boil on a car. How was Dev-Ops Connect in Dallas today?
Kohsuke: It was a great event, I think a lot of people came and many of them are already using Jenkins so that’s very great on that scale so yea a lot of good conversations, challenges that these people are facing and I got a lot of good ideas out of those, so that was a good day.
Kelly: You did good, so that’s what you were kind of hoping to do too. So we appreciate you saving some of your voice to speak with us this afternoon. So the creation of
Jenkins is obviously the product of many many hours put in of work and persistency, what inspired you to continue to build upon Jenkins?
Kohsuke: Right so well basically I just like cracking programs.
Kohsuke: So and then especially when you can get some feedback from people around you because I could use this in the work place. My colleagues that people who I work with you know, they are using it. And they are giving me their thoughts about it. Here is something you can do better or maybe you can make it do that and so it’s kind of easy and when you have that kind of feedback you can keep going.
Kelly: Right ok. So you kind of take what they’re saying and it just kind of naturally comes out to help make it better.
Kohsuke: Yeah yeah and over time that can help because it is an open source project, somebody picks it up and next thing you know a lot of people that I have no idea who they are, are using it. And still they are giving me ideas and again with some validations like that it’s really easy to keep going.
Kelly: So going back to Kohsuke before Jenkins maybe when you were in college or before. If someone were to tell you that you would be the creator of Jenkins one day what would you have thought?
Kohsuke: I don’t know I don’t think I mean I probably wouldn’t have even gotten the concept of this because so much of like what’s driving innovation in the industry is reacting to the newly discovered program. In other words like every time we invent something like we get to the next level that surfaces the next level program that needs to be solved so you know when I was in high school there was no internet and you know it was AOL basically.
Kelly: So when did you get introduced to Internet?
Kohsuke: I think I was like I think it was in college and yeah because I remember that you have to pay the phone lines.
Kohsuke: To get the things.
Kohsuke: Yeah exactly like the concept of like a server application and so on.
Like a web page or something. Yeah I don’t know I mean. I knew that I wanted to keep writing programs. So maybe that part I probably don’t feel bad that I’m doing it and I’m making a living out of it. But beyond that I don’t think like you know people have this concept.
Kelly: So you created Jenkins however was the butler your idea is well?
Kohsuke: Yeah so when I originally wrote this software like I have this thing that the role of that an actual human being was doing in mind so to me part of the motivation was to replace what she was doing. I thought it was kind of joke that even a machine could do.
Kelly: Yeah so it’s like servicing you.
Yeah so I started thinking this as like another person on the team. So the butler sounded like a kind of people who serve other people. So I wanted to give it kind of the Butler theme. So that’s how it came about.
Kelly: Did you have any other ideas before the butler that you were toying with or did the butler just immediately stand out?
Kohsuke: I think, maybe well I don’t think that I did. I mean I created hundred of projects. And so this just wasn’t meant to, it just happened.
Kelly: I actually just showed you that we have so much fun with the butler on social media and using them for fun creative tweets. Do you have any suggestions for a mascot for open source architect? Because we don’t have one.
Kohsuke: Ok yes I really like that there are a lot of people are having fun playing with the butler I think you’ve seen some of those like the super angry guy there’s like a guy with lots of medals on his chest.
Kelly: The fit butler.
Kohsuke: Yeah there’s one with a CloudBees t-shirt that is also very popular. So yeah I don’t know I haven’t thought what would be good for you guys but I’m sure you will come up with one.
Kelly: Well I hope so I guess I’ll have to step up my research on that one. But speaking of research you know Jenkins has a ton of new features and plug-ins that are introduced pretty frequently. How much time would you say is invested in researching these?
Kohsuke: Yeah so the beauty of the way it’s put together is like you know I don’t have to come up with all of these ideas, so we create this platform that the people everywhere can then you know look at what we put together and then think if we could do this it would be really great and then we basically we are empowering them to do just that. So every other day like right now, I think the pace of it is kind of like why don’t you target every other day like someone come up with an idea and write that down into executable code and then make it a part of the community. So most of the interesting work I think that’s been useful wasn’t coming from my idea but done by people all over the world. The few plug-ins that I’ve personally done like I usually do them by like my need around me, so somewe get certain ways of work. So like I was trying to quantify that process and execute the whole thing and then so on and so forth. Sometimes like I come up with an obviously, seemingly obviously good idea even if I don’t have any use for it. I see it through to integration, just to kind of drive the point and make it, make the point obviously to other people, that we can do these things at Jenkins and then the other people take that home and kind of carry that torch forward and other people integrate and build something similar on other platforms. So I don’t need spend all that much time researching but it kind of.
Kelly: So with all these contributions and everyone’s ideas that are being put in have you started to notice any trends lately?
Kohsuke: Yeah so there’s, there’s definitely some of those. I mean the there and you can sometimes you can see the stock up trend. That context in which you put a lot of independent effort. So one of them I think is, like for the lack of better discussion, the drive toward the state. There used to be that more people are interested in going to the web, the user interface and you could click around to get stuff done. But I think in the past I don’t know maybe five years or so there’s more push toward defining these things as a text in the emerging control system, instead of like a dui. And so there’s a lot of people that chipping away various parts of Jenkin’s to kind of push us into that direction so that’s clearly one. Maybe another one could be a container for it. So there is the Docker is the race so we suddenly have this ability to spin up essentially an entire system but in a matter of hundreds of milli-seconds. So that creates a whole lot of use cases and that sort of tracking or giving people inspirations to create more interesting kind of capabilities to list automation that we are trying to push forward, so that I see it a lot.
Kelly: And that’s pretty encouraging for you because I mean it’s almost like you have fresh ideas all the time and they all kind of play off of each other right?
Kohsuke: Yeah yeah exactly, it’s like you know they invent something and we think about oh we could pick that up here and then like these other guys say oh we can do that. So there is clearly some kind of extent of ideas that are driving this industry forward.
Kelly: Well community is definitely a great word for what you’ve been doing and so from what we understand you wrote and taught the first Jenkins course, is that right?
Kohsuke: Yes so I saw the, I believe the bulk of the training material was actually developed by somebody else but I did a piece like you know we were so small like we didn’t really have any dedicated people dedicated to training so I did my own share of different trainings. Yeah.
Kelly: Well, well our instructors actually still teach that today. Can you tell us a little bit more about the new course that we will be teaching?
Kohsuke: Yeah so I think that when I was originally doing it, it was a one day course and over time we are improving the material to cover two days so it really starts from something very like, it doesn’t need prior knowledge of Jenkins but kind of gives you the perspective of typical things that people can do. And then we move on to some advanced topics and that covers the CloudBees Jenkins platform. So I think that’s the, what we have done so far.
Kelly: Awesome. So with the older version of Jenkins what’s your favorite plug-in?
Kohsuke: Yeah so you know what’s, I mean there are a number of interesting ones. So one, there’s this very I suppose famous plug-in called Chuck Norris Plug-in. Which adds this like a silly quote from this movie I mean I haven’t seen his movie so I don’t know what it’s like but it has like a silly quote. But it has jokes, it is a joke plug-in. But originally I didn’t really get the point of I thought it was chuckle inducing. But later like what I learned is like the part of the part of the point of doing these CI would be to have to make developers come back to the UI to act on the failure or problems the CI’s have discovered. So in some ways in some very serious ways anything that helps people come back to that user interface is kind of helpful. And especially you can do it in the soft way as opposed to like you know using a stick to force people to do it that’s good. So I kind of learned that even those, what looks like a silly thing is good as opposed to being bad.
Kelly: Absolutely, have you seen our twitter? That’s why silly is good.
Kohsuke: Haha, yes for some people it is really obvious.
Kelly: Exactly, well and you know there are a lot of analogies out there for Jenkins such as like automation engine for CICD. What is your favorite analogy I guess that you could use for us?
Kohsuke: So I mean when we talk to the business people or the management type, we need to be able to explain or justify what we are doing and in the context of or lesser extent of CI or I guess deployment it would be useful for those. But I guess from geek to geek I’ve been doing a little of everything we’re trying to do is automate things. The different things you know every time we expand the meaning of automation there is like a next day or next thing that you could automate. And then we keep doing it so in some sense I think of the Jenkins, so the platform to do just that so it may be I think why you started calling us the automation engine. But it’s also like kind of a meaningless word because I mean everything the computer is doing is automation so I don’t know. You know I’m not good at marketing or coming up with good ways to describe things, but I see Jenkins that way.
Kelly: Ok nice. So what are some of your favorite things about 2.0, Jenkins 2.0 that stand out from 1.0?
Kohsuke: Yes in 2.0 we have basically three major pillars. The first one is this pipeline function right. So we are adding this whole entire new subsystem to Jenkins that is really helping people more there like on this continuous pipeline or any other coordinated automation activity at a much higher level. So that’s, we spend a lot of effort on it that’s the, I think that’s the most exciting part of it. You’ll see a lot of that in it going forward. We’re trying to rally the community around this being the new pillar in Jenkins. And then the second part is that we have sort of tried to create more curated like develop well the garden experience in other words. When somebody starts with Jenkins they get a feature function, which presents what we think is the best, the best practice of using Jenkins. Well let’s say 80% in use case. And then so you can get the new user you can get a lot of mileage out of that by using what is officially best. And before you start entering your own past by installing you know some other things. I’m hoping that that would help us focus our development and code effort for making sure that those that can be curated supports all together. And it also makes it easier for new users to get up to speed with Jenkins because it provides something richer, so that’s the second pillar. And then third pillar is like we have improving and making some tactical improvements in the UI. To things that people use everything, we want it to be made a little better because that’s a criticism that we take. It looks so dated so we are trying to fix some of those. So that’s the pillars, there are a lot of things going on right now.
Kelly: What advice would you give to new Jenkins users coming into this 2.0 release?
Kohsuke: Yeah so well the part of 2.0 we are creating, we launched, we actually already launched the website called Jenkins 2.0. And then one of the big parts in there is the getting started experience the getting started guide and then I provide some other sort of documentation that kind of gets you oriented. So we don’t want to like you know right, we don’t want to force people to get stuck over or searching Google. So that would be the first stop that I would recommend for new users to go, and then beyond that there’s a pipeline so I encourage people to check that out.
Kelly: Yeah because there are so many ways you can research and go online and spend hours and hours and hours but do you just recommend if you’re gonna get into it you might as well just jump into a Jenkins course?
Kohsuke: Yes if you are really really new, right and I mean you haven’t even than any of these things and a training course I think is kind of a good way to get an overview of, kind of the “lay of the land”.
Kelly: Like a foundation of Jenkins.
Kohsuke: Yeah exactly.
Kelly: Well do you have anything else that you want to add before we go have a good rest of our Dallas time, while you’re here?
Kohsuke: Yeah I think. Yeah I think it’s. I think we covered things well so yeah.
Kelly: Well we are honored to have you in our office today. We look forward to going to dinner tonight and we hope we see you here again soon.
Kohsuke: Thank you very much.