DAPPCON 2018: Growing Open Source - Scott Moore & Marc Beacom (Gitcoin)
DappCon 2018 · July 2018 · 18:10
Scott Moore and Marc Beacom of Gitcoin discuss growing open source software at DappCon 2018, covering how bounties and funding mechanisms can sustain contributors building public infrastructure for Ethereum. The talk addresses Gitcoin's approach to incentivizing work on smart contracts and developer tooling that the wider ecosystem depends on.
Speakers
Topics
From DappCon 2018, hosted by Dappcon Berlin.
Transcript
we're from get coin we help incentivize open source software and our focus is really around right now a sort of bounty platform which allows you to take github issues and basically put those onto our platform directly incentivize those with any air-sea 20 token despite the name we do not have a coiner token that is a common misconception from people that do not know the product I mean I we actually launched a post recently describing why we won't have one any time in the foreseeable future so if we just go to the next slide my name is Scott I lead sort of technical evangelism so basically I just get to go talk to the Vella press all day which is great I
used to do a lot of analytics work and development myself and now I guess like I mostly talked to people and Mark clue I'm mark Beacom I am lead of it get coin I've primarily handle back-end and DevOps related related work for the platform so we want to start by talking briefly about the ecosystem basically this can be sort of like your typical RPG map which if you're like me is my reference point for all things in life this is effectively how we see ourselves in the ecosystem there's sort of this intersection of open-source money and
open source software and I think that we sort of saw this as a good opportunity to actually combine the two and use this as a way to align incentives between developers and between projects that they work on especially in the open source ecosystem so this is just sort of our brief view of web 3 you know there's a lot of different features here that I think we all understand it there am to be promoting and that we want to take advantage of in our platform and our place for me basically the most important one is just a transparent open network and historically you know we haven't really had any kind of open source money we haven't had a way to
ensure that jobs have an impact that you have actually good compensation and that you can easily get alignment between your values and between the money that you're actually receiving and so we really just wanted to kind of explain what we think the future looks like in that context functionally like historically everything was proprietary you sort of had like even the hardware layer proprietary and then in the 1980s we had open hardware and now you know we we pretty much I guess in the web 2.0 era have sort of open Internet and open protocols at that level and I think really what we're seeing with blockchain and in particular aetherium is the data
layer becoming completely open as well so in the context of open money that really what we really mean is like for us the fact that everything is becoming open-source means that it's extremely important that we are able to support that through web 3 to us they go hand in hand so as I mentioned effectively what we're trying to solve is this lack of alignment between open source and actual VC or venture capital so in history you had problems like for example with open SSL where there was no real way to get any payment for developing something that's absolutely critical for the
functioning of the entire Internet so open SSL for those not familiar unfortunately is also the cause of something called heartbleed or was the cause and that was largely just because there was no real easy way for those developers to get paid for their time and open source so ultimately is we see it what we want to end up doing is making it easier for those developers to get paid for work that's actually directly benefiting their community and the way that we do that right now as I mentioned is effectively through a bounty platform so really you know I think the word bounty is not a great word but this is just a starting point for us to create a more general platform that allows open-source developers to get paid by the projects that they're actually working for in a way that
actually aligns with their values so for example we have partnerships with maker Dow we're proud get paid and die we have turn ships with market protocol where products will get paid in their tokens once they're launched we have partnership with augur as well and these projects can pay in pretty much any RC 20 token but riding is a way for complete alignment between the product and the actual and the contributor so one of the major questions we get asked quite often is what you know is the benefit of a bounty if most the top of the source contributors are actually contributing mostly due to their own intrinsic motivations and I think this is sort of
a misconception that really there's only one way for open-source developers to be motivated ultimately we want there to be a pretty good distinction between these these sorts of these concepts basically even if you do something intrinsically you you can't actually continue doing it unless you are able to eat like that's kind of a fundamental truth in life and so we want people that are intrinsically motivated to still get rewards for the work that they're doing out of the goodness of their hearts and then alternatively there are lots of people that would contribute to open source that just don't have the time or energy to do it and would love to be able to if they could just get some small piece of compensation for it so we're trying to really incentivize both the kind of
old-school open-source developers who understand that there's a value there and want to contribute and then we're also trying to incentivize new developers who aren't really familiar with the open source ecosystem so this kind of goes back into and I'll go through this briefly because we actually don't have a ton of time here self-determination theory which is basically talking about like what causes people to be intrinsically motivated and really that comes down to three core concepts competence autonomy and relatedness so we're really focusing on autonomy we want to give developers the freedom to focus on tasks that are relevant to them and to really do that in the context of whether that's a full-time job for them whether that's a part-time job for them they should be able to choose the amount of time they're spending on those tasks and they
should be able to fit that into their existing workflow so I think that one thing we're most proud of is we're working made an application and of being over an application for just about eight months now and we have about a hundred and fifty thousand in bounties that have being paid out through the platform and we're looking to increase that quite substantially over the next few months so mark is going to give us a quick demo of that right now we just recorded a video for succinct Ness but we can walk you through some of the other features if we have time okay so to start out I went ahead and I recorded a video starting out with posting posting a
Bonnie to upload a photo from dot-com okay so you can actually go on get Co encode slash con on technical difficulties with a video maybe we should have done a demo if we have an internet access we can just get the main site actually yeah that might be easier in this case clearly I was that's right sorry I'm not 9 to video editing so ok
so I posted I posted an issue yesterday afternoon you can actually check it out at get coin co / gap con on github there's only one issue in this repository and more or less it was just too as you can see it's all about growing open source so we have two sides we have two sides to our market whereas there's a funder and contributor if you're a funder we walk you through posting a bounty working with a coiner and growing your project on the contributor end we provide you with a platform that you can
that you'll be able to see it all issues posted throughout our throughout our service you'll be able to find things find issues that match your skill set as well as contributing to fairly prominent projects in the space as well as getting paid so don't move into the issue Explorer seems that it's just running fairly slow I suppose it's not a live demo without problems right okay as you can see here
by default it sorts by main net bounties that are open and currently in an open state and pretty much what that means is is that fellow contributors haven't actually started work on our expressed interest on that bounty yet so to move back to the initial bounty that I posted for this event as you can see here there is a call to action to start work once you start work on on the issue you'll be able to submit your submit your image too directly to the github issue and well your peers will judge it accordingly so let's say let's say you
wanna you're an open source repository owner and you'd like to get started by opening an issue or raising a body it's fairly simple we're fairly tightly coupled at this point to github so any any direct any direct github issue will do yeah typically don't do this well perfect okay so don't leave the goal of
the funder flow by the way it's like we want to make it as seamless as possible to actually integrate github too and like eventually other platforms as well to our platform and we want that to really be a process that allows you to pretty much just feed in as much information as possible from github from your existing workflow into this platform in order to enable more open source contributors to be actually involved in your project I think that's actually one of the core benefits of sort of what we're doing it's not a lot of people think that you know if you're posting an issue it has to be something that you're not able to get done internally that you have challenges with I think that's sort of the wrong way to think of it often what you're trying to do is get more people working on your
project get more people involved in your open source community in order to sort of one fulfil the ethos of open source in the first place but also just so that those people can eventually become course contributors who are solving harder issues and eventually so that those people can become maintainer z' of the project itself so there's sort of a flow from user to contributor to maintainer and I think that's a really important flow for any of these open source platforms to be thinking about ok so as you can see as of right now we've had roughly 150,000 dollars USD circulating throughout the platform to date as of as of July as of July we have roughly a 90% bounty completion rate for
all bounties across the platform also you can a if you were to go look at this later on you can actually filter this down by specific stack or language the typical turnaround time for a bounty is typically six days but you can set any deadline you'd like on on during the funding process so far we've had roughly fourteen people receive full-time offers just by using our platform that includes organizations such as meta mask you ports the etherium foundation they got miss Phinney the the hourly rate is roughly anywhere from
five dollars an hour to seventy-three dollars an hour and typically it takes about ten hours for your bounty to be picked up by a contributor so let's just quickly run back into the into the actual presentation one thing we wanted to go over with you guys just in sort of the interest of being fully transparent with our architecture which is entirely open source basically mark if you want to explain that give the 30 second okay yeah okay and then we can
okay so for the most part get coin is actually a Django web application that communicates using web 3 PI and web 3 Jas our stat are our centralized stack resides and on AWS we utilize cloud front is our CDN beyond that we we utilize the you know elastic load balancers we we have a self scaling self-healing kubernetes cluster to handle our application as well as our gift nodes that we're running likewise our our our source of truth is on chain and ipfs but to to ensure that
our service runs a little bit faster the wave a traditional contributor to github would expect we we actually mirror that in a Postgres database and we also use a caching layer which is Redis as you can see here with the with the standard follower leader follower set up for that okay so technical roadmap moving forward we're always iterating on our platform we're continuously iterating on our platform to include dogfooding our own service that the vast majority of features and bug fixes that we merge
merge into our repository which is fully open source by the way it get coin Co slash web on github we have we have a few different things coming up to include stack specific landing pages reputation system for bi-directional feedback that includes contributor and funder rating systems and improve funder and bounty matching system currently we will match you with bounties that that have been recently opened that that target your specific skill set but we're we're currently working on improving that as well we'll be we'll be launching a job board so that you can find more full-time roles in the web 3 space as well as we'll be we'll be launching an
on-demand QA environments platform that'll allow us to further to increase our velocity of community contributions on our platform so that as soon as you submit a pull request it'll spin up a test environment that we'll be able to QA your code directly and see that it's merge faster and your bounties paid out to you and your receive your your instead of you know in a quicker fashion we'll also be providing more organizational management and brand awareness for repository owners so that you can manage members as well as empower members of your organization to to manage your bounties and also as you can see community moderators so that
well we can turn around escalated issues a little bit quicker yeah so we do have a few other things but just because of the technical issues we are sort of at a time so really this is what I mentioned before we just have this idea of maximizing freedom on bundling work and that doesn't just involve bounties it involves things like grants organizations such as the ECF or the foundation itself it involves getting involved with things like dev grants which is a project we're ramping up in order to allow for maintainer x' to get a monthly stipend likely using the IP nine four eight which is a subscription model that you can look up on you know for aetherium and then we're also just really looking to focus on dogfooding we want to make sure we're building this
platform using our own platform and so we've been posting bounties historically quite a while on our platform and we will continue to do that with both bounties and with dev grants so thank you guys for bearing with us despite the technical difficulties and if you have any questions feel free to talk to us afterwards