I currently look at the development of the blockchain ecosystem through the lens of creating a new decentralized application development stack. A good barometer is asking the question: “do we have all the parts of the stack we need to create a fully decentralized app”? When the answer to that question is “yes!”, the ecosystem can rapidly create decentralized applications and experience explosive mainstream growth.

I came to this view after a painful period in 2014 at Coinbase. We had been sitting around thinking there would be tons of apps, yet we were seeing almost none. And I believe the reason was (and still is) that many of the critical pieces of the decentralized app development stack were missing.

Similar to building a normal web or mobile app, creating a dApp commonly requires a few things: computation, file storage, external data, monetization, and payments. Here’s what the state of the dApp developer stack looked like in 2014:

And here’s what it looks like in 2017:

Using a 0–2 scale (0=not started, 1=in progress, 2=ready), the stack was 20% complete in 2014 and is 70% complete in 2017. Many parts of the stack that have been recently created are fragile and may fail or have a successor, but I believe this is directionally correct.

The community has made a lot of progress. While it was borderline impossible to build a dApp in 2014, in 2017 it’s feasible to build a basic dApp that requires minimal computation and file storage. It wouldn’t surprise me if it was possible to build a reasonably scalable dApp by the end of 2018. As a result, I think we are sitting much closer to broad adoption now than we were in 2014.

Thanks to Chris Burniske, Dan Finlay, and Joel Monegro for thoughts on this post, and to the individuals and communities which are creating this new stack, especially Vitalik, Gav, Vlad, Christian, Heiko, Jeff, Juan, Joey, and Martin amongst so many.