Engaging Enterprise consumers of OSS
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Subtitle |
| |
Title of Series | ||
Number of Parts | 490 | |
Author | ||
License | CC Attribution 2.0 Belgium: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/47251 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
FOSDEM 2020354 / 490
4
7
9
10
14
15
16
25
26
29
31
33
34
35
37
40
41
42
43
45
46
47
50
51
52
53
54
58
60
64
65
66
67
70
71
72
74
75
76
77
78
82
83
84
86
89
90
93
94
95
96
98
100
101
105
106
109
110
116
118
123
124
130
135
137
141
142
144
146
151
154
157
159
164
166
167
169
172
174
178
182
184
185
186
187
189
190
191
192
193
194
195
200
202
203
204
205
206
207
208
211
212
214
218
222
225
228
230
232
233
235
236
240
242
244
249
250
251
253
254
258
261
262
266
267
268
271
273
274
275
278
280
281
282
283
284
285
286
288
289
290
291
293
295
296
297
298
301
302
303
305
306
307
310
311
315
317
318
319
328
333
350
353
354
356
359
360
361
370
372
373
374
375
379
380
381
383
385
386
387
388
391
393
394
395
397
398
399
401
409
410
411
414
420
421
422
423
424
425
427
429
430
434
438
439
444
449
450
454
457
458
459
460
461
464
465
466
468
469
470
471
472
480
484
486
487
489
490
00:00
Enterprise architectureOpen sourceFingerprintAssociative propertyWhiteboardStrategy gameRandom numberCollaborationismExecution unitInterior (topology)Software developerHypermediaSimulationQuicksortEnterprise architectureCodeServer (computing)BitFigurate numberSoftware developerRight angleMultiplication signIterationNumberSoftware bugData conversionProcess (computing)Flow separationModule (mathematics)Different (Kate Ryan album)Software maintenanceShift operatorSoftwareMassOpen sourceProjective planeSystem administratorFrequencyKälteerzeugungGraphical user interfaceCuboidCanadian Mathematical SocietyAxiom of choiceDemosceneGoogolGraph (mathematics)Computer animation
09:59
Enterprise architectureSoftware developerCuboidProjective planeMaterialization (paranormal)SoftwareStaff (military)CASE <Informatik>Dependent and independent variablesMusical ensembleQuicksortCycle (graph theory)Standard deviationMultiplication signOpen sourceBusiness modelDesign by contractVideo gameEntire functionRight angleData conversionComputer animation
13:02
Coma BerenicesoutputEmailRaw image formatMoment of inertiaBit rateCodeIdentity managementTerm (mathematics)Open sourceBuildingOffice suiteSoftware developerBoundary value problemData managementTelecommunicationSystem programmingSelf-organizationSystem identificationProcess (computing)Software developerProjective planeClient (computing)QuicksortEnterprise architectureComputer programmingOpen sourceProcess (computing)Cycle (graph theory)Level (video gaming)Right angleOffice suiteSoftwareCodeAssociative propertyMusical ensembleAnalytic continuationDivisorSelf-organizationBoundary value problemFrequencyMultiplication signInformationExpert systemForm (programming)Queue (abstract data type)Interactive televisionRoutingTerm (mathematics)CASE <Informatik>Mathematics1 (number)Software bugSoftware maintenanceGreatest elementGroup actionLatent heatElectronic mailing listDifferent (Kate Ryan album)Goodness of fitMetric systemWordComputer animation
22:23
Chaos (cosmogony)Business modelInclusion mapMessage passingSoftware developerChaos (cosmogony)Extension (kinesiology)MereologyProjective planeMultiplication signSoftware maintenanceTerm (mathematics)Enterprise architectureOpen sourceFigurate numberMetric systemStudent's t-testUniverse (mathematics)CASE <Informatik>Software engineeringData conversionScaling (geometry)Touch typingRight angleDivision (mathematics)Expected valueComputer animation
26:30
CodeIdentity managementTerm (mathematics)Open sourceOffice suiteBuildingSoftware developerExpected valueProjective planeChemical equationMereologyMetric systemSystem callMultiplication signSoftware maintenanceOpen sourceMechanism designXMLComputer animation
28:03
Chaos (cosmogony)Inclusion mapBusiness modelMessage passingEnterprise architectureInterior (topology)Open sourceMultiplication signProjective planeOffice suiteMathematicsRoutingBoiling pointComputer programmingXMLComputer animation
29:01
Point cloudFacebookOpen source
Transcript: English(auto-generated)
00:05
My name is Jacob Redding I Am here to talk I what I didn't realize was I'm here to talk about I guess sort of a Contra because this entire day and the entire weekend is is Was more on the community side the project side and I'm gonna be talking a bit about the enterprise side
00:24
Like what if you're an enterprise software developer and you work for a really big company? So let me just tell you a little bit about how I got here So I'm an open source contributor have been for a number of years my first contribution I was 19 years old. It was into this project called jet box and another one called gallery
00:42
So galleries where I first got my credit as maintainer text and my name was there Misspelled but it was there. So I took it From there. I got involved in the triple community several years and first as a developer wrote a module went into the open source CMS
01:00
How many people have heard of Drupal or used it? Whoa, that's awesome and scary Because I first started there as a developer When I had like a full-time job and then I fell into this thing called the community I don't know if you heard of it but I ran a meetup in New York City with like five people then we ran a camp and there was like
01:20
we ran three of them and then 300 people showed up and then we ran a conference and 1,500 people showed up and then we had money and I was working with a number of other people and we started a foundation first here in Brussels Drupal VZW Dries started it and I had Volunteered as treasurer and then when we got some money we started a
01:43
Another nonprofit of the u.s. To help grow us which is the Drupal Association and I'm going to give a big shout out because the reason one of the reasons why that's Successful today and has grown to about four and a half million dollars in annual revenue and is sustainable is This woman right here Megan who spoke early on leadership. She just rocketed us up
02:03
So thank you Megan for making Drupal, but it is So I come from like sort of a nerdy side I you know, I was contributing into projects working with Drupal. I started to use my Business side of my brain on things, but this is where I came from. I came from sysadmin rooms
02:23
I was putting servers in racks and you know a Cisco certified engineer and and just wrote a bunch of code that was just sort of in refrigerated rooms for a number of years But then I got involved with Drupal six and a half years ago, I stepped down
02:41
From the or about seven years ago, I stepped down from Drupal from the being the executive director and I joined a small little company called Accenture and at that time we were 210,000 employees and now we're 480,000 employees
03:02
And they had pulled me in and said hey Could you help us learn what open source is and how we can better be a part of it? Not use it how we can be a part of it. So at that time we had no github presence We were obviously using open source and in that six years, you know now we're on github now We have an open source policy now
03:21
We've built a whole lot of processes and and ways of getting people involved in open source And that's what I'm here to talk about It's how do we get people like Accenture like my employer to get more involved in open source? And why are you know, why is it so difficult that in six years, you know Accenture is not here saying hey
03:40
We do this and that and that because we're not I mean I am but not in force, right? So there's reasons for that First I want to just talk about a bit of a story It's a bit of a never-ending story because this is open source and we hear this time and time again But the story I want to talk about is Microsoft and I was researching this recently because I find it very fascinating
04:04
I think a lot of you have been here for a while and you've known the history of Microsoft going from It's a cancer to we love it ish Right, and they're in that journey but a year ago Microsoft Made a huge choice They were like we're gonna move our inner Explorer rendering engine to chromium. That's a massive shift
04:27
right going from proprietary closed-source software that they've used for years to just move it all over into open source and Here's what I find Is fascinating about that is how did this big company this hundreds of thousands of developers?
04:43
You know strong company that's worldwide work with this other company that's also hundreds of thousands of developers worldwide How did they start working together? and I looked at this one particular issue Which was has anybody seen this issue recently by chance it hit the news
05:02
so Microsoft got involved and they found Basically, it's kind of kind of a bug or an improvement let you figure out if the bug or improvement But it was back in July and a Microsoft engineer said hey, we found this thing in Chrome It'll improve battery life if you just take her code
05:21
Well, that was July 17th. And so I just tracked it and said well How long did it take him to get that code in there, right? So on The exact same day rich big kudos to Google. They responded. They said great. Awesome. See your pull request See your code cool have some comments Now it's been nine different developers seven from Google one from Microsoft the same person
05:46
It took Seven months there was 27 different iterations in that There was one every, you know a few days or every few weeks, right? There's a huge bit of activity in October And finally it was committed on January 22nd of this of this year, right?
06:04
So we took almost what about eight months from start to finish and I just find that fascinating because not just that it's That it's a journey I think we're all used to a pull request journey taking taking a while But I find fascinating is what happened behind the scenes
06:21
And so these numbers are some of the things that happen within an enterprise Company and maybe why you see these challenges in that same period of time a same year So this is just 2019 Right This is only from Microsoft. So this is Microsoft's involvement in chromium. There were 1900 merge
06:41
Contributions but 343 pull requests that were simply put up there and abandoned meaning a developer said hey, I got this code and They ran away. They never commented on it. They literally threw up there and they ran away That's one almost every day for Microsoft
07:00
All right 6369 current ongoing conversations are happening and there's 61 of those that are installed Right. This is only in one year one calendar year So that's what this this is what that looks like on a graph here Now I have taken Google out from this chart Google does over 80% of the development
07:22
This chart here Represents the amount of code from other companies that are not Google into chromium for the year 2019 Right. So if you're not Google 50% of the code that came in was from this company called the Gallia anybody here from a Gallia
07:41
From a Gallia you work for them Oh heard of them. Okay. Okay anybody from I have questions But They're doing some really good work here. And then this represents Microsoft So if this is the 20% of the development Over half of that is done by one company a Gallia and a quarter of that 20% is done by Microsoft
08:06
It's a tiny little sliver Think back to this number that tiny sliver was 1900 contributions and a Gallia still beat them But here's what I find fascinating and how we get to these stalled
08:21
requests Anybody take a guess or anybody want to describe these charts before I do anybody want to take a guess? What's the top chart represent? anybody No Developers
08:41
Contributors so on the y-axis here. We have the number of contributors Look at how many companies are involved and you can clearly see Microsoft's involved They didn't just like step into this they threw people at this they threw a hundred in about 39 people at this in one year It's not like oh, we might do it. There's like 139 people go in one year like that's a huge workforce, but look at the bottom chart. What is that one?
09:09
Merge pull request. Look at the difference It's the exact opposite All right, and that this this chart right here if you take away anything from this take this away
09:23
This is not uncommon if Accenture was up here. It would probably be the exact same thing a lot of enterprises We they you know, whether it's right or wrong. It's not a judgment on that They will say we need to build something we need to do it fast How are we gonna do it fast? Lots of people and they will just so lots and lots and lots of people at it and it happens
09:43
So this is how you get back to Oh There we go, this is how you get to 343 abandoned pull requests, right
10:01
So, how does that happen internally? Here's a few little charts of this you might recognize this So this standard sort of lifecycle of a developer within a company you have a project, you know She's here doing some things and she's rolled onto the project. So she started it and The projects Indian and she rolls off Now the challenge here is if we're looking at contributions to open source
10:23
And this is where hopefully a lot of you are saying you're in the green band. They're trying to get this contribution There's going to be an initial contribution like a pull request There's gonna be conversations that eight months of back and forth between Microsoft and Google is This piece right here and then there's gonna be a final commit now
10:41
Here's the challenge for most enterprise companies is right there That final commit hasn't happened But that project that they were working on that specific thing in their JIRA or their Trello or their whatever they use It's done. So this developer leaves We see this over and over and over and again, right and then if we compound this
11:04
We see multiple projects We have a developer here is doing that work and then we have another developer here working for the company here in this case What some things that work well is that that developer on this side here Instead of doing a contribution. They just do a donation
11:23
They just literally send it up as a pull request and say that's it. I'm not gonna be here anymore That's our donation model This seems to work problem is we don't have any software that recognizes that we only have like github snippets Everything else is a pull request and a pull request expects us to be there through this entire lifecycle
11:43
Right, so then we end up with this But now let's compound this because this is enterprise software This person works for the company. That's the big sort of the box there. Let's just say that's the Microsoft here, right? She's responsible for this particular build
12:01
She doesn't have a hundred people on staff very few people how many people here today can pull up a hundred people right now Tomorrow start working on a project You can it's it's it's impossible, but you know who can TCS capgemini we pro HCL Accenture, you know Deloitte E&Y
12:21
Like I can go tomorrow and say I would like a hundred people to start working on a project and they would say do You have the money and if I said yes, they would mobilize a hundred people Right. So this is what happens here and they pull all these people these people though are always on a contract So if you sign a contract with Accenture, we might sign a time and materials or contract
12:43
Something that says we're gonna end at some point. We're not gonna do this indefinitely So that life cycle at the top Isn't our responsibility because we're down here right So there has to be some way through this. This is the challenge
13:02
There's some research back here because this is a very quick talk I'm going to give you some sort of books and some things I think this woman is amazing If you have not read I cannot pronounce her last name Forsgren Nicole Forsgren, it's anybody read this book How do you pronounce it? First get in. Thank you
13:24
She is amazing if you ever want a way to Pro like I want to say proselytize But it's probably not the right word If you want to convince your company to do inner source or to do open source better The metrics and the research that she has done make the greatest case for open source I've seen
13:45
Because at the very first one of the top one the software delivery performance is affected by many factors yada yada yada And a culture of continuous learning and improvement. What is open source? If not a culture of continuous learning and improvement You know all of these things in here change culture change culture. It's all culture culture culture culture culture
14:06
She's not talking about open source. She's talking what makes a company good in software development Just happens to point all to open source over and over and over again So very specific tips and tricks and I do want to leave some time for some questions
14:24
With enterprises, I think a really big one on our end is we have to recognize this difference between a donation and a Contribution this is a donation. It's great It's fine. I'm you know, maybe you hired a subcontractor. They're not going to be there through the whole cycle So we as enterprises should be able to just donate and walk away
14:45
Another one I want to expand our OSPO definition I know we're just getting OSPO to start it, but now I want to make them bigger Because I think an OSPO needs to do a whole lot more than just talk about open source I do think it is about the process policy and culture the OSPO program office
15:02
But I also think they play a huge role in this piece Because if we want to fix this and this is what we've been doing at Accenture and I wash it out of their clients That OSPO within the enterprise needs to do more than just tell you about open source They need to be the continuity between the project and the company
15:25
Is anybody here from the Apache Software Foundation? Does anybody work for the Apache project? Okay, let me ask you another question that I think you might relate Has anybody been in an issue queue and
15:41
felt like somebody asked you a question that was either in the docs or was just simple and easy or That was just sort of annoying because they're like you should just go get that information on your own Has that ever happened to any of you? Okay Well, I get to sit at a level and this has happened to the Accenture
16:02
We have hundreds of thousands of developers and in one case I had a few hundred developers in a particular issue queue Asking the maintainers basically to do their job for them Why doesn't this work this way? What about this fix this bug this bugs not fixed and that was Accenture's developers Asking the project maintainers and they're going like you work for Accenture. You have a job fix this
16:26
Those people are just hired developers and this is what I want you to take away, right? They're They're on oh at this side of this side. They're on the other side That's if you remember that one over here that they're just internally interacting with the company that has hired them, right?
16:42
They're not here to do this contribution journey because that's not their role But it is the role of the SMI group So specifically I got called and I became that middle person and I think the OSPO should do that Because I interacted with those with those like those those open source projects
17:02
SMI is a subject matter expert Thank you for that. I Thank you for calling out the acronyms. I So what can we do on the open source project side? I Work for a big company. We like acronyms So what can we do on the community side
17:22
There's there's a few books that I like to read. So this is one community development as a process Not a software Burke book. It's a nerdy academic book on Communities and this book Which I recently picked up called the commingled code and I found these two quotes really
17:42
It like I found these ones to be really impactful to me particularly this bottom one Through this research what they found is that developers who work in highly restricted? licenses So what they mean by highly restricted developers are developers working with a highly restrictive license in this case
18:02
GPL So in the course of this research They're really talking about the GPL as in the GPL is restricted in terms of an enterprise because it has to be Other code has to be released under similar licenses, etc, right They just find that the developers tend to stay where
18:23
Where their licenses are right and they find that across licenses So I find that really interesting because if I look at our own developers I can see those who are aligned to the project and aligned to the methodology And those are the ones that I want to bring and put into that subject matter expert group
18:44
Here because they're gonna get it and they're going to understand they're already aligned to it But I need to identify them and I can identify them not by their activity levels I can identify them by their projects that they're working on. The next one is
19:02
Not from either of these these ones but if you really want to get into some academia side of of community development these two brilliant professors Oh Manny and Becky here Have written a lot about this thing called the role of a boundary organization Has anybody heard that term of a boundary organization?
19:24
All right. Are you an academic? Borderline So a boundary organization for for you, which you know is boundary organization open source That is our foundations our associations. They sit at the boundary
19:40
If you think of your community as a circle, they're right at the edge of that circle, right? So our Apache software foundation the Linux foundation SPI OSI, etc. These are sort of our boundary organizations But our OSPOs or our open source program offices would also be a boundary organization What this is calling out through here?
20:01
Is that for to be highly effective what they found is that those who have some sort of boundary organization and can? interact with others are more effective or in short in Short if your community project has some form of boundary organization It does not have to be a legal company
20:21
It could just be a group of individuals saying I will raise my hand to talk to X company or Y company You become much more Impactful at getting those people in they need some sort of route So on the community side I have some some suggestions here
20:40
The first is don't be scared if folks run off like it's okay It's going to happen and the reason it's going to happen is because some project has ramped up a lot of people and Then either ramp them down, right? I'm not saying it's okay long-term I'm saying that's the current status of how these companies work, but we can be prepared
21:03
In some cases for short-term contributors be prepared Give them some some bite-sized chunk that they can work on give them a fast onboarding process if you watch chromium I think one thing I really like about that is they have an automated process for every pull request that checks some basic things
21:21
Have you been a member for X period of time like did you just create your account today? because if you didn't or if you did you're probably gonna just run away and We recognize it. Okay. Have you signed in their case their contributor license agreement or their CLA? it just checks it right away right and just sort of gets it off of the Queue and there's a few other ones and it just sort of moves it off the maintainers list to the side
21:45
Cuz they just recognize this is gonna happen and we can either fight it and say don't do this Like don't abandon your poor guys don't or move it off because our tools don't allow us to recognize that Other ones are Recognized code donations versus a band in PR. Maybe they didn't mean a pull request. We just don't have a way
22:06
Currently in our software to say I am going to run away. We don't have that if you're in github It's a pull request or a snippet Right. We don't really have a way of saying hey, I'm only here for like three days We just don't have that way
22:22
Which gets me to my very last one is I do have some suggestions for us as as as an industry as a community as open source I think we need to update our tools. I Think we need more metrics that help you Recognize when an enterprise company is coming in and they're only going to be there short term. It's really hard to distinguish
22:42
I'm here for the long term. I'm here for five days unless you have a conversation It's so hard, but I can find it through Metrics you can look at the metrics. So chaos project would be a good one And I think we should update get I think get should just tell us
23:01
Why you're doing this work, right so I want to update our tools This is what we've done in the Drupal community whenever people are putting in a new contribution They'd say why they're doing it. This allows us to track where it came from But as a maintainer, it also allows you to understand this person is volunteering on their own time They're probably here for a long time. I'm doing this on behalf of a project. I might be here a short time
23:24
It's one of multiple ways of identifying this so you can find your way through it With that I am done. So if there's any questions, you can tweet at me and email me
23:47
I mean, I think there's a There's two kind of even bigger challenges that you that you haven't necessarily touched on there You know when we look at much larger scale projects, you know where you've got things like SIGs involved and stuff
24:05
that becomes even more challenging for enterprises to get involved in because of that time thing that you've noted but also because the Cultural things aren't necessarily there. There's a you know, we whilst we say, you know open sources everywhere. There is a
24:22
surprising amount of Software engineers particularly young software engineers who've literally never taken part in stuff like that I mean I see them in our company and you know, we are To a greater extent an open source company Yeah, so, you know I think that that challenge is bigger is has both those aspects to it as well that this is like an educational
24:43
Thing there. How do I engage with open source communities? Sorry, what no no as the mics go there's a woman here and then
25:02
Hi, I was wondering if you have any thoughts on how to convince the company or even just the individual developer that it's in their Best interest to develop devote the resources to stick around and actually get that final commit in okay, so I'll try to do this for I think recording so
25:23
How to convince a developer that's in their best interest to stick around I Think that depends on the developer. I'm gonna say for some don't I know that's might be a contra one So I'll give an example I had this really great developer
25:40
Manny and he was on a project We were using Jupiter Python and a few other things to do some data science work and he's just super smart I mean he can give up just about any project and just he'll figure it out And we were using this project called Voyager, which is a data exploration tool. It's open source It was up on github and it wasn't up to the latest version, right?
26:02
And the div and the maintainer was not responding to pull requests So I helped him Understand how to get into the community and to reach out to the to the maintainer and they got in touch The maintainer is in this case was a university student built some really great software, but was just overwhelmed didn't have time
26:22
My instructions to Manny was be clear on your expectations Because you also don't have time. So there's this one for enterprises here on my tips that There's this balance between short and long-term individuals and set internal external expectations So long story short what I'm saying is there was no way Manny would have ever been able to maintain that project
26:45
His Professional career duties and his career path was never going to involve Voyager long-term But he was a maintainer for six straight months while he was on that project and he contributed as part of that project But we got on the call with the maintainer and just set clear expectations
27:03
But like he'll be here for six months and Manny was like, I can't do anything more than that But it was a great gift back and now voyagers up-to-date. It's running You can pull it down versus it was stale and abandoned and the maintainer who currently has it had some breathing room So you have to find what's a short and a long-term person is what I'm saying
27:23
If they're long-term there's a path and you should do that, but try to identify if they're just there for a short time It's pretty much kind of like following from the question from the lady from behind me and essentially is there not
27:42
mechanism that you could probably instill into The developers that it's powerful being part of the company So like is there any like open source clauses that you encourage developers to participate in open source? Is there any metrics that like okay ours for themselves? Yeah
28:01
so so This probably didn't come through and that that's that's you know on me 20 minutes I had and so I boil it down to one major topic To be clear I for if I'm recommending to of course or to enterprises their culture needs a change Inner source is one of many routes They should take they should build an Ospo that Ospo that open source program office
28:23
Should grow and get bigger and they do need to shift their culture so they can identify that But that takes a long time And so what I was attempting to do is just say this is what's actually happening So when you all of you in the room see it, you can hopefully recognize it and take advantage of that
28:41
Because I find that the person on the other end Wants to get involved, but they just really don't have the time their project is this short and they just don't know how to do something short Thank you very much Jacob. We appreciate it. We'll be taking questions in the hall Jacob will also be taking questions in the hall