--- Reflections on Layer 2 scaling 4 months after releasing @deversifi with @StarkWareLtd on main-net Ethereum ---

1. If someone is telling you that 'their' scaling solution is superior in every way, they are likely either pumping their bags or wilfully ignorant.
2. Every blockchain scaling solution has a different set of trade-offs, and as a result has certain advantages AND disadvantages.

For example you could optimise for speed ( @solana), flexibility and developer tooling (like @optimismPBC with OVM), or privacy ( @aztecnetwork ).
3/ However you can't optimise for EVERY desirable parameter without giving up something else. Most often its at the expense of finality or security.

Some trade-offs can make sense for one application, like an exchange, but won't make sense for others, like minting NFTs!
4/ @deversifi chose @StarkWareLtd's Validium because we thought it had an optimal set of trade-offs for an exchange.

Validity / ZK proofs mean that there is no complex game theory or dispute periods, and once a proof is verified trades cannot be rolled back.
5/ Layer 2 scaling is still entirely in its infancy. The first challenge for DeversiFi was to make the technical jump to use a scaling layer. For many apps this is still the challenge ahead of them.

But after that there is a whole new world of challenges waiting - Surprise! 😎
6/ The next set of challenges, which @deversifi is now tackling are equally complicated but don't become obvious until you're actually facing them.

For example dealing with reduced capital efficiency and opportunity cost: https://twitter.com/StarkWareLtd/status/1314124571877015552
7/ TLDR; Scaling blockchains is hard, and if you are a builder on Ethereum don't hope that moving to Layer 2 is instantly going to solve your problems.

When evaluating L2 think about:
- Capital efficiency
- Interoperability between L1 and L2
- Interoperability with other L2s
You can follow @will_harborne.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: