The Changelog – Episode #281

Gitcoin: Sustaining Open Source with Cryptocurrency

featuring Kevin Owocki

Guests

All Episodes

We're joined by Kevin Owocki, the founder of Gitcoin. Gitcoin is a platform to monetize or incentivize work in open source software. We talked about how Gitcoin sits at the intersection of sustaining open source and cryptocurrencies, their history and roadmap, their decision to leverage the brand name of Git, bug bounties, funded issues, web3, MetaMask, and the future of Gitcoin and how open source benefits.

Featuring

Sponsors

Command Line Heroes – A new podcast about the epic true tales of the developers, hackers, and open source rebels revolutionizing the tech landscape from the command line up. Presented by Red Hat.

LinodeOur cloud server of choice. Get one of the fastest, most efficient native SSD cloud servers for only $5/mo. Use the code changelog2018 to get 4 months free!

Google Cloud Platform Podcast – Google Cloud Platform weekly podcast is where Google developer advocates Melanie Warrick and Mark Mandel answer questions, get in the weeds and talk to GCP teams, customers, and partners about best practices—from security to machine learning and more. Hear from technologists all across Google about trends and cool things happening with our technology.

FastlyOur bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform.

Notes & Links

Transcript

Changelog

Our transcripts are open source on GitHub. Improvements are welcome. 💚

So Kevin, Gitcoin sits at the intersection of two topics that we've been tracking for a while now. The first one is sustained open source, and the second one is cryptocurrencies and blockchains and all that jazz. So let's start with the sustainability side of Gitcoin. Why is this a problem that you're personally interested in solving?

[00:04:01.11] Yeah, that's a great question and I love starting with why, because I think that everything sort of flows from that. I've been a software developer for the last 15 years, I have a degree in computer science, way back in 2006. Since then, I've built my entire career off of open source software and the GitHub ecosystem, which I think is like a pretty generational thing. If I was born 15 years earlier, I probably would have been doing a lot of Microsoft stack stuff and a lot of closed source stuff... But my career has been built upon Python and Django and NGINX and Postgres, tools like that. Those are all open source projects, and at least the pattern that I've seen with my own open source projects - if you go to my GitHub, you'll see that there's about 15 of them - is that they kind of shark-fin, in that the interest really peaks when I get a fit of inspiration, I put something out there, build a small community, and then something else happens that I'm interested and I move on, but the bug reports and the community relying on the software doesn't end... So by using blockchain for incentivization mechanics and to sustain open source and to delegate tasks to the crowd, we are meant to try and fix that problem a little bit.

So you're doing it with Gitcoin. Give us the elevator pitch of what this is and what it does for people.

Yeah, sure. So Gitcoin is a portmanteau of GitHub and Bitcoin. What that means is we take any GitHub issue you already work on GitHub, and we allow you to incentivize that issue by attaching a cryptocurrency bounty to it. So if there's some bug on a repo in open source that I'm relying on, and I can see that that issue board is overwhelming or it's got a lot of issues on it, I can place a cryptocurrency bounty on that issue in order to incentivize the repo maintainer to turn around the scope that I would like turned around preferentially. So it adds incentivization mechanics to open source software.

The community is about 1,700 people at this point. I'd say that people join Gitcoin a) to make a little bit of money in open source, but also just to learn about blockchain with a set of peers that are also excited about Ethereum and Bitcoin and the evolving Web 3.0 ecosystem.

Cool. We'll definitely unpack the Web 3.0 topic here soon.

This is the first time on the show too, Web 3.0. Nobody's ever said that yet.

That's right. We're...

We're crackin' it here.

You started the Web 2.0 Show back in the day, didn't you?

Yeah, that's an interesting aside there... The Web 2.0 Show obviously came around with Web 2.0. A lot of gradients, a lot of rounded corners, we used to always say. Yeah, that was a fun show; it started back in 2004, and I think it ended around 2009.

Maybe we'll have to get the Web 3.0 Show going after this, what do you think?

There you go. Bring it back, man.

I just find it so amusing that you're describing -- that the way you define Web 2.0 is rounded corners and gradients... [laughter] For me it's the iOS apps and social media, but you know...

Oh, really? I think iOS came after Web 2.0.

Oh, yeah.

I think Web 2.0 was -- for me the epitome and start of it was Ajax, specifically digg.com; so you had the democratization of content. Digg.com was huge, and they had their little Digg button, and the first time - I remember this very distinctly - I clicked that Digg button and the counter updated without the page reloading, I lost it, I flipped out. I was like "What is this magic?!", you know? And that was when Ajax just became beezneez, and to me that's what 2.0 was. But definitely Adam speaks to the design style back then, because he's bringing a designer's eye to the game.

[00:08:16.28] Yeah, for sure. I forgot about Digg.com. Wow, it's been so long... Reddit is where it's at; Reddit was like the number two back when Digg was the number one content aggregator of that era, so... Times have changed.

Yeah, they kind of self-destructed. I was anti-Reddit because I was such a Digg fanboy that I skipped Reddit, went straight to Hacker News, and then Hacker News became a cesspool, so I went back and found Reddit, and I'm like, "Okay, now I've got a few cesspools to hang out in", and that's the current state of affairs, at least in my life.

Wow. Interesting. So Web 3.0...

Web 3.0 - we'll table that for a second. Let's get to the name Gitcoin, because Adam, you and I were arguing about this.

Yes. We were searching for like at least 20 minutes, like "Is it really a coin or not?"

Right, because you said people can place bounties with cryptocurrencies, so the assumption that I made - and I was searching for it - I was wondering the current sale price of the Gitcoin, looking for a token, and a ticker symbol and all that. To be clear to the audience, and you can explain some of the mechanics there, Kevin, is that there's no Gitcoin, it's just that portmanteau of GitHub and Bitcoin, or Git and Bitcoin. But there's no Gitcoin.

Yeah. And that's actually a question that we get a lot. I don't know how many of your listeners are familiar with the ICO phenomenon, but there's this phenomenon in blockchain right now that's called ICO and it stands for Initial Coin Offering. The way it works is that if you have an idea for a startup you wanna build in the blockchain ecosystem, the standard has become you publish a whitepaper describing the idea, and the whitepaper also includes discussification for something called a token sales.

Tokens are just unique assets that are available and trackable on the blockchain, that entitle you to some right related to the project. So if you have a distributed file storage network, then you could release a token called Filecoin, that would give you rights to store information on that distributed file network. That's like a very basic example of what a token is.

So we've kind of gone through this last year, in which token sales have become really hot; people were 100x-ing their money on some token sales, and people kind of expect a blockchain project to have a token and a token sale associated with it.

I have 15 years of startup experience and I've never seen anyone ever raise 50 million dollars, 80 million dollars without even having a product to market yet, so just spiritually it kind of felt wrong to back Gitcoin with a token when there wasn't even a network. I'm talking about this fall, when I was putting the project together. So what we decided to do was sell funds for a little while, and build a community and reach a product market fit. It's possible that there'll be a token down the line, but I think that it's really important to have a culture that's focused on building things and learning about the ecosystem instead of like -- you go on the Telegram channel for some of these tokens, and all they talk about is the price of the token. It kind of like poisons the culture, I think, if you tokenize too early.

[00:11:53.07] So that's sort of where the project is at, but it's something that we're trying to work out with the name - how do we capture the conciseness and the spirit of the project with the name, but also let people know that there's no token, it's just a network that's built around building.

We've been camping out in this sector for a while now, and have never really had deeper conversations like this on the show other than the Ethereum show and the shows we've done around Blockchain and Hyperledger... But then you just said "tokenize too early", which I had never heard that phrase yet. So I guess if you're on the in, if you're where you're at, maybe that's an often thrown around phrase.

Maybe another thing to talk about might be the attachment to the brand Git. We've seen some brands use it - obviously, GitHub is the most influential user of a Git-based business brand, and there's several others that have come and gone or still exist... GitLab is another one that's a direct competitor to GitHub. What's your attachment to -- what's the financial ramifications of that? What are some of the downfalls, what are some of the reasons why you chose the name Gitcoin, or even Git involved anyways? Why is that thing?

I think there's obviously the attachment to Git, the version control system... When I moved from CVS to SVN, and then over to Git, with version control, it was just one of those mind-exploding moments, to see how easy it was to do branching and merging with the Git software. I think that was doubly important, given the framing that I gave you earlier, about open source software powering hundreds of thousands of technical careers, and open source software being a path to middle-class life for millions of Americans, and probably tens of millions of people worldwide. So I think there's that...

There's obviously the sort of like action-oriented way that you can use the coin, with the double entendre - you're "getting" coins, which I think is cool. As you mentioned, there's GitLab, there's GitHub, there's another project out here in Colorado where I'm based called GitPrime, and hopefully we don't see any fatigue or any of these projects at each other's throats because of the mutual use of the word "Git." It's kind of becoming an overloaded term.

Isn't Git itself trademarked and owned, copywritten by Linus or the Linux Foundation or some legal entity that would own the rights to that?

Yeah, it's something that when we were starting the project we talked to our friends at another project that had used the Git trademark, and we had worked out sort of a scheme in which we had thought that we can use that and still be in good legal waters, but... It's not that easy to e-mail Linus, believe it or not, so I'm trying to find a way to get in touch with them.

Well, a) I just think that they're the spiritual ancestors of a generation of open source software, and I'd love to get in touch with them and see what they think about using blockchain for incentivization. If you read The Cathedral And The Bazaar, all the stuff about being open to the point of promiscuity, and delegating everything - I think a lot of that came from Linus, so I'd love to get involved in that respect. And yes, obviously, the trademark stuff is something that we're looking at also.

Cool. So the general flow of this conversation - I wanna talk about really the idea and the model first, and then we'll dive into the technicals and the details, and you can unpack a lot of these words that are either confusing or jargon that we don't understand, as people who aren't building blockchain technologies - Metamask, ERC20, Web 3.0, dApps... All of these things that can intimidate people when they're coming to this space, we'll dive into all that afterwards.

[00:16:04.06] Let's talk about the concept a little more. You mentioned incentivizing open source contribution through currency, right? Through a programmable currency. What does that look like? The obvious one is bug bounties. Is bug bounties in terms of the model of payment the end-all-be-all of Gitcoin, or is it just getting started?

I think that we're focused on incentivization on any GitHub issue, but that said, there's specific types of issues that are more easily delegatable than other GitHub issues. Obviously, if you're kicking off a large [unintelligible 00:16:47.28] or a large project, you don't wanna delegate that just to the crowd, because that's gonna need central architecture and the left brain talking to the right brain on that project. So we'd like to say that any issue where the ROI is high of crowdsourcing it, is a good issue to put on Gitcoin.

I think you gave the example of bug bounties, and I think that that's a great place to start, provided that the readme is up to date, the codebase is well tested and the issue is reproducible. All of those things make it very easy to specify a bug that needs to be fixed, and those types of issues are really delegatable out to the crowd.

What are the kinds of projects that would be able to fund? In other words, you're creating a marketplace of workers and payers, and you're using cryptocurrency as the mechanism for payment... But that's not necessarily generating the money. So if I have an open source project and I have some stuff that I want done on it, and maybe it's really valuable in certain ways, but I'm not necessarily a big business or I don't have a stack of cash on me, I can't incentivize work on that based on Gitcoin, because I don't have any coin, right? So who's gonna be bringing the money to this platform, because it's the classic two-edged network problem of chicken and egg. You need to have bounties, you need to have money there for developers to be interested, and you have to have developers for people with money to be interested, so... How are you gonna bridge that gap and bring those people together?

Yeah, I think that starting a double-sided market, as you noted, is kind of a chicken and the egg problem, right? So how is Gitcoin gonna do that? There's the short-term strategy and there's the long-term strategy. I'll start with the short-term strategy, so you can see how we're getting the wheels turning.

Gitcoin has now partnered with ConsenSys, which is a large blockchain venture studio based out of Brooklyn, New York. They also happen to sponsor some of the best projects in Web 3.0 and the Ethereum ecosystem; projects like Metamask, or Truffle, or ConsenSys Diligence, Grid+ are using Gitcoin to incentivize action on their repositories. Those names might not mean a lot to a lot of your listeners, but if you're in Ethereum, then those are A-list brands.

I think that having Gitcoin being used on some of those amazing projects, some of those foundational projects has really started to juice the wheels on the double-sided market. Right now, since we're all in the same portfolio, blockchain venture funds, due to all being involved in ConsenSys, there's kind of -- I don't wanna use the word synergy, but I'm just gonna use it because I can't think of anything else...

[00:20:08.14] Don't do it, don't do it...

Synergy!

There's a synergy there where we place bounties on their issues, and it gets more users to Gitcoin, and it also pushes their repos forward. So that's how we're getting it started. But the long-term vision is to sell into projects that are cryptocurrency-based, and to let them see that -- you know, if you're a project that just raised an ICO of 10 million dollars (a token sale of 10 million dollars) and you've got some Ether to spend and you're trying to hire up, Gitcoin is a great way to augment your development team with crowdsourced tasks, and it's also a great way to recruit, because everyone I know who's recruiting software engineers likes to do a little test pilot project with them, or at least some sort of technical interview to see what it's gonna be like working with them. And what better way to figure out what it's gonna be like to work with someone than to work with someone on something that's actually on the roadmap, as opposed to something that just approximates what the working conditions would be like.

That's the short-term view, and then the long-term view is that Gitcoin is building up a suite of tools that are meant to help incentivize work in open source software, and in the future, it will not just be paying money in return for directed action on your repo; we'll actually allow repo maintainers to raise money using their GitHub repos.

The first step that we've taken towards that is by partnering with CodeSponsor.io, and Eric Berry, who is the CEO over there, has done an amazing job of building an ethical advertising network for open source software to allow repo maintainers to make a little bit of money off of the value they've created for the world. I think that that project pairs really well with Gitcoin, in that repo maintainers can raise money with CodeSponsor, and then potentially spend that money on pushing their repo forward.

Very cool. That's exciting, we're big fans of CodeSponsor and friends with Eric, so happy to hear that that's going down and he continues to work on that project, which otherwise looked like it was going to stall due to limitations on GitHub's platform. So that's very cool.

We mentioned directed action, and it makes tons of sense to me that your prime place to get people to bring funds to the platform is blockchain companies, because like you said, a lot of them have a lot of dispensable money that they may or may not have earned through displaying the ability, the future potential of their networks and products... And like you said, they're also looking for people with applicable skills. What about security audits, because that is a necessary thing, especially now that more and more of these developers who are working on these projects are writing code that directly moves money in and out of people's pockets... Surely, security audits are gonna become more and more essential, as more and more companies have programmatic money. Have you considered Gitcoin as a potential platform for soliciting audits, and that kind of stuff?

[00:23:41.11] Yeah, I mean... Just to take a step back before I answer your question - it is horrifying to go from web development, where the worst thing you can do in the world is drop a table on your database, or send an e-mail erroneously, to a place where you're moving tens of thousands of dollars programmatically, using your code.

Yeah, I can imagine.

I think that that's a conceptual need that if you're coming from web development, then it's sort of like a skill that we as a generation of software engineers needs to build, so... I think you framed that really nicely when you said that these smart contracts are moving around a lot of money. But to answer your question, the applicability of Gitcoin that we've seen has been around security bounties in this area, so basically what you do is you put out a bounty for, let's call it, two Ethereum, which is worth roughly $2,000 right now, and you say "I invite anyone in the community to find a security hole in my product, and according to the [unintelligible 00:24:40.11] model, if you find a critical issue, then you earn out the entire bounty, if you find a major one, you earn out 60% etc."

I think that when you're talking about security audits, which are more of like a -- you don't really want the crowd working on a security audit, you want someone who's got a lot of experience with smart contracts, and you probably are better contracting with ConsenSys Diligence in order to get that done, I think.

That's an interesting take too on funding open source, because traditional models have been -- you know, here on your homepage you've got "Find Funded GitHub Issues", which is the exact reversal of "Hey, just give a community or a project or several maintainers just money and hope they do well with it", where this is actually funding directly... Not so much somebody buying issues, because somebody could just say "Hey, project, here's $10,000. Convert that to ETH or BTC and fund whatever issues you need done." This is an interesting model of funding the work, rather than just -- hopefully give you money altruistically or charity-wise... This sort of like puts value on the table, on both ends - monetary value for those who are doing the work, but at the same time, ways for open source to thrive and move forward in terms of progress.

Yeah, and I think that one of the things that's really important in the Gitcoin model is that the people who are funding the work are aligned on the roadmap with the leaders of the repository -- like, there's a Venn diagram there of the incentives and the governance of the repo, and the ideal case is that that Venn diagram has heavy overlap. But I think that the [unintelligible 00:26:29.02] that you're seeing with Gitcoin and some of these other projects that incentivize software development is the unbundling of corporate sponsorship of open source software. There's the Red Hat Foundation, there's the Apache Foundation, and there's all these other corporate sponsors of open source software; what if you could unbundle those business models and allow the crowd to sponsor open source, instead of just having corporate sponsorship of open source? And I think blockchain allows you to manage things a lot more granularly than the legacy financial system does.

I think from a developer's perspective, eventually you may find -- if we find success with this model, a potential race to the bottom in terms of we're commoditizing our work to a point where it's not worth as much, which maybe that's just the fact of life, but that seems like a potential downside for developers... Because now you're basically -- not necessarily bidding, it's not an auction for these things, but you have the projects placing the value, and more and more people coming to that, the competition gets stiffer, which will be fine... But then the other side of that is you have kind of a local maxima problem, where the work that is going to be done needs to be very small chunks and very well specified, and it's never the big-picture stuff... Kind of like you said earlier, Kevin, your left brain and your right brain talking together. It's difficult to crowdsource a Vitalik Buterin to do his job, that kind of a thing. So your thoughts on those...?

[00:28:10.24] I think that that's a great point. The commoditization of work is something that I think about a lot, because Gitcoin is a fairly mission-driven project, and it's built by developers for developers, and I like to think that we're building a world that's gonna be better for developers, that the developers wanna live in. And there's sort of like the Upwork problem, or like the Top Coder problem, where you're basically racing to the bottom to bid for work that's not priced very well. So we're taking steps to make Gitcoin a place where people can build their careers and build their portfolios and gain leverage over their lives.

One major step that we've taken since we last talked about Gitcoin is taking a stand against spec work. Spec work is just basically like you turn around work for a bounty submitter and you might get paid or might not get paid, so it's called speculative work. We're trying to do a better job of allowing someone to claim a bounty and then have like a semaphore, like a lock, so that they're not doing spec work.

And the other thing that we're looking to do is to branch Gitcoin from just being bounties and tips for open source software to being an entire suite of tools that allows you to be successful in this new blockchain-centric world, where the work is unbundled from working from a company and more centric around "What project am I working on?" and "What issues am I working on this week?" A couple products that you might see come from us that are meant to support the community in that vein in the next several months are a) a mentorship tool - so if you're a junior developer and you wanna get paired up with a senior developer, someone who has experience in blockchain, then we will hook you up with that. We're also looking at putting together a project, like a co-founder matching sort of system. Basically, if you're a technical person and you need funding for your project, if you're a funder and you're looking for a mission to get involved in, then Gitcoin has a lot of candidate flow and a lot of developer flow right, so Gitcoin can hook you up with people who can help you advance your agenda and advance your career in the longer term. Those are all things that are on the roadmap, and it's an evolution that we're looking to go through in Q1 and Q2 of this year.

I actually think that that suite of tools addresses my other statement as well, regarding the...

Small chunks, I think...

Yeah, the small chunks as well... I guess the point I was trying to get to is there's certain developers or certain minds that the best model for them is to find a sponsor or a group of sponsors that allows for them to just work and just do their thing, and the world will be a better place if that just happens.

Maybe with a suite of tools - not just bug bounty, not just tips - you have this mentorship thing, you have co-founder matching, suddenly you're like a Tinder for developers (Oh, that's crazy...), and you know, perhaps there's even space for different kinds of scenarios to be built into the platform, so I think that answers it.

Yeah, I think what we're doing is we're basically building the emergent future of work, and if you think about the legacy model of how people find work, it just seems very broken to me. I wrote this whole series of blog posts about two years ago about how recruitment for software engineers is just fundamentally broken.

[00:32:13.23] You get this spam message from someone on LinkedIn who barely understands your profile and barely understands the job that they're pitching, and they get paid out 15% of the first year's salary of that engineer in exchange for getting that recruitment task turned around.

I just think that you're fundamentally better off when you have the people that you're working with involved in finding work and matching those people up directly. I think that what we're looking to do is disrupt the way work has been done traditionally in large corporations, and bring that more in sort of like a granular blockchain direction.

Break

[00:33:00.17]

Kevin, why don't you tell us how Gitcoin works from a user's perspective? Then we'll talk about it from a technical perspective after that.

Yeah, sure. Gitcoin, as we mentioned before the break, is a double-sided market that allows you to crowdsource work on any GitHub issue. If you are a repository owner or a maintainer of some sort, you can go to Gitcoin.co, click on the Fund Issue button, and when you paste in a GitHub issue, we will preload a bunch of metadata about that issue, like the title, the description, the keywords associated with the skillsets that you would need in order to turn around that issue, and provide you with a nice little Fund Issue button that you can click, and that will submit that funded work to the blockchain.

Once that funded work is on the blockchain and you've staked some Ether or some Ethereum-based token associated with the work, it'll get dished out to the Gitcoin Issue Explorer. The Gitcoin Issue Explorer is the repository of work that bounty hunters can turn around. We've got a community of about 2,000 software developers who are looking to learn blockchain, who are looking to make Ether or Ether tokens in exchange for doing software work, and from there, they can claim the work, turn around the work, and they can get paid out in exchange for turning around the work.

[00:36:17.11] That's sort of like the end-to-end of the use case, but the outcome for both parties is that the repo maintainer got some work that was on their roadmap turned around, and the bounty hunter makes some Ethereum, adds to their GitHub cred, also their Gitcoin reputation, and they also have formed a new relationship that could lead to future work or maybe even a full-time job in blockchain. So that's sort of like the end-to-end of the bounty flow on Gitcoin.

Very cool. I'm looking at the issue explorer now - and for the listeners' sake, Kevin and I have chatted a while back, maybe a month, a month-and-a-half ago, and it looks like he's got a lot more open issues today that he did back then, so congrats on getting a little bit of progress on that front.

Thanks. Yeah, I think the statistic is $50,000 has been exchanged on the platform over the last couple months. We didn't even realize when we passed that milestone; our community guy was saying, "Oh, we should have celebrated!", but I guess we'll have to celebrate once we cross 100k.

There you go. But on the technical side, as you load up in the top left corner - I don't know what your's is, Adam, but mine says "Web 3.0 disabled. Please install Metamask."

So here's where whatever the current web is meets this new Web 3.0 thing. Tell us about this and what Web 3.0 is and why I need to enable it to use Gitcoin.

Okay. Web 3.0 is -- oh man, I've gotta take a deep breath, because once you start going into blockchain, you're just in the rabbit hole of this whole world... Yeah, hold on to your butts, because we're about to go there. [laughter] So Web 3.0 is what the Ethereum community calls "our vision for the web when the web is blockchain-enabled." Just to unpack that a little bit, when you browse the web, you're using a web browser - I'm a big fan of Google Chrome, but I also have Brave, and I have Opera and Safari installed, and those applications are great at making HTTP requests to a server, and then receiving a response and rendering all of the HTML, CSS, Javascript, that kind of stuff.

In the Web 3.0 model of the world, specifically the Ethereum Web 3.0 model of the world, your browser will become blockchain-enabled. What that means is that they can read from and write to the Ethereum blockchain. That's an important capability for a browser to have in the Web 3.0 world, because the Ethereum blockchain is a store of value and a store of information that can be shared across the entire internet. It allows for something called fat protocol, which is just basically a way of saying that Gitcoin can share bounties information with -- The Bounties Network is another bounties project that's out there... And what this does, the reason why it's pretty neat for it to be on the blockchain is that it prevents us from having vendor lock-in for our data.

[00:39:51.11] If you think about some of the problems with Web 2.0, or at least in my opinion some of the problems with Web 2.0 is that your social network is locked into Facebook. Your search history is locked into Google, and if you wanted to transfer them to somewhere else, then it wouldn't -- it's not self-sovereign; you can't just go to a different social network and take your Facebook social graph with you. And I think that this is a real problem if you look at the prevalence of hacks that happened, particularly if you look at the Equifax hack that happened about six months ago... You as a consumer don't have self-sovereign control over your identity, and in the Web 3.0 world you will, because there's these fat protocols where the data is stored on the blockchain in a way that can be migrated from site to site, and you as a user have control over your identity and who you wanna give that information to through your Web 3.0-enabled browser.

I know I just took you all through the rabbit hole of what some of this means and what it could potentially mean, but the TL;DR, the sum is that if you install a browser extension called Metamask on your Chrome, Brave or Opera browser, then that will give you Web 3.0 capabilities in the web browser that you already know and love.

So is Web 3.0 an Ethereum thing, or is it a blockchain thing?

You know, it's like you're in a car and you take a look over your shoulder and you almost don't know your own blindspots... I don't know. I should know where I'm going with this analogy. [laughter] I think I screwed up the analogy. I think I don't know what I don't know, because I'm so -- Ethereum has 30 times the developer interest that the next biggest smart contract platform has, so maybe there's other projects that have this vision of Web 3.0, but Ethereum is by and large the one that's got the most momentum towards building it. And I also don't pay attention to the other platforms, because I just think that Ethereum is becoming the emerging standard for this. I guess this is the long way of saying "I don't know", but who cares if it's not Ethereum.

I think there's -- maybe tunnel vision was the analogy you were trying to apply there, or maybe that has more of a negative connotation than you'd like to apply, because... It seems like - and I'm moving now from the technical details to the kind of more philosophical ones again, but it seems like you're saying that there's these silos of information and they live in your Facebook, in your Twitter, in your Gmail, and Web 3.0 is this freedom of my data that move about and these other things, as well as basic payments involved. But if it's all on the Ethereum blockchain, then I'm basically just moving from one silo to somebody else's silo. And Ethereum is definitely the initiator of the smart contracts movement, and the very first thing of its kind, but rarely is the very thing of its kind the only thing that has success in that space, or often not even the main thing ten years from then. So I'm just wondering, if the Web 3.0 is very much like Ethereum people are doing this, or if they're trying to bridge all the blockchains, or...? I'm just asking.

I think it's good to have this check on the Ethereum vision. I think that one of the powerful things about blockchain is that if you don't agree with the governance of them, you can fork them, just like you can fork a GitHub repo if you don't believe in the product roadmap or the product maintainers... You can fork it, and you can do the same thing with the blockchain, and just create your own -- you know, I could create Kevthereum and do whatever I want, and the more people that agree with my vision in the world, the more people will follow my fork instead of Vitalik Buterin's fork.

[00:44:17.03] I think it's a little bit apples to oranges to compare Facebook's and Google's data silos, where they've built this business model off of spying on their users, and they're not gonna give up that data, like, they're gonna hold on to the doorframe on the way out, whereas Ethereum is built around this open model in which anyone can fork it. So I think that's a primary difference there.

I think the line I was drawing is more along portability, not necessarily evil intention, but I definitely agree with you that those are definitely two different things. Let's talk about Metamask, because it says Web 3.0 is disabled - we'll get back to the technical side, and also maybe the adoption side. Because when it comes time to Web 3.0, we talk about like, you have your normal browsers, and then now we have Web 3.0 browsers, which don't really exist... So Metamask is a Chrome extension. "Please install Metamask." So right now, to ride the Web 3.0, the Ethereum-based web, you're basically talking browser extensions. Is that ever gonna be really adopted to a point where it could be big?

I'm sort of here to shill Ethereum, so I'm gonna say yes. [laughter]

He's honest, at least.

But more seriously, I think that when you look at any new technology, it's all about drivers and barriers for a consumer. One of the big drivers for people getting into blockchain is they wanna get rich. I've purposefully not talked about the price of any of these assets on this blockchain, because it's just not our niche and it's not something that I think is the best use of our time... But I think that when people read -- the articles about the price that you see the press writing bring a lot of people in, and once they're in and sort of learning about this rabbithole of blockchain, hopefully their incentivization moves from just getting rich quick to seeing this whole vision of the Web 3.0 world that has less intermediaries, can dis-intermediate the financial system... I think the potential that I sum up the drivers in this ecosystem is -- I think that blockchain can do to the financial industry what Napster did to the recording industry. That's how big I think this could potentially be. That's how I like to sum up the driver side of the equation.

Then the barrier side of the equation is just like "How freakin' hard is it to use?" And the answer - you know, and this fits into your question about Metamask... Metamask is beautiful; they've got their logo, it's this polyfill fox that follows your cursor around, and it just looks very nice and polished, but you still have to install it in Chrome. And the answer in 2018 is yeah, it's kind of a pain in the butt to install this onto Chrome, but we're building a platform for the future of the web and the time horizon for what we're building is 10, 30, 50 years, so I think that you're gonna see adoption increase. If you build the right product for the next five years, you're gonna see adoption massively increase over that timescale.

I don't know about you, Adam, but when I see "Install Metamask", I'm just like "Close Tab. I'm done." And I'm an early adopter, generally speaking.

[00:47:59.04] Well, I guess it depends on your real reason. If we're just here as journalists doing a podcast, maybe close tab. But... Just kidding. [laughter] It kind of depends on your motives, right? But any sort of hurdle that is above and beyond the norm of everyday internet as we know it, it's probably like "I'll wait until I hear feedback from really close friends, or a really good article said thought leader, and then I'll dip my toe in." So maybe we need some of those to say "Hey..."

Or a killer app, right? Something that's so compelling.

Something that drives you.

For developers, Gitcoin could be that, because like I said, you could get paid, which is what I think Kevin's speaking to. It's like, "Well, there's good money to be made here", and that's a great driver for people, as we see people talking about price action, or mostly trying to make money quickly. So that could be a motivating factor. Or some sort of website that you go to and everybody's talking about, and it's not like a crypto kitties type of a thing, but it's actually somewhat revolutionary, and it just says "Install Metamask." At that point, you're like "I really wanna use this thing. I guess I'll do that."

So is it a browser in the works then at some point, do you think, Kevin? Or is this like you'll just leverage the fact that Chrome and others are out there and you have extensions?

The honest answer is I don't really know. The Mist browser is the Ethereum native one, and I think its adoption is like 0.0001%, or something like that, but it's more of a referenced client.

So that's not a direction to go then.

To be honest, I don't know what penetration is gonna look like in the next several years. One of the routes that we've thought about going is having a custodianship model of your funds on Gitcoin. Basically, in this hypothetical version of the world, Gitcoin will hold your private key, do all the Web 3.0 bridge stuff, and then you can just interact with it with a deposit or a withdrawal function on Gitcoin.co. So I think that that's one direction where things might go, and I think that the big question that's up in the air right now is how much of this blockchain-enabled functionality do we wanna put in the end user's hands, [unintelligible 00:50:21.13] and how much do we wanna hide from them and just have blockchain in the back?

I honestly think that that model makes a lot of sense for the short-term, because people are -- especially with small amounts... If I wanna sign up for Gitcoin, maybe I make half an ETH this week, maybe one... We're talking hundreds and then maybe thousands of dollars. Over time, of course, it would build up, but then you could just transfer out; people will trust exchanges, like you said, with a custodian model, for small amounts and small amounts of time, and it greatly reduces that barrier of people who are intimidated or don't want yet another extension, or to use Mist, or... Doesn't Brave have a lot of this stuff built in? I think Brave's an up and coming browser that a lot of us nerds would be more willing to try... But yeah, we're not necessarily here to give you product advice, but maybe we are.

What he's describing is very analogous to the freemium model of web apps. It's like, you've gotta provide some sort of path to give people the option to try, and you can do it with limitations. In your case, you can do that with, say, limited funds, or some restrictions to protect both them and you, and incentivize them to take the plunge and install Metamask or do whatever necessarily hurdles or hoops are required to become a full-fledged Web 3.0 user.

[00:51:43.11] Yeah, and I think that it depends on the -- you've gotta build the right product for the audience that you're going after. One of the reasons why we're sort of making a strategic bet on Metamask is that we're building a product that's for open source software developers, who by definition wanna work on blockchain stuff. If you're not gonna install Metamask on your browser and use Web 3.0, then you're kind of not willing to put up table stakes to even be serious about this system. But as Gitcoin grows and we try to capture more Web 2.0 projects, we're gonna have to either adapt, or the users are gonna have to adapt. That's just the reality of consumer internet.

Break

[00:52:33.11]

So let's dive into the technical nitty-gritty from an implementation perspective, and we'll talk more about Metamask, because you can tell us exactly how that browser extension that represents the users (as a wallet, I suppose) interacts with Gitcoin specifically, but I'm sure it will apply generally to Web 3.0 websites. Explain to us how it works from a technical perspective, implementation of the Gitcoin website with Metamask, and the interactions between the browser extension and the website, and I'm sure there's servers, and there's the blockchain... Tell us how it all works technically.

I think you can think of the Ethereum blockchain as a giant distributed database. What the blockchain does is it allows you to manage trust between parties across the internet. One of the reasons why that's really powerful is we can store all the information about the bounty task on the blockchain, and that can be the source of truth for all parties about the state of the task.

So in contrast to a legacy financial system crowdsourcing platform like Upwork, for example, Gitcoin never actually is an intermediary that holds any of the funds between the bounty submitter and the bounty hunter. So when you post a bounty to Gitcoin, you're actually submitting it to the Ethereum blockchain, and the funds that you're associating with the issue live on the Ethereum blockchain, which is just a massive simplification over the credit card and legacy financial system where we would have to deal with translations between currencies, and having a legal structure associated with doing Escrow and stuff like that.

Basically, the task goes onto the Ethereum blockchain, and the way Metamask works is it's just basically an Ethereum wallet that allows you to confirm that you meant to put that information on the blockchain, and the technology that powers Metamask is actually RSA public/private key encryption. So if you wanna do a transaction to the Ethereum blockchain, you're signing it with your private key, and that's how the rest of the computers on this giant distributed database know that the funds are authorized to come from you, and that the information actually came from you. So it all goes out there into the blockchain world, and then other people can pick up the funded work and turn it around by submitting their own transaction to the blockchain, which claims the funded work on the platform.

All this functionality lives on smart contracts on the Ethereum blockchain, and that's a pretty powerful way of removing the need to have an intermediary, the need to do international translation of currency...

The other powerful use case that this enables is the ability to pay your bounty hunters with tokens. If you think about all these ICO's who have raised 10-20 million dollars to fund their projects, they probably have some Ether on hand that they can use to incentivize actions of their community, but they also probably have a native Ethereum token that they can use to incentivize work on their repo.

[00:59:13.27] That's powerful, because it allows them to tie their incentives as repo maintainers with the incentives of the person who turned around the work, because they both hold the same token that rises and falls in value associated with the success or failure of their project. So I think that that's an interesting use case that could never even exist in the legacy financial world.

So Ethereum is the network, and so Ether is the token, but you're saying that people can use their own compatible tokens for their specific projects...

Yeah, and that standard is called ERC20. Think of it like a Java-style interface that defines functions like deposit and withdrawal and transfer, and things of that nature. So you can basically mint your own token that can be used for -- think of it like a software license for a product that you're putting out there. It's a unique, scarce asset that you can put out on the blockchain.

Very cool. So you can actually post those on Gitcoin as... Let's just say there's a Log token, and it's just for us; it's only for us, and we have our issues, and you can say "This is five Log", and then people will get paid in log, and then that would be fungible with Ether, or do you have to convert to Ether before you actually post it?

Yeah... I was just giggling over here a little bit, because I'm a visceral person, and I think of log and I think of a little tree stump, or something like that. But yeah, that's basically how it works. It's sort of a contrived example though, because the tokens that are most valuable represent some sort of enforceable right to do something special with the tokens. Your Log tokens don't do anything other than have a sort of like branding association with your project. In order to give the Log tokens actual value so people would care about them, they could be redeemed for something associated with your project, ideally.

Well... You're just assuming our Log tokens don't have any value, but maybe they have all sorts of value that I didn't tell you about yet.

Yeah. Well, in today's ecosystem, I wouldn't be surprised if they went 10x, but... [laughter]

I'm cranking out a whitepaper tonight, and we're gonna have Logs in the morning.

But you know, I try to take a long-term view on this, because I think it's really 1996 right now for blockchain. That's how early we are in this whole new world. The pump and dumps and all the tokens that are just cash grabs, they're eventually gonna get filtered out, just because of the Darwinian nature of capitalism. What's gonna be left is the Facebook or the Google of Web 3.0. Well, I don't know. Invite me back on in 2025 and we'll see what happened.

We will.

Yeah, I don't know specifically about Web 3.0 and Ethereum, although like you said, it has a huge advantage and the developer focus is on it... But my current take - and I've been watching this space relatively closely - is that is it a mania and a price bubble and all that? Yes. Is it also actually revolutionary technologies that someday will change the way things work? Yes. I think both of those things are true. It's tough to see the long-term when you're staring at all of the frauds and the scams, the Bitconnects that are going to zero while everybody loses their savings... But that doesn't mean there isn't real value underneath. I think there is, that's my take.

[01:03:16.12] I largely agree with you. I think that another parallel is the internet bubble, and I think the key is to invest in the Yahoo! or the Amazon, and not the Pets.com. The internet bubble was a bubble, but it was also a fundamental shift in the way the world organizes its information. I think that what we're seeing here is the fundamental shift, and possibly a fundamental shift in the way the world organizes its finances. I think that what TCP/IP did for information, there's the potential that the blockchain will do for the financial system. There's obviously huge upside there, but under the guise of upside, there's gonna be the Bitconnects of the world, or projects that are just looking to hang on to the trend.

This is actually one of the reasons I started Gitcoin - to allow people to have the skills to thrive in this new blockchain ecosystem. I think that educating people and helping them learn to use the tools and build meaningful relationships is how we mature the ecosystem. It's one of Gitcoin's missions.

Well, let's actually go there then. Let's imagine a developer who would love to get on Gitcoin and get paid, pick an issue... Most of these are related to the Ethereum network, so they're gonna have to have working knowledge of that. I'm trying to pull one that would actually be good for a use case - multi auth methods per resource.

Sounds simple. [laughs]

Yeah, these are hard to parse live on the air. But let's just say they pick one out, and it's for a specific -- here's one that was posted by the Truffle team... How does somebody get started? Maybe you can even tell us about how you got started, although I'm sure it's better now that it was back then; it's been a couple years of maturation... But the jargon, the interaction with the browser extension, with them EVM (Ethereum Virtual Machine), writing a smart contract... What are the best ways that people can actually dip their toes in the water and see if this is the kind of coding that they wanna do?

I think that everyone's got different learning styles. Me personally, I learn best through immersion, so I went to hackathons, I read the Truffle docs, I built one of their little tutorials...

What's Truffle, for the audience?

Oh yeah, I'm [unintelligible 01:05:59.20] in this that I forget that I'm using buzz words, even when... But anyway, so Truffle is - think of it sort of like Ruby on Rails, but for the Web 3.0 ecosystem. It allows you to manage your smart contracts and your tests for them, your migrations, your deployments, stuff like that. So it just makes Solidity and smart contract programming way easier.

Okay. So you said immersion - you went to the hackathons...

Yeah, I think that the number one value proposition that Gitcoin has for its users is immersion in a community that's excited about blockchain. If you join our Slack, there's channels for Python, for Solidity, Javascript, C# or whatever programming language you're into. And there's people in there that are excited about blockchain and helping you gain the tools in order to be successful there. I think that's the first place that I would recommend people check out when they're trying to get involved in Gitcoin.

[01:07:14.29] Then the second thing that you can do is you can go claim an issue out on the issue explorer. That's just an opportunity to get paid to work on open source blockchain issues. I think that the average hourly rate for a blockchain engineer on Gitcoin has been about $40-$45. So if you're into making a little bit of extra capital while you learn a lot, then that's another way to do it.

That's an interesting perspective too, because some people out there will be doing these things and not really finding a way to financially gain, right? And this is one way you can do what you've just said there - do something that you already kind of know a bit about, use your expertise, but at the same time learn a bit more and also get paid. That's not something you see often.

Yeah, and I think another piece of upside that's sort of important here, if you're playing the long game, is the relationships that you're gonna build in this ecosystem... Because the people that you're gonna meet on the Gitcoin Slack, or when you turn around an issue for Truffle, are gonna start companies or important open source repos that could potentially be hugely important in this new blockchain-based ecosystem. So I think that's one of the upsides that I think people should be focused on, in addition to the extrinsic monetary capital gains stuff.

Yeah, it definitely feels like an ecosystem which is burgeoning, but small enough that you can definitely make connections... The projects -- there is some sort of... I don't wanna call it a symbiotic relationship, but there's like an interesting crossover between open source and blockchain technology. Most of them are open source projects as well, they're just open source projects that have their financials either as the foremost thing, or at least figured out right up front, so they operate -- they have issues with how they're gonna run their governance, and there's people trying different governance things, they have issues with how the funding all works, and [unintelligible 01:09:35.12] and who does what, and the bounties...

There's a huge crossover between the two. So it would be familiar and yet different, I guess, when you dive into those things. But I guess the point I was trying to get to is when you get involved in an open source project and over time you make friends, like you said, you network, and there's a real community that forms, and in this case that same thing can happen to people who are building these things, because it is small and burgeoning, and you can often go on to build interesting and different things as well.

Yeah, and I think the key thing about Gitcoin is it's a way to get involved in the ecosystem when you're not exactly sure what your play is. We've got a lot of people in there who have corporate jobs that they're looking to make a next move from, or they're freelancers who are looking for their next gig, but they recognize that blockchain is this new frontier that could potentially be important... And it's only one way to do it.

I'm going to the Boulder Blockchain Meetup tonight to nerd out with people in the local community, and there's gonna be an Ethereum Hackathon out here in Colorado called Eth Denver in the middle of February... And by the way, applications are still open; if this airs before 30th January, applications are still open. But there's a lot of people in the world who aren't privileged like I am, and get to just go down the street and go to a blockchain meetup, so by providing an online hangout for people to figure out this ecosystem, I think we're gonna help people immerse and be successful. That's what the mission is - to push open source forward and to help people navigate this new ecosystem.

[01:11:24.14] Well, I mentioned your updates to the website since the last time you and I chatted... You've also slightly tweaked your mission statement, your tagline, which was "Push open source forward", and now it's "Push open source repos forward." Slight change, maybe we're staring at the trees and not looking at the forest, but that was curious to me. I wonder what your shift in motivation for adding the word "repos" in there was.

I think you've stumbled upon an A/B test that we're running right now... [laughter]

I'm a B test too then, because I've got that as well.

If you're listening to the podcast and you wanna tweet us and let us know whether you like "Push open source forward", "Push open source repos forward" or "Grow open source", it's something we're trying to figure out right now.

Very good.

I like them all.

That doesn't help me call it a test, though...

Yeah, exactly. I think I would go for your original one, just because it's just one less word and it's implied, and it also has a larger context, because things might live outside of repos.

Well, if you're also reading into the language, pushing sometimes can be slightly aggressive, right? ...even if it's for the goodwill of the person or the thing or the object you're pushing. Sometimes it's not even willingly being pushed, so...

That's true.

I think of open source -- I'm kind of leaning towards "Grow open source", and it's because growth is something that happens naturally, when you give something the right conditions to grow, and I think that open source... Obviously, if you look at a map of how Linux has evolved over time, it kind of looks like a tree, but I like the analogy of the natural world, just because, let's be honest, I live in Colorado and I'm kind of a hippie, and I love spending time outdoors.

[laughs] Actually, the more I think about it, I think I like "Grow open source", too. I went from A to C. Now I like C the most, on your A/B/C test. Well, Kevin, anything else you wanna chat about with regards to Gitcoin before I let you go?

You know, I think my parting thought would just be that the ecosystem is kind of crazy right now - the blockchain ecosystem - and if you hold on to your values and you focus on building and don't get caught up in all of the hype and all of the hubbub, about price and just focus on building skills and making meaningful relationships, then that's how I advise people to get going in this ecosystem. Build something meaningful.

[01:14:09.29] What about to those maintainers out there that are thinking "Geez, I can find more support or find interesting ways to leverage this new stuff happening out there, and also fund issues or fund the future?"

The way to get involved with all of that is to follow Gitcoin on Twitter. We're @GetGitcoin. Or to go to Gitcoin.co and sign up for the Slack channel. There's a bunch of smart people in there nerding out about blockchain technology, not the price, and building great stuff, so that's a way to get involved in the community.

Cool. We'll leave it there, man. Thank you so much for your time today.

Thank you very much for having me.

Changelog

Our transcripts are open source on GitHub. Improvements are welcome. 💚

0:00 / 0:00