It's official: after over five years, TypeChain has now been deprecated!
🔌 TypeChain enabled TypeScript developers to interact with Ethereum contracts in type-safe manner.
It's been a fantastic journey and an opportunity to make great friendships.
Some closing thoughts 👇 2/ TypeChain is probably the most impactful open-source tool that I've built so far. It appeared just in time (~2018) to help developers migrate to this new, cool language called TypeScript.
Jun 14, 2023 • 10 tweets • 3 min read
What does scaling a blockchain 𝗮𝗰𝘁𝘂𝗮𝗹𝗹𝘆 mean? Do rollups & L2s really scale Ethereum? If so, where does this superpower emerge from?
Buckle up, it's time to demystify these secrets! 2/ First things first, why not simply speed up L1? Ethereum processes ~2.5M gas units per second. Why not amp it up to 10M? Decrease the block time at the same time? Why BTC and ETH communities are too dumb to see it?
Mar 30, 2023 • 13 tweets • 4 min read
Just this week, two highly anticipated universal zk-EVMs launched: @zksync Era and @0xPolygon zkEVM! Both use validity proofs for execution correctness, but how do they differ?
Let's dive into state diffs vs TX data! 🌊🔍
🅰️ Polygon zkEVM pushes L2 Tx data to L1 (like optimistic rollups). From, to, value – it's all there! Check out this batch submitted by a sequencer: etherscan.io/tx/0x19e45aaef… You can even grep for L2 addresses!
Jul 11, 2022 • 7 tweets • 2 min read
I synchronized Arbitrum and Optimism rollups full nodes.
Optimism was done after only 2.5 days but arbitrum took whole 3 weeks to synchronize.
What’s going on here? 🧵
First of all — YES, Arbitrum network in more popular. It has about 35% more txs, a bigger state and so on. However, that doesn’t explain why it takes *~10x* longer to sync. /2
May 12, 2022 • 19 tweets • 6 min read
How I attempted to break @fuellabs_ v1, a short story about the importance of running validators for optimistic rollups.
Let's start from the beginning: 🧵👇 1/ Fuel v1 is a (very first!) optimistic rollup running on top of Ethereum. It uses the UTXO model to make tx execution parallel. But for sake of this discussion, it is interesting because of a few other reasons:
Nov 10, 2021 • 6 tweets • 3 min read
I am stoked to finally talk about DAI Wormhole. 🪱🕳 will allow users to teleport DAI between L2s while being fast, cheap, and secure at the same time
Our mission is to make DAI first, truly cross-chain stablecoin.
Short 🧵👇
forum.makerdao.com/t/introducing-…2/ Okay, so how does it work? First, a user burns DAI on domain A. Then by providing an oracle attestation of the burn, they can mint fresh DAI on domain B. And... that's it!
Jul 25, 2021 • 7 tweets • 3 min read
The funny thing is that the best talks last week in Paris didn't happen during @EthCC but a Geth workshop organized by @optimismPBC.
Short 🧵:
It was organized in an amazing, stylish venue and at the beginning, there were only ~15 ppl including galaxy brains like @VitalikButerin, @karl_dot_tech, and @ben_chain. The quality of discussions during lunch was ridiculous 😂
Jul 14, 2021 • 21 tweets • 6 min read
I just saw A LOT of excitement about fast confirmations on newly deployed @Uniswap on @optimismPBC , but how does it really work, and can users trust them? Finally, isn't a single sequencer that provides such confirmations a threat to decentralization? Let's talk it through👇👇👇 2/ First, things first — sequencers are privileged actors in many rollup systems (@optimismPBC , @arbitrum, @StarkWareLtd , @zksync ). They receive transactions from users, order them and submit them in batches to L1.
May 21, 2021 • 21 tweets • 5 min read
1/ It's high time for @optimismPBC vs @arbitrum. I know you've been waiting for it so let's go!🔥🔥🔥
Long 🧵 2/ Let me start with similarities, they both:
• are rollups ie. real L2s and they store all txs on L1
• are optimistic meaning they use fraud proofs
May 9, 2021 • 4 tweets • 4 min read
TypeChain v5 is finally here!🔥
👉Incremental generation and typed getContractFactory (!) with @HardhatHQ
👉No more index signature for @ethersproject - catches more mistakes early
👉By default doesn't generate overloads when not needed - less clutter
One of the interesting things is that zkEVM takes YUL as input and uses LLVM to generate the bytecode of the circuit. This means few things: 👇
First of all, the @zksync team didn't have to reimplement the whole solc but rather write only the LLVM backend. While this for sure is still not a trivial task, it makes bug surface smaller and toolchain audits easier.