 Is that okay? That's better. All right. I apologize. I Stopped coding for a while. So I'm no longer like technically savvy anymore. So first the a public service announcement so later today the People in the Jenkins committee are meeting at the H3 242 So if you're interested in meeting the rest of the community be there and then we have fun so So today I kind of wanted to talk about I guess a bit of my experience of you know going from a open source hacker to sort of Company around this effort in the hope that it will kind of help W who are thinking about you know the similar journey at some point. So I So I'm a hacker and I created this project called Hudson That was you know the code continuous integration server while I was working at this company called some micro systems. It's Some of you might already not know which is kind of a little bit sad and this project became Jenkins and then At around the same time I left Oracle. It didn't take long for me to discover that Oracle is not my company Which which speaks more about myself not about Oracle. Just just so you know And then I started this company to build a business around the Jenkins projects And then it kind of really quickly joined hands together with the cloud is and then now I'm working at the CTO of cloud It's so Jenkins. It's at this point. It's this right now. It's probably the Best described as the open source automation server. So people use it to do all kinds of software development automation work the batch processing to even monitoring a Nani cam which is like a one of the most exotic use case that I've heard about it And then it has the quarter of the medium Installations that we track around the world and then they are correctly driving almost close to one million computers To drive a lot of again these workloads So I'm kind of a responsible in a small way for the climate change because all these computers like a generating feed Right, that's not great But everything else is great So we estimate, you know, they probably in the users in the order of millions. So this is a this became a pretty big product And so clubbies it's a company I guess behind Jenkins is a bit of bit by different difficult statement And I'm gonna get to that little later, but it has a we have a lot of expertise around DevOps and Jenkins and we help people Sort of drive this continuous delivery project or the DevOps initiatives at the enterprise And we have this The product the support some which I'm gonna talk more about the details And then last but certainly not least by doing all these activities We can hire people if we work on the Jenkins project to push their foot forward and in this context I think that's the part of part of it that really makes me proud So the reason this talk is called hackers gotta eat is, you know, we gotta earn some bread on the table Right. I mean the especially after the sun went down the tube Like I really left a strong impression on me that having a good technology is not enough You have to know that they make a big enough impact to the world You have to create the sustaining sustainable model and when you can bring the money to the table that opens up a lot of Fossility of how to sustain the project. So, you know, that basically comes down to making money So I don't feel about that as a shame. That's at one point. I used to be so I wanted to talk about some of the different Models that the people have pursued And we have also pursued so The first one I'm gonna mention is that Professional services So the idea here is, you know, so you you or like a some number of the contributors that you hire as employees You go out and then you provide your services. So you show up in person Maybe consult on something write some code together help them like a fix problems, whatever and then you charge for the money So So this was really great in the other you on so this was the very first thing I took home is another guy And then you know by then the product was kind of reason we don't know, right? So people already knew who I was and then it wasn't very difficult to land a few gigs like that And then I also gained this very up close experience about How people use our software in the real world that in my case I was about the user of my own software along before like I just turned into the full-time gig So I knew like where I knew something about how this was used But it was always interesting to see the whole in different environment like a entirely different company Using my own software and then that gives you a lot of thoughts about what needed to be done So more than money was helpful in like a getting the direction of the project in the right way. So And then this consulting work, it doesn't really require any huge upfront investment Basically, I just need to turn jump up and down and say hey like I'm ready to take your money And then some people will basically show up. That's as it that it's not easy Especially you know that when you get bigger like I think so obviously change But the next one I kind of wanted to talk about is training So, you know, this should be also pretty obvious, right? So the key idea is you know, you teach people how to use your software or how to run them And and it does require some upfront investment as in like in order to do a training You have to create some materials Labs you have to figure out some logistics like how to get the venue and you know some level of marketing is necessary And all that but still this was in the grand scheme of things pretty easy thing to get started I think you already know a lot about the software you produce and it's surprising more crappy than you think it is People need all of the information about how to use it effectively So that was in fact for me like a one of the key like a benefit of doing this was as we are writing the training materials You get to see how your software is coming across to users and you feel like oh, this is not great Like I got a fix of software so that I can write this part of the training materials a little better And that feedback to it that's kind of really useful and once you hit the classroom like it repeats the process it repeats again Right, so you have a live and then like you watch people struggle behind your shoulders And you get a lot of insight about oh, this is how they get stuck right and I can be for the system Produce some weird error messages and like a people are really struggling how to get for and you get a like a very like an insight for viewing to Different use cases in much more scalable ways than the professional services. So so that was really great my training also Like, you know can produce a fairly significant revenue for the amount of time you need to put in because so that you show up for the One-day training and you have 10 people say charging for 2k each So that's already 20k now you can't do that 365 days a year Like there won't be enough people who want to train like that, but still if you're trying to combine this that's a you know Save some time to do the product then this is kind of like a nice combination. So Ali on like I you know, I was I did you know, I Did them I did I did the training myself And then you know to the point of like at some point my my brain is like a stop Like a switch to this automatic mode and I can just talk about whatever in this next chapter without even thinking about it and then so that the part of like a repetition start to kind of You know Made it little made myself little less motivated over the period of time But are the only did it was great And also you get a lot of conversation going with the people coming and that's almost like a half the value They are getting is not just a training money off But the fact that you know they can engage is what all sorts of like you know the conversation and they describe the challenges They have and then again those things you did it help you Calibrate what problems in like in the space that your software could solve and then that leads to The another common thing that you can do which is to enterprise product So the challenge you is the training and professional services like fundamentally does not scale right every time you deliver Something you got to do putting some work The product is the sort of force more scalable thing so you can build something once and then so multiple times but So so it's kind of like obvious destination that that we all head to at some point But like I also discovered that this is a very interesting challenges work. So In the open source, I was like I was more used to the idea. Well, let's just put the code out there And then you know people people who know what they're doing is gonna look at that and they grok the idea and then they start using it Right, that's kind of like a hide a good open source software spread. It is like a words to words words of mice between the ball forcing in occasions like this now Enterprise software does not sell for itself Especially when you have a competitor for the open source project. That's just as great and it's completely free It's a you need this like a salespeople and that's a different beast and You know, you also have a open source guy like that's something like I had like a zero experience on so In my case, he was like I was very lucky to kind of join hands with the forces of the clubbies We are like a day, you know, but even back then we like a cubby's built a small Enterprise sales arm and then over the period they so that was 2017 11 the night eight years forward You really see like I really saw How the sales or has grown not just in size But how they approach the problem of selling and that's been kind of fascinating and really made me appreciate about Oh, this is a art of its own and it's better to bring the right people But anyway, the point is that you need these folks And also in order to sell a credible product You kind of need some critical mass of features and stories and that's sort of really how the only was difficult So very first features that I implemented that eventually kind of became the foundation the enterprise product They did it through the the consult the professional services I was able to find this arrangement where somebody wanted their problem to be solved But they're willing to let me keep the the IP So I could keep the code and I can sell it elsewhere basically that was the idea So I didn't do professional services myself long enough to see if that's a common setup or not But I'm still very grateful that that person who kind of let me solve this first bootstrap problem Now if you can raise the money and so on that's less of a problem And so so there are other ways to walk around that kind of things But I really enjoyed that That you know the being able to build something knowing that this already solves somebody's problem because often that's kind of hard thing Like you think you feel like and some people must need these features But you never really actually know that and in the open source project You kind of you have a ways of there kind of violating and cross-correcting throughout the development But proprietary product is not like that if you're selling it They expect the software to meet certain quality from day one That means like the point in which you can discover when the features crap is actually pretty late in the game Then as the effort kind of gets bigger the next sort of a challenge was how to Like a driver defensible clear line between what happened in the open source and what happened in the product In part because you know your open source project is like a thriving and happy There are contributors implementing feature left and right So if you end up picking the proprietary space that's too close to the open source Then what's going to happen is the community people think oh, that's a great idea Let's implement this and then like they suddenly do some of the features material in the open source or The other case is you there are certain things only you can do but I'm Then if that's close to close the software that's in open source It can come across as you are sort of like sucking the oxygen I love the open source products by intentionally not letting that go into this space because you're trying to keep it in the enterprise product And that could create like a trust program or in the worst case It could make to prevent the software from base open source of there from getting improved Sufficiently and then you lose against the competition in the open source space. So there's these challenges like that The other thing we kind of got early on that I didn't like appreciate the importance was Instead of charging it once Like you gotta really like a notice you gotta be charged for the subscription meaning like every recovering money for a year And then that sort of changes It's not just about how you charge the money But it really creates the entirely separate motivations and like a motion around Sales and how do you make your customers happy? How do you license? How do you price them etc? so this I think Nowadays It's not it's more and more common people are used to that idea. Thanks to companies like Adobe Pushing that but I don't know this one's still pretty high friction thing And last but not actually then the next one that I wanted to talk about is support like a software as a service This also is pretty obvious one right like you produce a software. It's great So you help people run it by taking on that responsibility on you It's a very easy to understand It's a very easy to understand model and there's also inherent economy of scale Especially if you start hosting lots of people. So that's how you kind of create the margin to make money now But this is also kind of like a tricky there's always People especially Ali adapter of open source projects They they tend to they have people who can control more of their time But they don't really always have the control of the money so the trade-off that's going on in their head is well I can run this service on my own or I gotta ask my boss to you cough up Ex-amount of money and that often they don't make the right trade-off like a right judgment call for the organization So there's all you have to kind of always fight against that and then that also creates this upper bound in how much you can charge and It also in case of a software Jenkins, right? This is fundamentally more customizable for individual user so the scale of a Economy of scale for in your case was really hard to achieve now some other projects are not like that So then they are good, but there's always this type of war between Needing to customize against individual users Versus trying to run the uniform things as widely as possible for the better economy of scale And then nowadays obviously the problem is this is that the you know If you are really successful, then I was only to come over. Hey, you got a nice cake over there. Let me have it Now I in some sense. It's like a great. It's a sign of success I don't necessarily mean it to the problem and it only shows up at the fairy down fairy down the road So you have enough time to build some other, you know The competitive advantage and so on but but I guess in this current climate. I Feel like I gotta mention that So next one, I think the last one I wanted to cover is support So, you know, I think again, this is also a very obvious concept You know, you're providing not the software as a service, but the expert expertise as a service So these things are really helpful for the larger organizations in ways that I originally didn't understand But it also kind of naturally complements this typical shortcomings of open source project Which is again, you have a bit but most often like you don't really you don't do enough job on explaining how to use that software or like how best that should be used or How to enable lots of people to effectively use that project So support it kind of nicely complements them and as a result what it does is it really drives the Adoption of the software at the largest scale in the bigger organizations. So open source project again Tend to be adopted in a bottom-up manner. So right. So if you imagine if you had like, you know, 5,000 developer company like Well, I don't know they say IBM. Well, then 50,000 companies Then it's usually open source for that happens in ways where like a one guy in the team Just decided to install that on their computer or like a run it on their ECT account, and then that's it So it's sort of like isolated. Therefore that different pockets of the world Which is kind of not very nice for the larger organizations So what they are often trying to do is well, let's figure out how to make this like, you know, the really widely like applicable for the entire organizations and that needs the second line help that needs training Certification and that those are the kind of things that actually pretty like a lucrative for commercial business around open source in ways That really help the open source project. So So the support was useful, but this is often also kind of like a hardest one to launch, right? So you need a like, you know, when I was just doing this with me and another buddy Like I can't really claim that we have a credible support Like I didn't want to be waking up by like a 4 a.m. But somebody in the India was having a program So it took the larger organization people around the world and some processes and all that stuff to do So it's a art of its own again And then you have to also, you know, hire the people with the right expertise or figure out where to train them All right. So that's kind of like a different Business models and some of the so in actually if I move on we the up cub is we did all that Right and then all of these things kind of help each other or like your emphasis shift from one to the other as a company of the project gets bigger So I think you'll you'll find some of these combination in perhaps in different combination useful for you But these are the key ingredients So another thing I kind of learned a lot about this interaction between the open source project and the company is around people And because they you know, we in the community here in the community they bloom So we understand the importance of the people who push the project forward It's the same with the company and then when you try to do the company around open source project Well, what often you do is to hire people from the project, right? That's where you know the good qualified people And you know, you already know you don't need to train them because they already know your code base They already share your mission. So like a lot of what needs to be filtered out is already happening. So that's super convenient Now the second point and then you know people you already know how to work with people Which is actually true and false in something like a sense some fascinating way But I don't have enough time to talk about that today, unfortunately So and then you know employing these people because they already like believing the like a passion and the mission of the project What that enables you is like they can sort of like translate that passion into make a bigger impact Like you know these people say sometimes we hire people who are only working in the project as a weekend spare time thing Right. So and then when when you can sort of help them and uplift them from that that spot to be able to work on the project full-time They can do it like you know five times ten X more impact. So that's really valuable And then the other nice nice thing that I saw happen is like these are often like a local Jenkins champion in the company And when we bring them over that their boss is like, oh Not crap like okay the guy who's been running Jenkins for me is gone I guess I need to buy the support. So not only I get the employee, but he brings the sales lead It's like a great like double whammy Now that's it, you know the hiring people from the project that's coming is the challenges. So sometimes Because they are so passionate about the project There is a boundary between like how much is a company's work and how much is like They're working on some things that the company doesn't really care about but they personally care about it could become That somebody has to think like that can get really painful and or the other people in the company, you know It's it becomes a little unclear. Okay. So this guy is You know, it's the employee of a company is working on this project So I'm gonna ask for them to do more but it turns out that the guy is actually not working on it as a day job It's just that he's like we can passion plug-in or something and then so that created some friction like that And then it's also not really healthy if you start to occupy say like a one more Contributor base into the single company So suddenly what felt like a level playing field is not like I suddenly lopsided into one big guy and lots of small folks And that creates a tension in the project And every time that somebody I mean this is kind of career way to say it But when they are working outside the company, we were not paying them anything and they are still contributing to the project We brought them on board now. We are paying them and then so We kind of lose out in sense that they sort of getting a free labor, right? They're sponsored by other parts of the the world. So that's also not quite healthy so over time it's kind of well Let's see So, yes, so over time what happens is Actually, let me just move on here So then the the fact that when this company gets a little bigger sort of creates more like a certain Dynamism around how to interact with the project. So we wanted to Create more like a smoother boundaries between the people who know how to interface with the project And the rest of the company if you may or may not have the open source background Which is the kind of thing that happened in the company. It's here And it also like try to be more on the same page like it's kind of embarrassing if I say If I kind of go out in the community and hey, like we think it should we should do this and another another Like I play from the company says oh, that's a horrible idea Then I get sort of like, you know, we both of us kind of do is a credibility Having some opportunity to like I could discuss Like what we are trying to drive in the community get the feedback I can you know do the next time have some conversations just a course so that everyone is happy That's sort of being a part of the viable cycle And now when things get bigger the other things change. So for example, the you know open source DNA Like, you know, the originally when I was hiring everyone from the same community We kind of naturally bring people who feel the same who feel in the thing the same way But as the company gets bigger, obviously you start hiring other job functions people from outside the community And that will move your sort of you can't really take it like open source DNA for granted And then it doesn't meet or they even worst case is there are other people who does other open source product in different ways And then they feel like they have open source DNA But they you and them mean the different things so it requires more conscious care and maintenance on the other hand Every time like any time you have this project or any community It develops a certain kind of group thing because it's a self-future in process right and then The fact that the people feel things the same way Makes them blind to certain kind of risk or the opportunity etc. And then like when we talk about the Diversities importance of diversity in the community. That's what we are really trying to address Right, we want to make sure that the people are looking at the different things and feel the different ways So that the important idea so like a signal snow doesn't get lost So this was in some sense I really really rewarding by having people from different background People from outside people who do different languages designers people writing technical documentation This everyone brought in its new perspective and but I'm Also as a company kind of gets bigger the internal contributors needs to be treated more like external Contributors like because you can't really assume like you can't really command right So the thing when you when you're working is often so strategy You can't command them to do something you have to think about their incentives How to encourage them to do more how to help them feel successful and all of that It's very much to even if you're working for the same company and that's become more pronounced when it gets bigger, so So I spend victimized time talking about stuff So I'm gonna skip bunch of stuff So all of this like you might be feeling wow It's kind of complicated and it is complicated and it did a painful It's also like a worrisome at time. I saw why like is it worse? Why is it why bother like why is it worth doing so I think well? It's kind of like speaking to the core. I mean you already in this mindset I'm sure but I sort of fundamentally believe that the open source is eating the world Like it is the way like I think we have proven to the world that this is the better way to develop software And so more and more organization I think are getting the idea that this is how you need to like develop the software So in order to solve bigger and better programming open source because today We mostly rely on people's goodwill their spare time their employer. They're both being like a very friendly In order to push the project forward, right? But by the way, they only can take you so much so by Building this commercial activity around by using that money to fund the development and then for example One thing it allows us to do is to bring a different skill sets to the table So Jenkins project traditionally had a lot of Java developers But we didn't really have any design people and that showed in the software So one of the things that the club is able to do. Thank you This part more than I thought but So what was I saying? Yeah, so the company was able to hire the designer to work in the project Which did not actually happen again partly because of the group think and all that things So that was one great project single thing about the technical writer Etc. So to be able to bring those other skill sets to the table to be able to push the project forward To be able to make the project more credible in the eyes of large organization People behind the car and those are all have a positive influence to the project So I think you know, I think it's a really worthwhile endeavor because we all have to eat right Because what it means like open soft because open source software is valuable. It's worth doing more of But people's time is also valuable. So in order to get their time, you got a figure way to make it sustainable So on that note, I think I'm kind of the end of I think I run another time almost That's kind of a end of it for my talk and then just one more public service announcement both 4 p.m And then t-shirts t-shirts. Yes, this is important Great. Yeah, so please come from at the end to pick up the awesome Jenkins X t-shirts. Oh, I should throw them Ah, is that okay? Well, the rest I think to be fair to the people in the back. I'll keep the rest Am I amazing oh, yeah, I have question regards open source in a project which are Focusing on products which are not for other developers like Jenkins, but for projects Let's say for plumbers for small business owners for accountants for farmers where they actually they're not involved in it Would you somehow? Advise maybe new business models or something more specific for those kind of projects Well, yeah, so I guess the question is like if my domain is not targeting the other developers like what about it? So that's a great question, but I think about that sometimes my sense is obviously I don't have any experience But my sense is this project, you know get down as open source project, right? Because you don't really get like other contrived plumbers to join. Oh, okay. This is a great software I'm gonna improve this software of a hack in the cause they don't do that So I feel like they are better suited for the proprietary software and kind of avoid the problem