1/ Why are there so many different L2s or rollup flavors? Why the ever-increasing complexity in the zk-rollup space? Cairo, Noir, zkEVM, Zinc, Miden, Nightfall What if I told you all the diversity is a good thing. Your DeFi app can pick its flavor 🧵 2/ First, why is diversity good? It's the outcome of a healthy competitive landscape that's the breeding ground for innovation Ship fast => get feedback => more ideas => faster innovation It's actually positive-sum. 3/ And the different approaches branch into variations that give different solutions. Eventually, these solutions can merge or serve different builder needs. I call it L2 darwinism. 4/ And because of this variation, diving into the world of ZK rollups can be exhausting. It feels inaccessible and it changes quickly. So how do we offer up the bleeding edge of zk-rollup technology to the normies like me? 5/ The current ETH ecosystem has traditionally drawn the most builders, with the most tooling, and largest audience. It's nice that you can start developing without having to understand the intricacies of EVM opcodes or solidity compilation. This gets abstracted for the builder 6/ So as we have these new variations pop up, each has its own advantages But without the network effect of more developed infrastructure, it's hard to keep up Without new builders and users entering, even the best ideas stagnate. 7/ As a builder, it would be really cool if your DeFi or NFT app could pick its variation or flavor without sacrificing network effects or tooling. Because maybe your application can benefit from the underlying innovation that one of the variations provides. 8/ Which is why I’m so excited about the Sovereign SDK from @sovereign_labs It allows builders to leverage zk-rollup technology in an accessible way, while simplifying and abstracting choices around infrastructure decision. https://twitter.com/sovereign_labs/status/1620112142774202368?s=20&t=nhFYW5xQrNhBIRNiTaF7tw 9/ Maybe I benefit with working with a RISC-V VM or zkEVM, meaning I write my contracts in RUST or Solidity. And maybe I want access to larger call data or liquidity so I can pick between different L1s such as Celestia or Ethereum to connect with. 10/ I can pick the type of bridging module I like and also add built in MEV auctioning as a module. Or I can just spin up a simple application from a boilerplate and not think about any of this. It just works and is composable with other apps. And this concept is what I love. 11/ This tooling makes ZK rollups the ultimate Darwinian primordial soup of ideas, with: - Diversity of VMs/rollup architectures - Accessibility of ZK ecosystem to normies - App-chain approach without fragmentation - Developers hit the ground running with the latest tech