From Bitcoin to Programmable Blockchains
In my last article, I explained how Bitcoin and blockchain work. After learning that, I thought I had a pretty good high-level understanding of blockchain. But then people started throwing terms at me — smart contracts, gas, gwei, ERC-20, Proof of Stake — and I realized I had no idea what any of these meant.
That’s when I began my learning journey into programmable blockchains.
The Core Concept Remains
At its heart, the concept of a blockchain doesn’t change. A blockchain is still a chain of interlinked blocks. Each block contains a set of transactions, and each block’s header stores a hash of the previous block, creating an immutable chain. I briefly touched on this earlier.
In Bitcoin, transactions are simple:
Every transaction just transfers the currency bitcoin from one person to another. This design is powerful but limited, because the transactions can only do one thing: move coins around.
Making Transactions “Smart”
What if we could make transactions more than just transfers? What if they could call functions that execute more complex logic and update state in a distributed system?
This is the idea of a smart contract.
You can think of a smart contract as a decentralized “app.” It exposes functions that users can call, and it maintains internal state.
Imagine a contract called BillCoin.
If a user wants to check their BillCoin balance, they don’t need to rely on a single bank or central database. They call checkBalance function on this smart contract, and every node in the network can return the result. If they call transfer, the contract updates the balances accordingly.
Unlike Bitcoin, which only tracks one currency, a programmable blockchain like Ethereum supports a whole network of smart contracts running arbitrary functions.
The Ethereum Virtual Machine (EVM)
So how does Ethereum make this work?
Every full node in Ethereum runs the Ethereum Virtual Machine (EVM). The EVM:
This is one of the most remarkable aspects of Ethereum: every node can execute the same functions of every smart contract, ensuring consistency without central authority.
Paying for Computation: Ether, Gas, and Gwei
Running smart contracts isn’t free. Validators (the nodes that process and validate transactions) need to be compensated.
That’s where Ethereum’s native currency, Ether (ETH), comes in.
Recommended by LinkedIn
Immutability and the Merkle Patricia Trie
Bitcoin uses a Merkle tree to structure transactions. Ethereum extends this idea with the Merkle Patricia Trie (MPT) to store account balances, contract storage, and code.
Here’s how it works:
For example, imagine Bill’s BillCoin balance is stored under a key like:
0xABCD1234...
In the trie, this address is broken into nibbles (A → B → C → D → 1 → 2 → 3 → 4…) until reaching the leaf node, which stores the balance value.
If Bill’s balance changes:
The trie uses three types of nodes:
This design allows Ethereum to provide cryptographic proofs of account balances and contract storage, just like Bitcoin does for transactions.
Proof of Stake: Ethereum’s Consensus
Ethereum originally used Proof of Work (like Bitcoin), but since the Merge in 2022, it now runs on Proof of Stake (PoS).
Here’s how it works:
This system is more energy-efficient than Proof of Work and still keeps the network secure through economic incentives.
Beyond Bitcoin
Bitcoin was the first generation: digital money with decentralization and immutability. Ethereum and programmable blockchains are the second generation: they turn blockchains into decentralized computers that can run any logic.
Studying Bitcoin gives a foundation. Studying Ethereum shows how that foundation can support a new digital economy.
Link to the article: https://billsbyte.substack.com/p/from-bitcoin-to-programmable-blockchains
A valuable piece showing how programmable blockchains extend the vision from Bitcoin to Ethereum — from smart contracts to PoS and the EVM.