Well, this is exciting.
This is my umpteenth attempt at starting to write regularly.
I started up a regular writing schedule on Revue, and that failed (I made it unnecessarily too much effort and had to kill it). I then started writing on Wordpress, but switched over to GitHub Pages on my personal site and the content disappeared (I think it's still knocking about somewhere, but wasn’t worth the effort to find and resurrect). I started on Medium and have a few posts that are still alive (I wrote this on Credibility vs Experience while at University, and my attempt at garnering more subscribers to my fortnightly Revue newsletter by summarising one of my newsletters here (in hindsight, curating opinionated pieces wasn't a bad idea and might be something I do again, in some form).
Over the past few months, I've strapped myself in as I’ve dived straight into the metaverse rollercoaster. There is just too much excitement to ignore. New protocols, Dapps, DeFi, DAO's, Layer 2 scaling solutions and more have provided me with enough ammo that I could be kept busy for months and still have enough in the tank for other interests in my life (data science, business/tech strategy and more).
While there’s A LOT of content already written about these topics, I hope to appeal to a different reader - someone who wants a no-frills understanding of what the heck is going on and where we’re going. Hopefully, this will also help me articulate these concepts better when asked by friends and family (or, just direct them to these posts).
With that long opening monologue over, I’m excited to begin the journey.
Much of my writing will act as a way for me to gain clarity on an important topic - it’s easy to go down the rabbit hole, but much harder to then explain this in simple terms for anyone to understand.
This is why the most logical place for me to start is the whitepapers that started everything.
I’m going to write a short summary on both whitepapers, extract key lessons from each that will inform the current state of play and what we can expect going forward.
Bitcoin (the network and cryptocurrency) started thirteen years ago and has grown to become the dominant player (by market cap) in the crypto ecosystem. Published on October 31st 2008, a whitepaper entitled “Bitcoin: A Peer-to-Peer Electronic Cash System”, was created as a proposal for “a decentralized and incorruptible solution for electronic cash” (we’ll get into what all of this actually means).
The document was submitted under the pseudonym “Satashi Nakamoto” which might be a person or group of people - there’s been a ton of speculation over the years, with many in the community speculating they’re from the Commonwealth, based on their expressions in source code comments & forum postings (e.g. the use of “bloody hard” and the spellings of “grey” and “colour” is stuff I’m most likely to hear walking down the streets of London), rather than from Japan, as originally stated on his P2P Foundation profile.
It’s late 2008 and the global financial crisis is causing shock waves around the world. Anger at the worldwide banking industry, governments and other centralized authorities has reached its peak.
One of the central reasons why financial institutions have been so integral to carrying out digital transactions is because we require them to record every single transaction. The reason we have to rely on them as a necessary evil, is to deal with the double-spending problem. Double-spending is when the same single digital token can be spent more than once. Things don’t work out well if you can send $100 online, yet still, have that original $100 under your name - so you could continue to spend that $100 as many times as you wanted. Unlike physical cash, a digital token consists of a digital file that can be duplicated or falsified. Financial institutions keeping record of me transferring $100 to Alice, and now have $100 less to spend is a slow and cumbersome process (more on this below).
To overcome the double-spending problem, Satoshi proposes a new system called “Bitcoin” which enables people to conduct direct electronic payments without a third party verifying this cash hasn’t been spent elsewhere.
“No mechanism exists to make payments over a communications channel without a trusted party. What is needed is an electronic payment system based on cryptographic proof instead of trust, allowing any two willing parties to transact directly with each other without the need for a trusted third party”
- Satoshi Nakomoto in the Bitcoin Whitepaper
Satoshi’s solution is an electronic payment system based on cryptographic proof (essentially a form of encryption that allows information to be kept a secret), instead of trust in third-party institutions. This would allow any two parties to transact directly with each other, through a ‘peer-to-peer distributed timestamp server’.
That last part is essentially referring to a ‘blockchain’ - a term that’s entered the zeitgeist in the past few years, but one you might be wondering what the heck it even is.
A blockchain is a ledger that keeps updated records of digital transactions (of who owns what). Rather than a central administrator, a blockchain has a network of replicated databases whereby anyone (yes, you too) can become a Bitcoin validator (someone who holds a record of the Bitcoin Blockchain) by keeping a record of every transaction that’s happened on your computer. This has become more challenging due to the computational power required for a normal PC, but the theory still stands.
I can transfer a certain amount of Blockchain (this includes fractional amounts like 0.01 of a bitcoin) to anyone who also has a Bitcoin wallet address (where they can receive Bitcoin). Thanks to cryptography, your name and wallet address isn’t exposed to everyone as everything in that transaction is encrypted. It’s secure, authenticated and private. The timestamp on the Bitcoin network’s blockchain ensures the network is running a single timeline.
Double-spending is avoided as every computer syncs copies of the whole blockchain and can validate a transaction as valid or not.
Blockchains are:
Stay with me on this, as it’s important. A blockchain is a list of transactions stored on a network of computers. A blockchain is made up of “blocks”.
Each block has:
Suppose I want to send Alice 0.01 bitcoin, as the example above.
First, I and Alice would need “crypto wallets” - these wallets have two important keys:
The process would look like this:
“Proof of Work” aka mining, requires that individual computers within the network solve extremely complex mathematical puzzles (with a lot of computing power and expensive hardware equipment) to create a new “block” and validate the transactions within it.
Essentially, miners that solve the puzzle and update the blockchain get a reward (in the form of bitcoins). The network then picks the longest valid chain. Good actors that dedicate time and resources are rewarded, while those that try and submit an alternative block timeline will have to dedicate a TON of computing power to manipulate the blockchain - this deters bad actors from creating fraudulent transactions.
Ethereum was created in 2013 by Vitalik Buterin to let anyone “write smart contracts and decentralized applications (dapps).”
So, what does that even mean? We’ll get to ‘smart contracts’ and ‘decentralized applications/dapps’ shortly, but let’s first talk about why Ethereum even exists.
The Ethereum Whitepaper was a breakthrough at the time. Like Bitcoin, it’s build on the blockchain and is decentralized and transparent. Ethereum’s goal is to become the world’s decentralized computer (called EVM or the Ethereum Virtual Machine). The whitepaper was written to address some of the limitations of the Bitcoin blockchain.
Ethereum includes a “Turing complete programming language” for users to create “smart contracts” that dictate the execution of actions. This approach empowers complete freedom for developers to build any application they wish.
A “Turing complete programming language” means it can take any program and run it. It’s “Turing complete” if it can run a any program (irrespective of the programming language) that a Turing machine can run given enough time and memory. Most programming languages operate in this way, because they have features like addition, multiplication, if-else conditions and more.
There are many use cases listed in the Ethereum whitepaper such as:
We are seeing many of these applications play out today, through entities like Filecoin (decentralized file storage), Gitcoin (decentralized marketplace), Gnosis (prediction markets) and many more.
Another important feature of the Whitepaper was the introduction of DAO’s. I’m too excited by the potential of DAO’s not to do a singular post on these entities, but here’s the short summary: a DAO is a virtual entity that has a certain set of members around a common goal, whereby actions are implemented through code via a democratic voting process.
DAO’s typically hold a treasury of assets and the members of the DAO have a share in the decision making process for how to allocate its funds. This was first mentioned in the Ethereum whitepaper by Vitalik, but has caught fire more so in the past 12 months.
Yes! Back to it.**
**
There are four important components to the Ethereum blockchain:
I realise there’s probably a lot I’ve left out - especially with regards to the Ethereum whitepaper, where I could’ve gone further down the rabbit hole of explaining:
At the start, I promised to focus on the fundamentals, and the fundamentals to me are the main areas. The knowledge above should provide anyone with a foundational understanding of how Blockchains work and the problems these solutions stemmed from.
We’ve spoken about a range of different concepts from smart contracts to Proof of Work and more.
After spending time reviewing the whitepapers, I’ve come away with a few learnings from Bitcoin & Ethereum’s beginnings:** **
Thanks for reading - if you like what you read or have any feedback, you can subscribe to my newsletter where I plan to write about emerging technology, web3, the creator economy and much more.