Decentralized Applications

Return to Ethereum Syllabus

Applications that run smart contracts on the Ethereum blockchain are called “dApps,” or decentralized apps. Just as any app developer can build apps on top of Apple’s IOS operating system, developers can build on top of Ethereum’s blockchain infrastructure. To the end user of a dApp, it might not look and feel any different than the apps you use today. It’s the underlying blockchain infrastructure that make them different.

Simple Example

Since dApps function on top of the blockchain, they can be used to transfer value peer-to-peer. To return to our Grandmother example, there could be a dApp that Granny can download that lets her schedule Little Billy’s birthday payments without having to code the smart contract herself. dApps are also completely open sourced so other people can access the code and build on top of them. Someone could take the code to the birthday payment dApp and add the ability for Grandma to add a note that says, “Happy Birthday Billy!” Running dApps on the blockchain also offers added security benefits. Since the transactions are distributed and encrypted across the Ethereum blockchain, there is no central place for a hacker to breach and gain access to all of the world’s Grandmother to grandson birthday payment data.

At this point, I’m really beating the Grandmother/Little Billy example to death because I think it represents a simple illustration for the kinds of applications that can be built on the Ethereum blockchain. In reality, the dApps that are being built are much more complex. Here are a few examples:

Weifund – Blockchain Crowsfundings

Users can launch traditional crowdfunding campaigns, but through the use of smart contracts, backers can gain a financial stake in the project. If an indie film gets funded on Weifund, a backer who financed 10% of the project can collect 10% of the film’s revenues. Payments will be issued in real time as the film generates revenue.

Ujo Music – Music licensing via the blockchain

An artist can create an original song and register it on Ujo’s platform and set their own licensing terms. If a film producer wants to use that song in a movie, they can purchase the rights based on the terms set by the artist who will then get paid directly. This erases the need for industry middlemen like Warner Brothers who end up taking the lion’s share of their artist’s profits.

Virtue Poker – Online poker secured by the blockchain

At the height of it’s popularity, online poker platforms like PokerStars were marred with issues that ranged from deck rigging to the abuse of player funds held by the company. Virtue Poker using Ethereum allows players to fund their bets directly, insuring that no central party can access and misappropriate player money. Their code is open sourced so that users can understand how hands are dealt, insuring that no one can rig the deck. Lastly, players are paid out their winnings in real time over the blockchain so no more waiting weeks for a check to come in the mail.

10 Curated Resources

Assumes no prior knowledge of the solidity language. Learn with this interactive code school that teaches you how to write smart contracts. It is browser based and you build your own functional blockchain-based game.

It sounds kind of silly, but a good way to see the power of Ethereum DApps is to try using the most popular one, Cryptokitties. This tutorial teaches you everything you need to know to do it.

Learn Solidity

free, Documentation

The official documentation to learn Solidity. Definitely requires a decent understanding of programming. May not be best for a beginner, but then again, it is the official documentation.

Cryptokitties.io

free, Decentralized Application

One of the most popular applications for Ethereum. Of course digital cats became the one of the first, and they’re actually worth money. You can breed them, buy them, and sell them.

MetaMask

free, Browser Extensions

A very popular browser extension that allows you to run DApps in your browser without having to. It’s necessary for cryptokitties.io.

State of the Dapps

free, App List

A incredible list of prototype, work in progress, and live dapps being built. It’s almost like a ProductHunt for decentralized applications.

This is a simple contract that was coded. Unlike most code you see on the internet, this one is extremely commented on, line by line, if you need help understanding.

Remix

free, Online Editor

An online IDE for playing around with Ethereum

One of the top rated courses on Udemy for Blockchain. Over 10 hours of video content. Assumes you have some prior experience with coding. Read reviews thoroughly before buying to make sure this course is for you. If not, you can always see other Udemy courses, or see the other resources in this section.

As with most new languages to learn, hello world is a good place to start. This tutorial is official by ethereum.org, and is meant for people who know how to use the command line.