Ethereum Sharding : The demand for scalability is becoming increasingly urgent. The Cryptokitties incident demonstrated how quickly the Ethereum network can clog-up. While many in the community are excited for Ethereum’s Sharding, there are just as many who struggle to understand how sharding will help Ethereum scale. In this post, I will attempt to explain Ethereum’s sharding using a simple analogy.

Understanding The Problem

One of the major problems of a blockchain is that an increase in the number of nodes reduces it’s scalability. This may seem counterintuitive to some people. “More nodes = more power. So more speed, right?” Not exactly.

One of the reasons a blockchain has its level of security is because every single node must process every single transaction. This is like having your homework assignment checked by every single professor in the university. While this may ensure that your assignment is marked correctly, it will also take a really long time before you get your assignment back.

Ethereum faces a similar problem. The nodes are your professors. Each transaction is your assignment.

Sure, we can reduce the number of professors (nodes) until we are satisfied with the speed. But as the assignment (transaction) backlog increases, we will need to further decrease the number of professors. This will eventually lead us to rely on a few “trusted” group of professors. A centralized group.

This defeats the ideology of blockchain decentralization. It’s much easier to compromise/corrupt a smaller group of professors (nodes) than the entire university (the entire network). As a result, we sacrifice security in an effort to scale.



To sum it up, blockchains must choose between Two of the Three following attributes:

SECURITY

SCALABILITY

DECENTRALIZATION

This is also referred to as the Blockchain Trilemma. Sharding is an attempt to tackle this limitation