The a16z Show - a16z Podcast: Getting Applications Into People's Hands
Episode Date: September 15, 2017with Juan Benet and Chris Dixon The story of how innovation happens is a long one — from government funding early basic research, to the heyday of corporate R&D like Bell Labs, to startups as ex...periments before product-market fit. Through all that, we’ve ended up with “unprecedented superpowers” distributed through the internet, and people building on top of it. Yet there’s still a huge lag in going from brilliant ideas in the form of research papers to an application that’s actually working and in people’s hands, observes computer scientist, engineer, and entrepreneur (founder and CEO of Protocol Labs) Juan Benet. Benet initially designed the peer-to-peer hypermedia protocol IPFS or “InterPlanetary File System” to help build a more robust, distributed, open web. But those ideas were around for a while — they just weren’t implemented in a way that people could easily use. The same was true for early computing revolutions as well… until Apple came along and vertically integrated from research to production, bringing together different groups of people (design, hardware, etc.) to make something amazing that everyone could use, wanted to use. What if open source, online networks — enabled by blockchain and cryptocurrencies — could do something similar? [Full disclosure: we’re investors in the ‘Filecoin SAFT’ security mentioned in this podcast, but are not otherwise affiliated with Protocol Labs or Filecoin.] This episode of the a16z Podcast, hosted by general partner Chris Dixon, explores all of the above and more with Benet, going beyond the buzz around just “ICOs”. What’s the big picture? Stay Updated:Find a16z on YouTube: YouTubeFind a16z on XFind a16z on LinkedInListen to the a16z Show on SpotifyListen to the a16z Show on Apple PodcastsFollow our host: https://twitter.com/eriktorenberg Please note that the content here is for informational purposes only; should NOT be taken as legal, business, tax, or investment advice or be used to evaluate any investment or security; and is not directed at any investors or potential investors in any a16z fund. a16z and its affiliates may maintain investments in the companies discussed. For more details please see a16z.com/disclosures. Hosted by Simplecast, an AdsWizz company. See pcm.adswizz.com for information about our collection and use of personal data for advertising.
Transcript
Discussion (0)
The content here is for informational purposes only, should not be taken as legal business, tax,
or investment advice, or be used to evaluate any investment or security and is not directed at any
investors or potential investors in any A16Z fund. For more details, please see A16Z.com
slash disclosures. Hi, everyone. Welcome to the A6 and Z podcast. I'm Sonal. Today's episode features
general partner Chris Dixon interviewing Juan Bennett, founder and CEO of Protocol Labs,
which is focus on creating a more distributed, resilient web, and builds protocols, tools,
and communities towards that goal. But more broadly, they discuss how can we do the kind of
innovation these days that moves academic research to production in a faster way, getting applications
into people's hands. Dixon and Bennett cover all this in this episode, starting by talking about
the history of the IPFS or Interplanetary File System Protocol, which one designed, moving to the
problem and opportunity of storage, and then briefly touching on where crypto tokens come in like
Filecoin, as well as SAFT, a framework and platform for pre-launch tokens. Oh, and full disclosure,
we're investors in the Filecoin SAF security only. But first, beyond all the hype around ICOs,
what's a big picture when it comes to networking? Over to Chris and Juan.
So first, let's start with IPFS. What is IPFS? So IPFS stands for the interplanetary file system.
and it's a protocol to change how the web distributes files.
So instead of going to locations, meaning like IP addresses,
the content isn't addressed directly,
which means that anybody who has the content can serve it to you,
kind of like in a bit or in peer-to-peer fashion.
So it adds an additional layer of abstraction.
So instead of you type in a URL, which is directly mapped to a server,
it maps, you type in a file hash,
and then it can be in any server depending on what it is.
Exactly.
And you can map human readable names like DNS and other name systems, like new blockchain ones, to those hash addresses.
So they're easy to type.
But the important thing there is that it points to the content directly.
So anybody who has the content can serve it to you.
And why is this better than the existing internet file system?
It ends up solving a whole bunch of problems.
So the fact that right now when content is addressed by location, what that means is that there's a specific set of servers out there in the network that govern that file.
so that if I want to download and view that file,
I have to ask those servers,
and I have to take whatever they say as an authority.
So they could change the file.
The servers could be gone.
The file could have moved and so on.
You're doing it's more consistent with the original vision of the web,
which is to keep sort of archive versions.
That's right.
This is something that Vinceurf has been talking about recently.
He's super worried about a lot of the content disappearing
or there's all this bit rot that's happening.
So a lot of the old content disappears over time.
And so the point here is all content should be self-arched.
and should be distributable and servable by anyone.
And if you're handed a book or something,
you can keep that book and open it and view it anytime you want.
But that's not how the web works.
So today in the web,
you kind of have to ask permission every single time that you try to view a webpage.
And you have to ask permission from that,
the original site creators or whatever.
And it's kind of crazy.
Like,
that's not how humans think about information.
So just to try to put it in sort of ordinary use cases,
that you're solving a problem of automatically kind of archiving the web.
that solves the problem
of broken links
and not being able
to see old versions
things like that.
Let me give
a very concrete example.
So recently Turkey
decided to block
Wikipedia and it was very easy
for them because all they had to do
was intercept the connection
between all Turkish users
and the Wikipedia servers
outside of Turkey.
And so that was a very trivial
blocking mechanism.
And that's because of location
addressing all the viewers in Turkey
would have to connect to those servers.
So it's very easy to do
kind of man in the middle of that.
But instead with IPFS, I mean, what we did was said, hey, why don't we just take all of the Wikipedia content and dump it directly into IPFS and now anybody can view it?
And so this is a completely different distribution model where as long as you can find anyone in the network that has the content, you can download it and view it and distribute it.
You have a guy's next door to you.
Exactly.
Get it from your guy next door or not someone from across the world.
Exactly.
So the efficiency gains are a really big deal there where you have massive amounts of content being distributed all over the internet.
That's basically duplicated.
Big companies emulate this through CDNs and other kinds of.
things, but it's sort of in a lot of ways a hack.
Yeah.
So CDNs are this thing that developed on top of the normal web architecture to try and push content
as close as they possibly can to the users.
But in reality, why doesn't the underlying protocol just scale that way?
Why can't we put that kind of intelligence directly into the network itself?
What do you say to people to say, okay, this is great?
It would have been great if the web were built this way, but now it's, you know, whatever
it is, 25 years into it, the genies out of the bottle, you know.
Yeah, and I mean, like the web itself has changed quite a bit.
Sure, some of the core pieces of the protocols have remained the same.
But when you think about the browser and everything that's changed there, we have full-fledged applications today.
We started with simple documents.
So there's a lot of innovation.
And I think the browser is a really cool platform because you can deploy a full IPFS node directly into a browser tab.
Do you know, you have to run some kind of clumsy desktop app or something?
That's right.
And so there's a few like, you know, distribution model pieces there, which are kind of application dependent on like which application wants to do what.
But over time, like the internet evolves, right?
So the internet itself, TCPIP came after NCP and other protocols.
Like there's evolution that comes in.
And I think it's amazing that HTTP has lasted this long.
It was an awesome protocol.
And it is testament to its good design that fulfilled all these requirements for quite a long time.
But there comes to time when you can improve that.
And the internet is this amazing community where if you have a good idea and it makes sense and you build it, then other people will adopt it.
And as long as you keep that adoption curve smooth, then it'll get deployed and people will use.
it. So speaking of that, what's the status of IPFS? There's like billions of files moving through
the network in some capacity. A lot of people in the blockchain space are using IPFS because
it fits extremely well with the blockchain model. We're seeing a lot of people interested
in building like very cool applications where they're completely decentralized. There's no longer
really a website because a website implies a location. This is like this web app that lives on
your browser and then anybody else that can view that content can now get the web up and talk
to you. And you can get disconnected from the rest of the world and continue talking to them.
That's a really big deal for people around the planet, especially in areas where connectivity
is poor.
So by making software deployed through the web be completely logically decentralized, you add
in massive amount of resilience here and availability to applications, right?
It gets a bit harder to think about the content flows and how updates get propagated through
the network.
But the interesting thing to note is services like all of Google's products and Facebook
and so on, behind the scenes, behind that like first location hop, they are actually massively
distributed and decentralized systems that have to keep everything in sync and so on. So all of those
techniques are super well studied. And how did you start working on this? I saw the Skype phenomenon.
Like that was a great proof of here's an application that a ton of people use. There's resource
sharing in the network. And it just all works. And you know, for a long time, I always thought like,
well, it would be great to like be able to compensate people directly instead of like having this
just total research sharing thing where
some notes are super peers and then
they end up spending massive amounts of bandwidth and
some notes are just kind of leaching. It'd be
ideal to be able to kind of do some research sharing
there and like have some. The way Skype worked
at least initially, right? Yeah, some people were just assigned
they were super nodes without knowing it.
Yeah. You used a lot of bandwidth. That's right.
And it was frustrating for all those nodes, right? Because suddenly their
bandwidth bills were pretty high. And I mean, it was
done at a time when people could just kind of get away with us.
And it was kind of part of their
agreement that like you were volunteering
your bandwidth if you wanted to use Skype. But I think today we can make a much more effective
system by just using a currency to mediate that exchange of value. Well, that leads us into Falkcoin.
Yeah. So Falkcoin is a protocol that came out of IPFS. And there's basically three problems that
Falkcoin tries to solve. One problem is in Bitcoin, there's this fundamental issue where the work
that's being done to maintain the ledger, the security of the ledger is just work on hashes,
which is useless. And so the work itself.
The proof of work or slash mining algorithms, yeah.
Yeah.
So the mining.
A ton of electricity and things.
Yeah, exactly.
The proof of work mining of Bitcoin uses a massive amount of electricity right now.
And the reason for it is that there's a, there's an equilibrium set up where the more mining power you add to the network, the higher your probability of winning the next block is.
And so as a miner, your winning move is to just constantly add more hashing power.
And all of that work and all of that electricity that is being spent on adding security to the lecture is not,
not useless, right? Like, it's adding security, which is a valuable, useful thing. And that's
the decentralization of the network. But it would be ideal if that work wasn't, was itself
valuable in some way. If instead of just churning through a ton of hatchets to find the winning
solution to puzzle, can you turn that into a cryptographic proof of some useful work being
done? And so this has been, you know, kind of like an open problem for a while. People have different
suggestions. But I think there's a whole bunch of more useful things that you can do with this
kind of structure, cause miners to store data for as a service as a kind of like side
effect of the mining process. And so like that was like the core idea. But then it actually
turned into into saying, hey, there's massive inefficiency right now and how the storage
market actually works of if you have spare bytes in, you know, in some disc somewhere.
The process that you have to go through to try and sell that in the network is kind of crazy.
And so you have massive amounts of hard drive space go completely unused.
Airbnb for hard drive space.
Exactly, exactly.
So imagine setting up a resource sharing economy like Airbnb, but for storage space.
There's just vast waste of space like ISPs and data warehouses that have just racks and racks of hard drives that are not used.
And so put all of that supply into use in the network and build a system that can optimize the distribution of that.
And then maybe you have a different set of miners that are maybe very close to a huge city or like in a huge city or even in a building, you know, upstream of like thousands of people or something.
That's where like a really well-placed individual miner can actually deliver content with very low latency to people.
Falkcoin there is about optimizing the storage problem.
So the storage problem is actually multifaceted because on one end you were trying to get as cheap storage as possible and as highly replicated around the world as you can.
and then in another end, you're trying to optimize delivery, the latency that your users are seeing.
So what you want is a protocol that allows miners to be anywhere in that spectrum.
So a token is a internet native kind of unit of value where transactions for storage can happen through this coin.
Exactly. Bitcoin introduced a ton of awesome ideas. And one of them was say, hey, use digital scarcity to create this resource that then pays people for the service of running the network.
The idea of mining is a brilliant idea because you cause a lot of people to come to the network to help run it to earn some money.
A while back, I described as a market protocol where you have some market of activity with a bunch of different agents that have value flows going through them.
And if you can model that with a cryptographic asset that's tracking those exchanges and you can create a specific token, a protocol token to weave through that market and to model those value flows.
if you do that, then what you end up with is a protocol that addresses a, you know, kind of small economy,
and it creates an incentive structure for the people participating in that market to optimize that one market individually.
It's interesting because four years ago, probably you and I would have thought this might have happened using Bitcoin and not using a new token.
And then there are a couple things happen. One is just the fees in Bitcoin came too high for that's a whole other story.
We won't go into. But then the other thing is I think people started to appreciate that having a new token,
provides a whole bunch of other benefits, including kind of aligning an entire community around a
certain cause of network development. Think about it in terms of company equity. When you're thinking
about building technology and so on, it can pay people's salaries and in dollars and so on. And you
can give them equity, which gives them a share of the thing you're creating. And that's what a protocol
tokens allow you to do. Here's a protocol. We're going to try and create a whole bunch of value.
And then you try and address some subset of that value with a currency itself. And then the holders of that
currency hold a piece of that potential value you're creating, if they agree that this is a really
good idea, then by holding some of that currency and keeping it for a long period of time,
they might share in the upside of that creation of value. And so just even beyond the actual
utility that protocol tokens might have to facilitate that exchange, just the idea alone of
using it as a way to separate some economic activity and say, this is a service that we're
agreeing to provide together. And kind of thinking of, thinking of,
it as like internet equity in a sense. That itself is an extremely powerful economic idea.
You could probably do this on Bitcoin with color coins and things like that. But I think in many
cases you end up with like different protocols with their own chains or whatever.
Okay. So you're a busy guy. You've got IPFS, Fafcoin, and then recently you were the co-creator
of CoinList. Yeah, that's right. There's these token sales happening. And, you know,
some people call them ICOs. You know, pre-launch token sales.
So there's a whole bunch of complexity there of like what exact term you use and the legal
implications of it and so on. But what you're effectively getting is a new funding model where
creators of some network or some service can just walk up to the network and say, hey, I'm going to
create this thing and there's going to be this many currency units and pre-sell some portion of that
to effectively investors that are taking a risk and saying, we think this is valuable. We want to
share in that value. Or, you know, people that actually just want to get a lot of the tokens for
cheap at the beginning when they're worth a lot less because they plan to be huge users in the
network. So you get like both participants. I like to describe it as sort of like if you'd funded
the internet. Luckily, the government and academia funded the internet. Had they not, you could imagine
alternative model, which is sort of internet co sells domain names as a way to fund itself. People
could buy those either to speculate and sort of or whatever to appreciate, have those appreciate,
or they could use them, right? Exactly. So you're buying kind of a piece of the web by buying a domain name.
Yeah, and it goes straight to the actual people that are going to participate in the network.
So it's a new funding model that it's much closer to the value of the protocol itself.
You're not creating a different entity that then you're selling equity in that, which then will create some value and maybe extract some rent or whatever.
You're actually just thinking about creating value of the protocol layer itself.
I think people also underestimate, if you look at most networks, there's tons of infighting on a network, right?
And if you look at Windows versus Netscape and all these other things, like every developer network in history has been like just constant battle.
between the network owner and the different participants.
And so this new model says everyone has this is aligned along the same thing,
which they all want to see the network grow and the token appreciate.
It's a way to align incentives in every participant in the network much better
and even give people that are going to create new things on top of the network
and ability to do so without having to ask for permission.
Right.
So I think everyone was really sad when Twitter decided to shut down a lot of the developer community
and kind of kick out a lot of applications that were adding a ton of value to the experience.
And it was because Twitter couldn't find a really good way to monetize and survive.
And if you instead thought of Twitter as a protocol token, Twitter, the company or like the group that developing the protocol could totally continue to exist just fine with as many developers in top as you can think of.
Yeah, I mean, you need identity.
You need maybe, you know, distributed compute.
You need distributed databases.
You need like a whole bunch.
Exactly.
So you have to figure out identity.
You have to figure out like distribution models.
Right now we're kind of building the infrastructure.
And it'll be pretty interesting when that happens because I think it's going to bring a whole bunch of interesting.
incentives there and users are going to be able to kind of share in the ownership of the network,
which right now they don't, right? Right now users of a social network are totally subject to
whatever the network owners decide to do. It's interesting. The election brought all these issues
of social network governance to the four, right? People talking about shouldn't Twitter or Facebook,
etc. Kick off X, Y, and Z. These protocols, of course, bake the governance into the protocol.
And there's a lot of interesting work being done to kind of think through new governance models
using the code and the protocol. That's a, that's a, that's an,
whole very interesting area of research and development right now. But yeah, we might see,
we might see networks that have a much better terms of service kind of agreement where users
have more ownership of their data, more control on how it's used, or more control over like
the future of the network itself, where right now you're kind of just a long for the right.
I think they've given tremendous value to the world. It's just that I think we're now
at a point where we can evolve to the next layer of that and build something closer to a global
utility instead of something that is just trying to monetize on ads or something like that.
So returning to Coinlist very briefly, we had to solve our own problem to do a token sale.
And so we started this project called the SAF project, the simple agreement for future token,
where we thought to create an agreement that is closer to security for the pre-launch moment that itself turns into tokens once the network launches.
It's only accredited investors can participate.
Do you have to have a certain net worth and other things?
There's a whole SEC determination there and people can look it up.
Because the idea is the SEC is meant to protect kind of ordinary non-wealthy investors.
and so then they give an exemption to wealthy investors who want to do more speculative stuff.
Sort of buyer beware for those people or something is kind of how the system works.
And the reality is that it's going to be super hard for a lot of people to do the diligence on these networks and understand which of them are actually valuable.
And there will be bad actors that are going to take advantage of that system and try to scan people.
And that's where the accreditation, accredited investor thing comes in.
But one thing to be clear there is there's a big difference between pre-launch and post-launch.
So when that token is now available, when the network is live and the token is available, people can just buy it in an exchange.
change and can use it directly. At least the notion that the network doesn't yet exist is solved.
So the SAF is really for in that period of time when the network does not yet exist and people
are raising capital to build the network itself, that's what this is for.
Quinless is his own site. You did it with Angelus. It's going to be a place that you'll go
to if you create a new token or if you're a credit investor and want to buy a token.
Yeah, exactly. A fundraising platform for protocol token networks. We wanted to be able to do things
like take Bitcoin, Ethereum, US dollars, euros, you know, like actual normal fiat currencies.
And at the same time, we also need to accredit everyone. So when you do a 506C offering, which is
what the SAFT project will indicate for people to do, that's where you have to do a bit more
work to make sure that people are actually indeed accredited. And so that's where Angelist
came in. They had already this awesome platform built. And so we figured that if we're already
going to develop this platform, we might as well put in more work and turn it into something
that a lot of other people can use.
A lot of other projects can use
as the launching point.
And so we decided to develop
into a whole product itself.
Okay, then all of the stuff you're doing,
can you explain how that works?
The internet is this amazing machine
that we're all part of now.
And it's one stage of the evolution of computing.
And in it, it's extremely easy to give people
or give humans around the world superpowers.
You just have to think of some application
that achieves what you want to do.
And if you can do it in software,
then you can deploy it to billions of people
around the planet.
It's an unprecedented
power. And despite that, amazing, cheaper way to distribute these superpowers, there's still a huge
lag of going from really brilliant ideas that are research papers to an application that's working
in people's hands. A huge chunk of the ideas for IPFS were already discovered long before,
and they were just not implemented in a way that people could use them. And it was up to us to
take these ideas that have been around for 10, 20 years and then put them in such a form
that you can use them to improve the web. And that is just a whole,
whole bunch of work around designing protocols, designing libraries, building applications.
There's a whole bunch of UX concerns that completely escape protocol designers, right?
There's just this massive lack of communication between, you know, deep researchers that are
solving the hardcore problems and the people that are actually building applications that
people use.
And that disconnect is what caused it, what's causing this huge lag.
And so I wanted to build an entity that could vertically integrate this pipeline and make it
faster so that you can go from research idea to production application in a much faster way.
Apple did an extremely good job at vertically integrating the whole process of going from design
of a product to building the underlying hardware that you have to have to make that product
possible. And is that vertical integration of enabling all these different brilliant groups of
people that have to work together to make something amazing? We want to do that but for
the creation and design of protocols. One of my big frustrations with the world.
we live in is that the Oldville Labs no longer exists. Like the amazing research place that,
you know, in the 56th and 70s like created. The transistor and the center end up the
such amazing technology of development. It's kind of gone. The majority of our work is totally
open source. Our intent with a lot of this is to create proper internet protocol development
communities, which have their own goals, their own mission, their own perspective, their own
groups of people. One big question there is how do you align the incentives of the researchers
and the people that develop the things and the funders and the users
so that all of these groups can coexist very possibly
and collaborate into creating something really valuable.
And Bitcoin came in and gave us the answer,
which is you create cryptographic assets
that allow everybody in this entire ecosystem
to sharing the upside of creating this value.
Okay, great. Thanks for being your one.
Thanks for having me.
