00:00hi everyone welcome to the a6 and Z
00:01podcast I'm sonal today we're continuing
00:04our series on the theme of open versus
00:06closed by focusing on the topic of open
00:08source communities and more specifically
00:11the changing culture of open source
00:12across generations and governance models
00:15to access and identity and identity
00:17politics should there be a sense of
00:19ownership and open source what's healthy
00:21what's not do we need to get religion or
00:23have a culture of personality in order
00:25to drive vision what happens to projects
00:28that evolves out of big companies and
00:29universities joining us to have this
00:31discussion we have Nadia Iqbal who did
00:33research for the Ford Foundation on the
00:34sustainability of open source projects
00:36before going to github to focus on
00:38community programs there and then we
00:40have Michael Rogers who's been a
00:41contributor to various open source
00:43projects for over a decade and currently
00:45manages community and much more for the
00:47node.js foundation and just for quick
00:48context nodejs is a platform built on
00:51Chrome's JavaScript runtime for building
00:53fast and scalable Network applications
00:55and its package manager NPM is the
00:57largest ecosystem of open source
00:59libraries in the world so we talk about
01:01open source a lot on this podcast in so
01:02many different ways in the context of
01:04infrastructure pricing trends I just
01:06kind of want to break it down starting
01:07from the basics for the culture of open
01:10source and and maybe we can start with
01:12you know why you got into open source in
01:14the first place Wow so I think I got
01:16involved because when when I was really
01:18young how I got involved in computers
01:20was through the hacker scene and one of
01:22the things that really kept me there was
01:24that there were like people to talk to
01:25there was a community angle to it and so
01:27when I started to work in like the
01:28actual industry I was kind of searching
01:30for that continued community and that
01:32ended up being the open source community
01:33why is the community aspect so important
01:36to you it sounds like so obvious but why
01:38we're in industry where people are in a
01:39job for like a year two three years the
01:41the relationships the personal relations
01:43that they have and tend to stretch
01:44decades and so community is kind of
01:46important to everybody but in the open
01:48source world it's just a lot more
01:49defined the community is like literally
01:51the only thing holding these people
01:52together even at the time that they're
01:53doing the work they don't all work for
01:54the same company right so there's a
01:56certain portability in that because
01:57regardless of what job you take you sort
01:59of take it along with you Nadia what
02:01brought you to the open source world so
02:03I mean the way first discovered what
02:04open source even was with someone
02:06learning to code maybe like four or four
02:08years ago and I remember having this
02:10moment at a rails bridge workshop where
02:13up and running for the first time and
02:15typing in like you know three words and
02:17all of a sudden like all these magical
02:18things happened behind the scene that I
02:20didn't know about and I was like where
02:22did all this come from how did I create
02:23this app by not really typing that much
02:26it was pure magic to me and that was the
02:27part I was like huh I wonder who was
02:29actually building all this stuff in the
02:30backend to like allow me to have that
02:33experience it's actually very
02:34democratizing that when you get these
02:35people building that it allows you to
02:37literally write a few lines of code and
02:39then have this app up and running yeah
02:40and the part I think I've always been
02:42excited by is the human part behind it
02:44of like who made all this stuff and
02:46where does it come from and why are they
02:47providing it to me for free I'm glad you
02:49brought up that you cumin part of it
02:51because I have it I think there's a
02:52tendency when we talk about open source
02:53and code to sort of mechanize it and to
02:56me like the arc of this podcast is about
02:58the human aspect of open source because
03:00essentially you're working on code and
03:03then you have human beings personalities
03:05clashing and coming together while
03:07working on this do these various open
03:09source communities so go back to just
03:11even the knate knate nature of the fork
03:13you led and by the way you just told me
03:15today that you merged it back in now
03:16like what was the story behind that this
03:19was the eye ojs Fork of of node the main
03:21difference is that there wasn't a
03:22technical disagreement a lot of these
03:23other forks like aetherium and whatnot
03:25there's a technical disagreement that
03:26essentially is not really reconcilable a
03:28lot of the time for us we were actually
03:31kind of hitting a lot of the problems
03:32that actually Nandi has research calls
03:34out where the sustainability of the
03:36project was in question we had tons of
03:39users I mean the users of nodejs are
03:40still doubling every year but the number
03:42of people working on it had gone down
03:43and the users or the ones who are just
03:48using the product that people are
03:49actually maintaining contributors had
03:52dropped down to you know depending on
03:54how you're counting maybe three people
03:56we're actually like working on it from a
03:58high of you know something like seven so
04:00it's never really that high and the the
04:03community around just the people that
04:05have built modules on top of it we'd
04:06actually done a lot of experiments and
04:07how do you grow sustainable contributors
04:10over time in in this new github kind of
04:12ecosystem so we had some some really
04:14good reference material and some some
04:16strong opinions about how to do this
04:17also some of the people that have been
04:19community node for a long time were
04:20unhappy with the way that giant was
04:22running it at that time had two
04:24and so we we took those disagreements
04:26instead okay we're gonna fork the
04:27project under a different kind of
04:28contribution model where we get people
04:30more involved because it wasn't a
04:32technical disagreement later joint put
04:34node into a foundation they needed kind
04:36of an open governance plan we were able
04:38to merge the project Linux Foundation
04:40the node foundation is an independent
04:42foundation the the Linux Foundation is
04:44is essentially hired to run it to
04:47administrate it and so it is a Linux
04:49Foundation collaborative project but
04:51join had brought node in and created the
04:54foundation around it we brought kind of
04:55a governance model and a lot of the
04:57contributors and we were able to merge
04:58all that together and so I mean at the
05:00point that we you know that we had this
05:02disagreement we were down to you know
05:03maybe a high of seven committers today
05:06about a year and a half later we have 90
05:08committers Wow amazing reason for that
05:11you believe is because you changed the
05:14governance model of it we started
05:15thinking about computer the project
05:17differently I mean so first is that
05:18ninety that's just a core itself if you
05:21look at the website and localizations
05:23and everything else we actually have
05:25like over 400 people so this ties so
05:28much into your research and thinking
05:29about sustaining open-source communities
05:31first of all why does it even matter cuz
05:33I as a consumer as a user I don't care
05:35as long as I have a product so why do I
05:37care if there's three people working on
05:38it or 400 everything is great while it
05:40works and when it doesn't then suddenly
05:41it doesn't and there are a lot of people
05:42who used open-source products who then
05:44are trying to ask hey like can we get
05:47this type of feature in or like this
05:49isn't really working and if you don't
05:51hear feedback because nobody's
05:52maintaining it then you have a problem
05:54it would be as though there's like a
05:55bunch of volunteers working on Facebook
05:58or something and it's like well I really
05:59hope Facebook works because there's only
06:01like ten volunteers working it's a good
06:03analogy I think that there is like a
06:05somewhat less a fair reaction that's
06:08like well if people don't work on it
06:09then people don't care about it and then
06:11it'll just go away and and what we found
06:14and actually like demonstrated with real
06:15data is that there there really is no
06:17connection between the number of users
06:19and the number of people actually
06:20maintaining a project less than that for
06:22a moment there's no connection between
06:23the number of users and the number of
06:25people maintaining a project why so if a
06:29project goes into the state of disrepair
06:30that doesn't mean that people stop using
06:32it and in fact I mean like it heartbleed
06:34is like the best example of this where
06:35you have I mean basically nobody
06:38can open as a cellar maybe like a couple
06:39people that aren't even paid full-time
06:40to work on it and you know the majority
06:42of the internet depending yeah and not
06:45just software but like hospitals and
06:47banks and stuff that are using it and
06:49like you have two people that are
06:50working on it doesn't make any sense
06:51right so what are some of the other
06:52interesting things your research and
06:54sustainability of open sources has found
06:56some of it has just been around like
06:57trying to put vocabulary to what is
06:59going on so about you know how you can
07:01have someone people using this project
07:04tons of people using the project and not
07:05that many people maintaining it
07:07we need vocab later to actually explain
07:09those two different things right because
07:10right now I think a lot of people talk
07:11about projects as big or small and big
07:14doesn't really explain what it means for
07:16a product to be big so I've tried using
07:18terms like popular versus healthy tell
07:20me about popular versus healthy why does
07:21that distinction matter so much so
07:23popular can refer to like lots of people
07:25are using their projects and healthy
07:26might mean is the community behind it or
07:28the governance or like how many people
07:31are maintaining it I guess the backend
07:33part of the project is that in a good
07:35state so you can have projects like open
07:37SSL might be a project that was really
07:39really popular lots of people use it but
07:41not actually healthy until we separate
07:43those things out then you have the
07:44problem of people saying well it's if
07:46it's you know if no one's maintaining it
07:47then it's clearly not a not a great
07:49project it's like no that's just two
07:51different metrics right and we have to
07:52look at one and and the other separately
07:53I mean it strikes me that you can use
07:54the analogy of an organism to describe
07:56the community like a human body or any
07:58other organism and that you can have
08:00like this ecosystem of all these
08:01different parts and players and then if
08:03you're healthy you're functioning well
08:05and if you're popular you're like
08:07working really hard it doesn't
08:08necessarily mean that you're in good
08:09shape and that has all kinds of
08:11implications right it's super
08:12interesting one thing that I found
08:14interesting is because the dialogue
08:16tends to be set by popular projects and
08:20those developers and their problems tend
08:22to dominate the story about this you you
08:23have these these words and vocabulary
08:26like drive by contributions right like
08:30these just keep showing up and
08:31giving us code like don't they
08:33understand that I'm too busy to look at
08:34their code this is crazy right but that
08:37is like a lot of the dialogue around it
08:39whereas like you know thinking of them
08:40as casual contributors and people that
08:43like show up and have value to add and
08:44and like really what you need to figure
08:46out is how do you capture that value how
08:48do you encourage it how do you level
08:49how do you you know not a drive-by but
08:52it's actually ephemeral it's not so it's
08:54an opportunity and and it does have
08:56value and the real problem is that like
08:58you don't have enough people that are
08:59maintaining it and one of the reason
09:01they don't have enough people
09:02maintaining it is because you're not
09:03leveling up any of these people that
09:04come by now that reminds me of some of
09:06the in urgent intergenerational problems
09:08and getting through the open source
09:10communities I mean when I think about
09:11the early days of like how I mean Jim
09:13someone has described to me like you
09:15know the existence of the foundation the
09:17evolution of the foundation it kind of
09:18blew my mind that you have linus
09:19torvalds and then you have like this
09:21entire foundation of people so it's not
09:24just a cult of personality and then you
09:25have the sort of old world of open
09:28source and new world of open source
09:29which probably not a good way of
09:30describing it but Michael you're
09:32actually the person who brought that to
09:33my awareness when we did an Abed years
09:36ago on how github makes everyone
09:38essentially an open source yeah one of
09:40the one of the things that's been like
09:41really undervalued is the degree to
09:43which in older open source part of the
09:46barrier to entry that people went
09:48through before they were ever
09:49identifiable to any contributor was an
09:51acclamation to the culture and an
09:53acclamation to the tool chain and all of
09:54this stuff and one of the things that
09:56github has done is completely removed
09:58all of that cultural acclamation like
10:00there is one tool chain that you lose
10:02the use to contribute a new project and
10:03then when you show up you don't have all
10:05of this this cultural knowledge you
10:07haven't like bought into any of these
10:08ideals about open source necessarily
10:10you're just there to contribute and and
10:12it's and we actually need to you know
10:14work with that it is just more like
10:16natural cross-pollination I think that
10:18happens between github projects and
10:19there was before because you can just be
10:21on this one platform and very easily
10:23move between different projects and kind
10:25of glance around I just think in general
10:26the more you can take inspiration from
10:28other places and easily link to them and
10:30point to them and have exposure to them
10:31the more likely you're gonna learn and
10:33iterate it on your own with all these
10:35there's like a positive way and a
10:36negative way to look at it so like the
10:37negative thing that I always hear is
10:38that like github is just a bunch of
10:40people around with their own
10:41thing and they don't care about
10:42contributing to projects that are
10:43established right which is like actually
10:45not true like there's there's a lot that
10:48a person gets out of contributing to a
10:49project that's that's popular and then
10:51there's a lot of draw for that the issue
10:53is that competition for people's
10:55attention is really high and so unless
10:57you're a nice place to come and
10:58contribute people don't care a lot of
11:00established contributors that are used
11:01to just people showing up because there
11:03popular project they're not getting any
11:05people because they're actually not a
11:06very nice place to kick well so I have
11:08to ask a question which is just healthy
11:10necessarily mean nice contributors in
11:14the community cuz I mean is niceness a
11:16quality of a healthy community because
11:17don't you want sort of a creative
11:19friction and collaboration how do you
11:21sort of navigate that I would say that
11:23in in modern open-source in like the
11:25whole github generation they are the
11:28same thing if you're going to continue
11:30to sustain your project you're going to
11:33be needing to get people out of this
11:34giant pool of contributors and many of
11:35them need to be feel invited and you're
11:38competing with a lot of other projects
11:40that are nice and inviting and there's a
11:41balance between like I mean there are
11:43projects that may be almost over invests
11:46into building really really healthy
11:47contributor communities but then
11:49someone's also got to use them or else
11:50it just kind of becomes this really nice
11:51experiment and like what it looks like
11:53to have a healthy community what are the
11:54qualities of a healthy open-source
11:55community I mean this is very tied to
11:57your notion of sustainable sustainable
12:03to join I think first off not scaring
12:05them away it was really important a lot
12:07of those in like documentation so it's
12:09not just here's how you do it like steps
12:12one two and three but for just human
12:13language around hey like so glad you're
12:16on this page really excited for you to
12:17contribute like if somebody is not sure
12:19if they want to contribute and they read
12:20that then they'll immediately feel more
12:21welcomed and then when someone shows a
12:23little of interest trying to like
12:24encourage and nudge them along I think
12:25it's really important so it really is
12:27more like an active investment to what
12:29I mean is it also like a more formal
12:31onboarding because there even an
12:32onboarding right now the reality is that
12:33some projects are complicated enough
12:34that you have to but but hopefully you
12:36can get around it or find inventive ways
12:39I mean one of the things that we noticed
12:41in the node project is like we we broken
12:43up things that you can get involved in
12:45so if you just have the skills to work
12:47on a website you can actually work on
12:48the node.js website and we see people
12:49transition from that into core because
12:52there was kind of a cultural barrier to
12:54entry that they're now past that the
12:55uncomfortable conclude the project so
12:57you know there is no formal Abhiram
12:58process for the website it's easy enough
13:00to contribute to but then when they get
13:01over to node core like yes there is
13:03because it's just a little bit more
13:04difficult it's more critical so yeah
13:06yeah and have a slightly higher bar well
13:08I mean not everybody makes that
13:09transition that's not why we we have a
13:12website project is just to get people
13:13into core is it's more about
13:15you know healthy open-source projects
13:17value all of the skillsets that they're
13:19trying to encourage so if we want a nice
13:21website if we want nice documentation if
13:22we want good tests we actually have to
13:24have the same kind of path for those
13:26sorts of contributors right like they
13:28need to eventually own that work become
13:30committers to it you know we have people
13:32in the the you know formal governance
13:34body around core that mostly have worked
13:36on tests and they know the test system
13:38very well and and the same with
13:40documentation right like these are core
13:42values so they need to have the same
13:43basically growth path as anybody else
13:46does even if they're on you know deeply
13:47technical stuff code by itself does not
13:49make an open-source project you have to
13:52have all these other types of skill sets
13:53and that's like one of the biggest
13:55issues that I've seen where people don't
13:58really understand the value of a healthy
13:59community that's great what are some of
14:01the other qualities of a healthy
14:02open-source community yeah I just write
14:03it off with like the night the welcoming
14:05and the moment they join the community
14:06then even just beyond like how do you
14:07get like new contributors in or how do
14:09you up level contributions or keep
14:11people around it's also like how do you
14:12deal with issues as they arise how do
14:14you talk to each other yeah how do you
14:16actually resolve conflict I really wanna
14:18get to the bottom of this one what are
14:19the some of the negotiations that happen
14:21both in the actual commit and in the
14:23actual verbalization so one of the
14:26things that I've been a big fan of is is
14:28inverting this this whole notion usually
14:30you'll have like a small group of people
14:32whether the committers or a smaller body
14:35of the committers that are making a lot
14:36of decisions right and usually you you
14:38put this in terms of like they're
14:39gatekeepers they have to make sure that
14:41every commit lands right I have to get
14:42agreement about that that just doesn't
14:44scale like there are too many
14:45contributions that need to land for that
14:47to be the case so what will be do an ode
14:49and what we've actually encouraged other
14:51projects to do is invert that so that
14:53the default mode is for something to
14:55land and and you may make corrections to
14:58it you may mean to get them to change
15:00things but everything is going to land
15:01and things only escalate into these like
15:04people to make a formal decision if
15:05there is a conflict around it's almost
15:08like the default is is gonna work well
15:10and 95% of the commits that we get into
15:12court do just land without ever having
15:14to go to the CTC which do you think do
15:17you think that your model of inverting
15:19that is what makes people hold to a
15:20higher bar so they're not sloppy like do
15:22you think people are more sloppy when
15:24they know they have to go through a
15:24gatekeeper no I know
15:26I think that like the the reason why
15:28it's not very sloppy is because we
15:29dramatically increase the number of
15:32committers so like there are you know 90
15:34people that can review this nothing is
15:36gonna make it in unless it's pretty nice
15:37and but the reality is like you know a
15:39fix to a test a a small adjustment here
15:41a bug fix there these are not issues
15:43that need to get you know decided upon
15:45by formal body like they're clearly
15:47valuable as nobody's going to objected
15:49them let's just let them get in and then
15:51you know when things are controversial
15:53when people can't agree that's when we
15:55escalated and we have a we have a
15:57consensus seeking process so it's
15:59actually a majority vote but we try to
16:00reach a consensus if we can to me
16:02actually mirrors how we think about like
16:04workplaces or interactions with people
16:06in general a humans are just humans no
16:08matter what they're doing but yeah I
16:09mean if you think about like evolving
16:11manager strategies now in workplaces
16:13where it's like I wanting to default to
16:17trust of the people that you manage and
16:20not say I need to micromanage every
16:21single little thing you do but I want to
16:22trust that you are on your own skill to
16:24handle this and if anything is wrong
16:26then I can like stop it but otherwise I
16:29want to just empower you to do what
16:30you're doing I think it's actually like
16:31very in line with like broader yeah an
16:34evolution of like how we think about
16:35human behavior and and how we manage I
16:38love that it because I think that also
16:40reinforces this idea of these
16:42communities a sort of new organisms a
16:43new nature of companies because I'm
16:45really fascinated by decentralized
16:48companies and decentralized
16:49organizations and open services one of
16:51the vectors to get there but it's also
16:52interesting because going back to the
16:54human inside I remember Jim telling me a
16:56story about Linux Foundation where in
16:58the early days one of the biggest
16:59lessons they learned was sometimes you
17:00start to pick up the phone and talk to a
17:02person directly just human-to-human yeah
17:04I forget even kind of battling it out
17:06like you know in code yeah yeah the CTC
17:09governance body around note we actually
17:10like discuss things but I I like that so
17:13in in in start-up land everybody likes
17:15to talk about ask for forgiveness rather
17:17than permission but the standard in all
17:19open source is you're constantly asking
17:20for permission and we regard this
17:23commitment like so strongly and a lot of
17:25that comes down to like the history of
17:26the tool chain right like with with CVS
17:29and with with subversion like you could
17:31make pretty bad mistakes that were very
17:34hard to recover from that really took
17:36like an expert in the tool but get isn't
17:38like that get get is very forgiving you
17:40really can't mess it up too much and so
17:42what we've been pushing on is sort of
17:44liberalizing that commit access like
17:46once you get one thing in that is
17:47valuable like we will onboard you as a
17:49committer very quickly well in that move
17:51from subversion to get was also
17:53interesting because of how it
17:54decentralized or actually now create a
17:56new identity for the developers for
17:59people contributing that code github as
18:01a general kind of collaborative platform
18:03and they are essentially the the
18:05identity manager for collaboration
18:06online particularly code collaboration
18:08they've won that battle there might be
18:10another battle for other spaces we'll
18:12see yeah I mean like if you think about
18:14gets only been around for ten years ish
18:16it's not unusual to think that when you
18:19have new tools in the system and the
18:21culture of how you work is gonna change
18:23we believe that for everything else why
18:25would we not believe that for havin
18:26stars and I still I think that we're
18:28just in this sort of like transition
18:29period from open source practices worked
18:31in like the 90s or early 2000s or
18:34whatever a pre good life and have to
18:36like recognize that some things are just
18:38not the same anymore well I have to ask
18:40you a question following up on this idea
18:43of that shift you once argued that there
18:45should be no my an open source and if
18:47you could share with us what that
18:48argument was and why you made it there's
18:50no mine open source refers to the legal
18:52position of what open source is and just
18:54kind of speaks to the tension that we're
18:56feeling today from a new generation of
18:57people so historically you can think
19:00about open source as being like the code
19:02is the institution that we must protect
19:03and protect its freedom at all costs I
19:05do not own the code because the codes
19:07legally is out there in public I mean
19:10it's like out there for anybody to use a
19:12copy to modify that's the definition of
19:14open source and so instead of having a
19:16possessive mine where you say like this
19:18is my bike you have an associate of my
19:20which is this is my friend and the
19:23interesting is that's a verses
19:24associated yeah I thought about that as
19:26a I it has a credit Carl Sagan who was
19:30one of the original authors of
19:31subversion for coming up with that and
19:33helping me think through that but right
19:34now like as more and more people are
19:36creating contribute open source and
19:38don't have the same attachment to let's
19:41say the legal battles of the 90s or the
19:44early 2000s because everyone releases
19:46their stuff as open-source whatever it's
19:48not a big deal and they don't think
19:49about the fact that like it's still it's
19:51not your project once you make it open
19:52source it is actually like out there
19:54in the public for anybody it's a copy
19:55and use yeah we had Carl on the podcast
19:58and and he he he just had this like this
20:01idea of open source from the initial
20:04morals not from you know what the law
20:06actually says because all the legal
20:07stuff is just a hack in the law so that
20:08we can get to this place where we're all
20:10working on this thing together
20:11oh and by that podcast you mean request
20:13for commits your guide says podcast
20:14where you talk about all things
20:15open-source that's so interesting it's
20:17literally a way to get around it yeah
20:18yeah and because they don't have this
20:20long onboarding process where they have
20:21to acclimate to the culture and this
20:23giant tool chain they don't think about
20:25these kinds of ideals the way that
20:26everybody who's involved in open-source
20:27in the 90s did right it was just one of
20:29the the things that you went through and
20:31in the onboarding process sort of
20:33informally you acclimated to the culture
20:34where that becomes awkward today is that
20:37so many different pieces of software now
20:39depend on other open-source projects
20:41which wasn't actually true like you know
20:4310 or 20 years ago but now it's really
20:45prevalent so entire businesses starts
20:48project virtually every we tend to think
20:51about like software companies to pay
20:52them but it's also like banks and
20:54hospitals and whatever I mean it scares
20:56me when you mentioned the heartbleed in
20:57this that really drives at home there
20:59was like a very critical bug that was
21:01found in open SSL and the question was
21:04well why don't nobody find this before
21:06and the answer was because they're like
21:08- there's one paid person and there's
21:10like ten volunteers that are working on
21:12this like of course they missed a bug
21:14sorry and that lets this bigger thing
21:16from the next Foundation and and other
21:19organizations that were saying like how
21:20do we actually support these types of
21:21projects that they have the resources
21:22they need to protect all of the world's
21:25information right now today with so many
21:27different dependencies the question of
21:29whether it you have this possessive my
21:30or associate of why my is important
21:33because if you want to take down your
21:34piece of code you can't you can take
21:37down your version that you put up but
21:39you can't actually take it down from
21:41public domain once it's out and it's
21:42been licensed a certain way it's out
21:44there like anyone else can take it and
21:46write and make it their own
21:47and that's like terrifying to some
21:49people because it's like wait that's my
21:50project you can't have my projects and
21:52it's like well because it's not your
21:53project because it's open-source and
21:55that's where the tension lies today the
21:56funny thing is I remember we were
21:57talking to Karl he he has this view of
22:01as long as it has an open-source license
22:03it doesn't matter how dysfunctional the
22:04project is because we as a community
22:06always have disability to fork it right
22:08and didn't agree with him on this
22:10because just the practical reality of
22:12working a project is such a huge
22:13overhaul and you don't necessarily have
22:15the right people to do it in any
22:16particular time and and what you
22:18actually want are the healthy
22:19communities that have healthy practices
22:21you want to be able to reform them and
22:22to keep them going I think if it is like
22:25we can technically impeach our president
22:27if we have to probably want a healthy
22:29democracy right what are the incentives
22:32for people to contribute to open source
22:35well this I think is the biggest change
22:37that we really need to change in
22:39people's conception because people still
22:40go back to the cathedral and the bazaar
22:43because that's a really popular concept
22:46yesudas ours is a very very old Erica
22:50Raymond essay on like basically
22:53describing open source especially early
22:55open source and and at one point he does
22:57get into like the incentives that people
22:59have and the essentially describes in in
23:01that text are just no longer true like
23:04that's not why people can involve an
23:05open source that worse do your typing a
23:09little here but just in broad strokes
23:10like how would you sort of paint the
23:13picture of what was the picture then and
23:14now did the people he was describing
23:15were technically oriented people whether
23:17they were programmers or not who you
23:20know in their own time wanted to go and
23:22mess around with something want and and
23:24you know because they wanted to you know
23:25get recognition because they wanted to
23:27whatever like that that was their
23:29motivation and that was kind of where
23:30they were coming from
23:30whereas today open-source runs every
23:33business every technology everybody is
23:36involved in it in some capacity if
23:38they're developing software they
23:40contribute to and move around the
23:42open-source software community as a
23:44contributor as part of their work as
23:46part of their socialize as part of like
23:49any kind of side project they do and
23:51it's really usually not about
23:53recognition and about you gotta pee
23:55Pilar highly recognizable in modern
23:57open-source communities would would
23:59trade it for three more people to help
24:05just dovetails with like software itself
24:08and the process of making it is so much
24:10more accessible in the last five years
24:12and never has been before now you can
24:13see this happening even in like startups
24:16where we used to have this archetypal
24:18like I don't know college hacker or
24:21whatever who became the founder and now
24:23we are groaning about having these like
24:26more MBA types or whatever that are
24:27coming and part of it is just because
24:29it's becoming a lot easier to start a
24:30company and part of why it's easier to
24:32start a company is because we have open
24:33source software basket eyes the
24:35Entrepreneurship yeah you you don't have
24:37to actually write as much code yourself
24:39to get something up and running you can
24:41just use other people's tools and those
24:43tools are the open source tools but
24:44where does the vision come from I'm not
24:46saying there has to be a cult of
24:47personality necessarily but it's kind of
24:49amazing when there's sort of a driving
24:51person a driving force that sort of
24:53motivates people into a new worldview
24:55like whether it's vitalik for etherium
24:57or you know Mike earn in the early day
24:59is a Bitcoin Gavin at Bitcoin whoever it
25:04for linux you know like we can just keep
25:06going so I think that one of the things
25:08that github solved was they made it very
25:12low-cost to have a lot of smaller
25:13projects and so what you're seeing is
25:14that basically large projects large
25:16applications are assembled out of a many
25:18many tiny components when you have these
25:20tiny components they're they're scoped
25:22very well right like they do this one or
25:23two things they're not going to grow
25:25exponentially out of control whereas an
25:27older open-source when you were building
25:28a database when you're building an
25:30operating system there are a million
25:31potential directions that you can go in
25:33there's a million ideas of what the
25:35scope of this should be by everybody
25:36else and because it's so hard to set up
25:38the infrastructure for an open-source
25:40project and get it going there was a lot
25:42of incentive to try and get every
25:43feature ever into these projects and but
25:46but that goes away and it actually
25:48becomes a lot easier to tomato product
25:50when they're much smaller scope so like
25:51the decentralization of anything
25:53anything Creator related these days
25:55right like we used to have like 10
25:58internet memes that were really funny
26:00and now like there could be a meme that
26:02got like 3 million views or whatever and
26:05like no one even knows it exists smaller
26:07projects might be really wildly popular
26:09but it just solved like one small piece
26:11or have their own size audience that's
26:13big enough for them but it doesn't have
26:16sort of cults of personality we used to
26:17have does this then leave the domain of
26:19like the really big visionary projects
26:21to come out of academia like the way
26:23spark came out of an pleb Apache spark
26:25where you have an entire new set of
26:26companies being built I mean they like
26:28now have had like multiple conferences
26:30like since like you know but keep
26:32growing and growing and for me is like
26:33one of the big questions around
26:34sustainability is not just how do we
26:36support the projects that already exist
26:37but where all the new things gonna come
26:39from that are really really big you
26:41don't have any sort of honestly like any
26:43sort of incentive for it which I think
26:45government and academic institutions
26:47have traditionally done for software and
26:48yeah aren't necessarily participating
26:50and right now so do you have an answer
26:52to that question no I I tend to take the
26:56long view like when I see larger
26:59projects like that or in general what
27:01you would call like a framework well
27:02you're usually what it usually is is
27:04there's a new use case and in order to
27:07really fulfill that use case somebody
27:08wants to take responsibility for the
27:10entire problem not a piece of it
27:11so they build a very large stack a very
27:13large project to go after that once
27:16after like a few years though you start
27:19to recognize what are the good ideas and
27:20that stack and one of the bad ones and
27:22how do you recognize that like you can
27:24take a few examples like so react is
27:27like a very big javascript framework
27:30right now from Facebook it's actually
27:32assembled out of many tiny components
27:33but um it's really easy to for me at
27:36least to poke in there and say like okay
27:38what are the ideas in here that are
27:39gonna last way beyond when anybody's
27:40using this framework like they have this
27:42notion of Dom diffing and applying the
27:44the differences to the Dom instead of
27:45just applying all the updates or
27:47replacing entire section of the DOM and
27:49like that's really powerful and there's
27:50already a dozen libraries to do that in
27:52different contexts but once we move on
27:54to a new use case after that one use
27:55case it's very hard for these frameworks
27:57to add things that help them into that
27:58use case so what we end up doing is we
28:00break apart of the good ideas and the
28:02smaller components that are more
28:03reusable so you're saying that's almost
28:05the inevitable evolution but also like
28:10when I look at newer frameworks for a
28:13lot of this stuff especially like react
28:15they're actually assembled out of many
28:17tiny components now so even our bigger
28:19projects are broken and technically just
28:21because they're easier to be honest I
28:23mean honestly does for the natural
28:25evolution of things that everything
28:26breaks down to these micro components
28:28to micro-services micro work micro hours
28:31Micro everything yeah I mean think about
28:33this having like always like
28:34easily-accessible little Legos and you
28:35could just kind of turn them into one
28:37building and break them apart and you
28:38build something else with it or whatever
28:39if the world can function that smoothly
28:42then that would be great that's an ideal
28:43to aspire to yeah you still need people
28:45to think about like why are we building
28:48it this way or what does the actual
28:49system look like and that role is
28:51actually kind of being filled lately by
28:52companies like Google or Facebook that
28:54have the resources to make big strides
28:56the way that academic institutions used
28:58to that can also lead to like a bleak
29:00future if we take it to its fullest
29:02extent so far they've been contributing
29:04a ton of things they've been open
29:05sourcing their thing and because I think
29:06they recognize selfishly and unselfishly
29:09that for a lot of the most successful
29:10things you need to create ecosystems
29:12around them and that's a really
29:13important piece I'm even open sourcing
29:15tensorflow Tolia but I'm a little bit
29:17more critical of those projects in that
29:19they are open source technology and and
29:21well that's enough for karl fogel it's
29:22it's not quite enough for me like I
29:24would like to see them under either
29:27either open governance or just like
29:29having contributors that don't work for
29:31that one company or right or having like
29:32in like I would like to know that the
29:34sustainability of this project is not
29:35dependent on how much money that they
29:37want to put into it because I've seen it
29:38just happened too many times where you
29:40know this ends up being more useful than
29:42that company has used for it and it
29:44becomes harder and harder for them to
29:46justify the continued investment that it
29:48takes for the growing community and
29:49growing number of use cases I mean like
29:52you know there are there are projects
29:54like go at Google where they can
29:55continue to flow money into it because
29:56they're using it so much internally but
29:58at some point if they continue to be
30:00popular in the community it is going to
30:02you know be bigger than just Google and
30:04how historic precedent where then a lot
30:07of those companies actually kind of gift
30:09it to a foundation or a community I
30:11think if thing kind of means it's like
30:14sending your dog away to the farm
30:15upstate we're really excited to announce
30:21that this is now open source meaning we
30:23don't want to take care of it anymore so
30:25go live over there well give it to the
30:27community except they haven't actually
30:28identified anyone the community who
30:29wants to take yeah there's some dumping
30:32and sometimes I'll even try to retain
30:34some level of control even without
30:36investment which is counter-examples I
30:40mean Google just gave kubernetes over to
30:43the cloud native computing foundation
30:45and that's like you know an
30:46up-and-coming project that's getting
30:47lots of contributors and lots of new
30:48adoption and that was just because like
30:50for it to be a de facto standard it
30:52needs to be a neutral body right so
30:54there's there's some recognition that is
30:56evolution of computing and yeah yeah so
30:58clearly you guys are lovers of open
31:00source and passionate about everything
31:01it represents the potential the
31:02possibility so why not yet have you
31:04actually said in the past that you hate
31:06the term oh I said I hate the term open
31:09source' but just admittedly was a little
31:10bit inflammatory to say that I felt very
31:12I felt this tension coming in as an
31:15outsider and talking to some people who
31:16strongly believe this one thing is
31:18definitely a core value of open-source
31:19the need turn talk to other people and
31:21they're like no this exact opposite
31:23thing is also a quarterman source and
31:25it's started to feel like the term open
31:26source just sort of meaningless it just
31:28creates all these religious debates yeah
31:30and like and you know there are also
31:32people who don't use the term open
31:33source because they want to use the term
31:34free software and I think I just felt
31:36frustrated I used to edit Richard
31:38Stallman I know oh my gosh you're gonna
31:41like the word free it has been Libre and
31:44it's just there's so much focus on like
31:46what are all these different terms and
31:47what do they mean and what is my
31:49affiliation and I just serve as like a
31:51lot of identity politics religion a lot
31:54of it is historical the open source
31:56Brown day Brandon kind of helped
31:57open-source win and then when open
31:59source won I think that a lot of the
32:00free software people went well that's
32:01not necessarily our values working on
32:03the glob onto this other identity but
32:05then now the people that kind of stayed
32:07on the other side of that also had a
32:08bunch of identity and a bunch of values
32:10associated with it and their assumption
32:12is that everyone who comes to work on
32:14open-source needs to acclimate to these
32:16values and with this whole github
32:19generation these people are not grabbing
32:21those values before they contribute
32:23they're contributing for a whole host of
32:24other reasons and we shouldn't expect
32:25them to share all these exact values the
32:28github generation as you dub it open
32:30source is the default there's nothing to
32:32push again so it really is just about
32:33being a regular person going about your
32:35day then about being an open source and
32:38to be fair in a nod to the older
32:39generations it's part they don't see all
32:41that partially because there were
32:42previous generations that were fighting
32:44for all this stuff to say like
32:45now you can just like copy-paste this
32:47license and you're good but there was a
32:50lot of work that had to be done - yes
32:54like I feel like you know people are
32:56taking the MIT license gets a way to say
32:58I'm opting out of these identity
33:01politics so the MIT is a is a liberal
33:04license similar delight to BSD license
33:06since now I think the most popular
33:07license is popular yes a better license
33:12but there's a lot of stuff going on with
33:15patchy is an identity in a lot of like
33:16identity politics around open-source and
33:18so I think really really like why people
33:20have been taking MIT is it's a way to
33:22say I just don't want to have that and
33:24that's what the I think the github
33:26generation is much more interested in
33:27like workflow collaboration process side
33:30of open-source and the legal side of it
33:32it's just like almost less relevant also
33:34the legal stuff still does exist in
33:35patent protection is a big deal like
33:39companies that are now using open-source
33:40and like that's that's been great for no
33:47DJ ask though it's just another reason
33:49not to use Java I don't have Sarah's
33:52podcast and she literally live tweeted
33:54the entire thing from the question that
33:56was Oracle acquired son son owned
34:01basically all the electoral property
34:03associated with Java
34:04they they they then claimed that the API
34:08which not the implementation but the
34:10actual API surface you can patent an API
34:15you can't if you can then virtually
34:18everything that we've built open-source
34:20on like comment doesn't work and a lot
34:22of like our entire industry falls over
34:23so so no like you have to pretend that
34:26that legal precedent wasn't said even
34:27though it kind of was and then yeah so
34:29they they'd sued Google for infringing
34:31upon that API and then they actually won
34:34a case that said yes you can patent an
34:36API even though that's crazy and then
34:38that they lost an appeal that was very
34:41awkward but eventually one yeah Google
34:43Google did not have to pay them in the
34:45end but in the meantime a you know Java
34:47is predominantly used by enterprise
34:50customers there they're not happy that
34:52the underlying IP it they've been
34:55suspect she goes your idea Nadia but
34:59there's no Mayan open source and plays
35:00up very differently when the my is an
35:02enterprise totally yeah and it goes back
35:04to you guys's ideas about what happens
35:05about the good motives of the Google of
35:07Facebook's Twitter's who then open
35:08source their internal tools yeah I mean
35:10it just it made me think like I'm not
35:12going to invest in a platform that is
35:14not like in a neutral body right but
35:16isn't that also a little idealistic for
35:18you to say a lot of people have to
35:19invest in platforms that are not that
35:20neutral so as a programming platform
35:23those are choices that you can make but
35:25yes like sometimes you'd have to deal
35:26with the App Store or whatever yeah and
35:28it's actually gonna be one of the most
35:29interesting battles and open source
35:31moving forward was the role of companies
35:33gonna be an open source moving forward
35:35because it's like briefly summarized in
35:36history but there is the time where
35:38companies was like we don't really want
35:39to use it because we don't think it's
35:40reliable then tons of startups got built
35:43using open source because you know big
35:45established companies didn't want to use
35:46it they were like startup set bullies it
35:48you know may times I might now those
35:49stars are huge companies themselves so
35:51just to wrap up then what are some of
35:53the other things for what you guys think
35:55are ahead whether they're battles or
35:56things to pay attention to on the
35:58horizon what else is up ahead working
36:00for a foundation now I've come to
36:01respect some of the institutional
36:03infrastructure that you can get bindings
36:05and I think that as we start to think of
36:07open source projects as infrastructure
36:09you need some kind of institutional
36:11support for that but it runs a little
36:13bit counter to this trend of everything
36:15getting smaller and more broken up and
36:16more distributed well maybe the
36:17institutions themselves can be that way
36:19you need just a little bit of
36:20institutional oversight so then let
36:22people do what they want to do that was
36:23when you talked about yeah yes bad is
36:25all very true but it it is it is very
36:27very complicated to implement especially
36:30as we get better at managing open source
36:31projects without institutional
36:33infrastructure people become more
36:35resistant to it because like it always
36:37adds something right it's always another
36:39thing to think about or to deal with and
36:40and I think that people really like to
36:42live in a world where they don't have to
36:43worry about a lot of those concerns well
36:45it just reminds me what happened with
36:46even like Halak recei and the
36:47organizational sense right but is I
36:49don't think it's saying that you need
36:50institution in the traditional way it
36:52just means that you can't just
36:53completely dismiss it yeah there's a
36:55balance right you don't want to
36:56micromanage people and you also have a
36:57completely decentralized management
37:00somewhere in there okay anything else
37:02you guys are out in the west next trends
37:04things are type of mind just personally
37:05I've been mainly interested in the
37:08and a lot of the new stuff going on and
37:09I kind of peer-to-peer distributed web
37:11and it's everything from ipfs to just -
37:15tor - like blockchain is kind of in
37:18there ipfs is a interplanetary file
37:22system it's basically a way to in a
37:24distributed fashion store files and and
37:26serve them out and eventually
37:27potentially even kind of replace HTTP as
37:29a transport for web like applications
37:32and then peer-to-peer in general is just
37:34you know everything from BitTorrent yeah
37:36but there are some new web standards
37:37that really help bring a lot of this
37:39along like WebRTC and I really like the
37:43intersection of this along with sort of
37:45like repression of governments and
37:47regimes and and people who have poor
37:49access to information like there's
37:51actually a lot of benefits to sometimes
37:54online sometimes offline distributed
37:56systems that they can really do a lot
37:57for people so I find coming back to
37:59sorta like the holistic look at open
38:01source like I'm really interested in
38:02seeing how org structures for
38:04open-source projects themselves is going
38:06to evolve where it has been so lopsided
38:08to developers and code but the only
38:11really wait I think like how sustainable
38:12projects and sustainable organizations
38:14is to bring in other types of skills to
38:16support all the things other types of
38:18skills you mean people that can you know
38:20write good documentation people who can
38:22do project management a lot I would even
38:24add design by the way that is my number
38:26one complaint projects so I was
38:31blown away when we talked to a young
38:32learn heart from the hoodie project and
38:34he said it's it's a it's a it's a
38:38JavaScript library that has probably
38:39about as many contributors as users it's
38:42something did a very good job building a
38:43great community that way but it's it's
38:45sort of for building like online offline
38:46applications on top of like CouchDB and
38:48things like that great community but he
38:50was saying that in their community they
38:52actually have a team of people that work
38:54on the marketing and actually talked to
38:56analysts on behalf of the project is
39:00essentially has a marketing department
39:02yes but they're all volunteers they're
39:04all part of the community but Oreo team
39:10yeah I mean that's a natural evolution
39:13if you're saying that this is the wave
39:14of the future and already even is here
39:16then why shouldn't it then take on the
39:17forms and functions of every other
39:19previous successful that organization
39:21and company before it and ditch the ones
39:23I didn't work okay you guys well thank
39:26you for joining the a six and Z podcast
39:27that was a lot of fun thank you