5 things I learned from building an app on the blockchain
Blockchain's most promising application is not currency, but governance
After months of hearing nerdtastistic new words like DeFi, NFTs, the metaverse, and web3 spam my peaceful internet experience as “the technological inventions of this lifetime, all powered by crypto”, I reached a breaking point this past Monday. I decided I was tired of not getting it.
I searched a YouTube video on how to build everyone's first app: a to do list, but on the blockchain. I honestly thought it was kind of a joke search, but the internet seemed to take me at face value.
I found that I’m just 8 years late to this crypto party, but everyone’s still rallying. Here are 5 things I learned about the "innovation of our lifetime" after I did this tutorial, told by a complete n00b. For my crypto enthusiast friends, I am coming clean about how little I know about this technology. For everyone else, you’re welcome.
1. Crypto hype is concentrated around a new era of the internet with decentralized applications (or dApps, if you want to sound like a dWeeb)
In today's internet landscape, most websites are owned (hosted, designed, governed etc) by private corporations or even individuals.
If you make an account on, say, YouTube, the world's second most highly trafficked site, you provide Youtube (Google) some basic details about yourself such as your interests, age, gender, and location. You assert that YouTube gets to do what they want with that data about you because it belongs to them.
But it doesn't stop there: YouTube's bread and butter is user-generated content. It's a website that owns and monetizes on videos that everyday people provide to them. Any rules about the content that goes on the website is dictated by YouTube. After all, it's their site. They are paying for the engineers and data centres that maintain the website.
What if you decided one day that YouTube didn't have the right to create policies and govern the website? After all, it was users who created all their content and gave them all their traffic. Maybe an entertainment hub like YouTube should democratically governed by everyone. Everyone who wanted to be part of running YouTube would pitch in computing resources and code to run this decentralized application.
The underlying technology that enables decentralized computing (read: spreading the computing power across many computers) is the blockchain. When we move most of our biggest internet websites to this decentralized model, we will have reached a new era of the web theoretically dubbed as "Web3".
2. Ethereum was the first decentralized application platform.
The first public blockchain that gained widespread adoption was behind the cryptocurrency Bitcoin. If you contributed to growing and maintaining the security of the Bitcoin blockchain with your computing power, you would be rewarded by getting some Bitcoin. Everyone would theoretically hold the same power to propose changes to this system because nobody held all the computing power to run the currency themselves. As far as I can tell, the Bitcoin blockchain was only built to record currency transactions.
In 2013, college student Vitalik Buterin extracted the idea that blockchain enabled demographic maintenance of applications beyond currency- It could be used to demographically run other software applications in general as I described above. He proposed a software development platform on a blockchain in a whitepaper, and was given $100,000 to drop out and build this new blockchain. That's how Ethereum was born.
Ethereum is still the largest software development platform for decentralized apps almost a decade later. At the time I'm writing this, Ethereum powers 78% of decentralized software applications.
3. In a decentralized application, data and actions are recorded to the public blockchain
When I like a tweet, Twitter records my like activity to their private database that only they can access and verify. On Dwitter (imaginary decentralized Twitter), my like activity has to be saved to the public blockchain.
The code to record app activity, such as a dweet (too far?) or a like, to the blockchain is called a "smart contract". Smart contracts can be written to record any event to the blockchain.
4. You need to pay someone to record your app's actions to the blockchain
If Ethereum's main selling point is that it allows developers to easily build decentralized apps, why is there an associated currency you can buy, and why is it worth so much?
Before I can write data to Ethereum, I need a random person's computer to validate that my action is legit. This validation step may seem totally unnecessary, but it's the whole protocol that allows the blockchain to be editable by the general public because it protects from any fake or malicious actions.
How do we pay the random person for validating our transaction? One way could be wiring USD to them for their services, which can get really messy. Luckily, Ethereum conveniently coded in an automatic mechanism to request you to offer up some coin, named Ether, for someone to claim when they validate your transaction. People who win the bid to record your entry to the blockchain get your Ether. In order to get your own Ether, you set up a computer to help with validating the blockchain or you buy it off of someone else who does it instead.
One reason Ether may be worth so much is because a lot of people use the Ethereum blockchain to power their decentralized applications, and thus there is always a need for people to pay for transactions to be added. This statement is measured because this I am not giving investment advice.
5. The Ethereum blockchain processes 30 transactions per second.
With so many people using the Ethereum platform, processing just 30 transactions often means that your data will take a little while to be recorded. If you want to speed up your processing, you need to bid more Ether for your transaction to validated first. That can get really expensive.
Whereas it costs ~$3 today to do a transaction on the Bitcoin blockchain, and ~$8-40 on Ethereum, it costs $0.0001 to do a transaction on Solana. (Source)
In response, a number of competitive software development focused blockchains have entered the market. Offerings such as Solana and Cardano boast that they can process many more transactions per second than Ethereum can, which makes working with their blockchains much faster and cheaper.
Generally, when blockchains try to increase the number of transactions they can process every second (scalability), they will make tradeoffs in the security or true decentralization of their technology. The tradeoff triangle looks like this:
Currently it's not possible to be the best offering in all three: Decentralization, scalability, and security - Unless the chain introduces a major technical innovation. With that being said, chains such as Solana are rapidly growing in market share of decentralized applications being built on it because it prioritizes scalability and security over true decentralization. Here’s a quick explanation as to why:
At a high level: Ethereum is meant to be accessibly validated by any random person with an average computer. When it comes to the Solana chain which is handling a lot more data all at once, you’re going to need to get a much nicer and inaccessibly priced computer to validate that chain. Fewer people are able to govern the chain.
To recap- the concept of decentralized applications have been around for almost a decade when Ethereum was introduced in a whitepaper. It appears that recently, a palpable number of celebrities have put their names behind crypto technology such as NFTs to usher in newfound speculation and excitement for what these decentralized applications could mean for our online experience in the future.
I didn't get it a week ago, but since writing this piece I’ve developed newfound admiration for the incredible minds who dreamed up mechanisms to build and enforce a democratic digital world.