Wednesday, September 11, 2019

Interview: JavaScript developer Eric Elliott shares his insights into DApps development

Inside Bitcoin presented by Airbnb.
Presented by
Airbnb
Subscribe | View in browser

Hello Bitcoiners!

Today's and tomorrow's issues of Inside Bitcoin will be a departure from our normal fare. I managed to secure an interview with veteran JavaScript developer Eric Elliott, who shares with us his insights into the rise of decentralized applications (DApps), their significance, and where they may be headed in the future. This will be a two-part interview.

Elliott began working on his first DApp before the Bitcoin whitepaper was released in 2008, but he realized he was too early for the market. Since there was no digital currency to make the idea viable, he abandoned that project. Once Bitcoin was introduced, he kept an eye on developments in cryptocurrency and dove in head first during the ICO boom of 2017.

He's the author of several books, including "Composing Software" and "Programming JavaScript Applications." He also the co-founder of EricElliottJS.com and DevAnywhere.io. He advises crypto development teams and has contributed software experiences to Adobe Systems, Zumba Fitness, The Wall Street Journal, ESPN, BBC, and top music recording artists Usher, Frank Ocean, and Metallica. 

You can follow Elliott at Medium and on Twitter.

I hope you enjoy the interview! And don't forget about our list of top Bitcoiners.

-- Allen

     

Explain decentralized applications. What are they and why are they important?

A decentralized application (DApp) is an application where parts (or all) of the system have no central point of control or failure. Apps that are fully decentralized are more protocol than application, and they may have many different client implementations. Classic examples include the internet, email, the web platform, etc.

DApps are important because the current closed nature of things like banking, payment systems, loans, etc. require people to trust third parties to sit in the middle of every transaction and promise that they're doing the right thing with our money and personal data. This has led to widespread systemic abuse and a lack of recourse when those institutions fail us. DApps promise trustless transactions (where you don't have to trust the person, or third-party intermediary, you're transacting with).

Decentralized applications allow P2P transactions without a trusted third party
     

Can you give us a little history of DApps? What was the first one? What did we learn from it?  What did it lead to? And who was behind it?

In the late 1990s and early 2000s, three new kinds of decentralized applications appeared:

  1. Distributed grid computing (SETI@home, folding@home); 
  2. P2P file sharing (Napster, Gnutella, Kazaa, BitTorrent, etc.); and
  3. Instant messaging (Jabber, which became XMPP, supported on and off by a variety of clients including Google Talk, AOL Instant Messenger, Facebook Chat and Microsoft Messenger)

One major problem with early decentralized application infrastructure was that it was really hard to figure out how to do sustainable development because the software had to be open source, and many DApp services required hosting resources, which meant that people had to spend money to support a network which didn't earn them any money. File sharing networks overcame the difficulty by requiring users to supply more files than they downloaded, avoiding the problem where a user signs onto the network just long enough to download the file they want, and then sign off without supplying any value in return. If everybody is only taking, and nobody is giving, the network is not sustainable.

When Bitcoin took off around 2013, it looked like we might get a solution: The ability for software to control value transactions.

Using streaming microtransactions, it might be possible to build self-sustaining decentralized protocols and applications for things that had so far been elusive. This could include

  • Distributed computing, which anybody could use and that didn't require altruistic donations like SETI@home and Folding@home,
  • Larger, faster, and more reliable file sharing networks, and
  • Applications that deal with money and things of value (lending, borrowing, stocks, insurance, etc.)
     
A MESSAGE FROM AIRBNB

Earn money by sharing your space.

Millions of travelers stayed in an Airbnb last year. Turn your extra space into extra money.

Learn More

Which blockchain, in your opinion, has the biggest upside for DApp development? Why?

Ethereum is great for general purpose DApp development, primarily because of the incredible power of its developer ecosystem. The value of any network is proportional to the square of the number of users. The more developers building tools, libraries, frameworks, and composable building blocks for DApps, the more attractive that network becomes to future developers. Once a platform gains a significant lead and reaches a critical tipping point, it will be difficult for any other network to significantly disrupt it. 

It's important to understand that different networks have different strengths and weaknesses. Selecting a blockchain is more like selecting the right database for the job than selecting a user-visible platform to target. I use Bitcoin to anchor verifiable data claims and proofs because it has the best security, and Ethereum to authenticate users and provide identity services because it has the best interoperability story with browsers and wallets. Other networks may specialize in instant finality, low-latency blockchain transactions, file storage, shared bandwidth, computing resources, etc.

Which blockchain do you think will win the DApp development battle? Email me at allen.taylor@inside.com and let me know.

Ethereum leads in Dapp development, but devs should choose the right platform based on users
     

Which one has the biggest downside, and why?

There are lots of "me-too" platforms, both in the "Ethereum killer" space and the "Better Bitcoin" space. To compete with either Bitcoin or Ethereum, your platform needs to deliver 100x more value. It has to do more than faster transactions, or better consensus. It also has to have amazing developer onboarding. Great documentation, lots of great tutorial articles and videos, killer example DApps, etc. Any platform that isn't Bitcoin or Ethereum has the major downside that there's a very real potential that it will be abandoned in favor of the larger communities building for Ethereum and Bitcoin.

You also have to keep in mind that, historically, people have tried many times to disrupt core web platform technologies such as JavaScript (see Google Portable Native Client, Dart, CoffeeScript, Elm, ClojureScript, PureScript, etc.), trying to be "the next JavaScript." CoffeeScript made some inroads at one point, but instead of becoming the next JavaScript, JavaScript stole all the best ideas, and JavaScript became the next JavaScript.

Similarly, by adding incremental enhancements like Segregated Witness (a protocol that significantly enhanced Bitcoin's scalability), or layer 2 solutions like the Lightning Network for fast, low-cost, off-chain transactions, Bitcoin is probably going to be the next Bitcoin, and Ethereum is probably going to be the next Ethereum. The only thing that will stop that happening is if other networks catch up on network effects before the big two roll out enough enhancements to maintain their respective leads.

The biggest downside is irrelevance, and right now, the only platforms that have traction and relevance signals strong enough to stay on my radar are Bitcoin and Ethereum.  

Editor's Note: According to State of the Dapps, Ethereum has the highest number of total DApps with 2,596 followed by EOS with 296 and Steem with 87. However, EOS leads in daily active users (62,730) and Steem in daily transactions (296,820). 

Up-and-coming blockchains need to provide 100x value to overtake Ethereum and Bitcoin
     
A MESSAGE FROM MANAGED BY Q

Your Guide to Writing a Strong, Clear Resume

First impressions are important—especially when it comes to your resume. Use this guide for best practices, inspiration, and strategic tips on how to showcase your professional experience so you can get the job you want or the raise you deserve. 

Download the Resume Writing and Formatting Guide

What are the barriers or obstacles to DApp mass adoption? What do we need to overcome?

We're already seeing hints of mass adoption on a few different fronts:

  • Payments - The integration of something like Libra or Bitcoin lightning payments in a messenger as popular as Facebook would trigger swift mass adoption of cryptocurrencies. WeChat Pay already has over 900 million users. Alipay has over 700 million users. Kik, WhatsApp, Facebook, and Telegram are all working on integrating payments, and most new payment systems are building on top of cryptocurrencies, like Kik's KIN token, or Telegram's TON token.
  • Gaming - The streaming of live video games attracts more watchers than professional sports. There's a video streaming network called Theta Network streaming eSports on Sliver.tv with 3-5 million monthly users earning crypto, tipping each other, and buying digital and physical products with the Theta TFUEL token.
  • Web Browsing - Brave browser is making significant strides fighting for user privacy, and a better business model for web content. Users can replace ad network ads with safe ads served by Brave, and earn BAT, which they can use to tip content creators. It's easy to opt into monthly contributions. Brave currently supports tipping Twitter users, YouTube creators, Twitch streamers, etc. Brave has more than 6 million monthly active users and 30 million downloads.

There are many teams working on solutions to identity and key management problems. I think we'll start to see services appear to help ease user anxiety over losing money, including solutions to help users recover lost cell phone or wallet keys, and insurance solutions to reimburse them if smart contracts get hacked.

We're still at the beginning of the beginning. @JS_Cheerleader recently conducted an informal Twitter survey of mostly professional developers and found that only 7% of respondents know what the Web3 platform is — currently the most popular platform for building DApps.

What problems would you like to see solved in Dapp development? Reply at allen.taylor@inside.com and let me know.

     

We'll publish Part 2 of Elliott's interview tomorrow. Don't forget to follow Eric Elliott at Medium and on Twitter.

     

Inside Bitcoin is written and curated by award-winning journalist and former newspaper editor Allen Taylor. Recognized by the Dallas Bar Association three times for excellence in legal reporting, Allen has since gone on to author, edit, or ghostwrite several white papers, books and e-books, and over 10,000 blog posts for clients ranging from small business owners to global management companies and corporate executives. Learn more about him on LinkedIn.

Editor: David Stegon (senior editor at Inside, whose reporting experience includes cryptocurrency and technology).

     
Copyright © 2019 Inside.com, All rights reserved.

Our mailing address is:
Inside.com
767 Bryant St. #203
San Francisco, CA 94107



Did someone forward this email to you? Head over to inside.com to get your very own free subscription!

You received this email because you subscribed to Inside Bitcoin. Click here to unsubscribe from Inside Bitcoin list or manage your subscriptions.