Since inception, the Ethereum ecosystem has been full of collaboration and openness, with a culture that is second to none in inclusion and participation. So, it was with honour that ChainSafe was able to help reboot a mainstay CryptoToronto event: the Toronto Ethereum Developers Meetup, on March 31st, 2021. Although the pandemic has halted pretty much most things in life, it cannot halt the spirit of open-source development. The Ethereum community, and the wider blockchain space in general, continued its unprecedented growth throughout 2020 and into early 2021, and we were extremely proud to offer a space for the global Eth dev community to come together and share the progress of each other’s work under the Toronto banner in a virtual event.
On that particular Wednesday night, the focus of content was “Ethereum 2021 and Beyond”. EDMTo* was a fun and wide ranging conversation that spanned topics from Web3.js to Gitcoin to NFTs to Javascript to Optimistic Rollups. We had 60+ registrants and almost 40 attendees join our virtual event. For a reboot since the last event (Dec 2019), we were thrilled! Our goal in the future is to build on the traction we generated in the first reboot and increase participation with even more diverse speaker representation from around the world to speak at the EDMTo event.
In an attempt to make our content as accessible and consumable for our audience as possible, we have decided to gather the “show notes” for the meetup. The talks themselves have already been posted on ChainSafe’s YouTube as a playlist, and can be viewed individually for a more visceral experience. However, if you are a fast reader and just need a Cole’s Notes for what was discussed in the talks, then this will be a good resource for you.
Of course, none of this would have been possible without the contributions from the amazing speakers themselves — so thank you to you all! The show notes for each talk have been broken down into key points, with the link to each video included in the header. Do enjoy.
*Not an electronic dance music event
Wyatt Barnes — Jumping into the Ether
Wyatt Barnes is a core contributor to the Web3.js library working at ChainSafe.
The theme of his talk revolved around encouraging those on the fence with blockchain to make the leap. Hence, the title “Jumping into the Ether”. Wyatt’s story is quite a fascinating one, because his come-up as a blockchain developer is orthogonal to convention.
Here’s a short summary of his path:
- Forced to drop out of high school
- Did not attend college
- Worked at a car wash
- Took a coding bootcamp
- Tried web development but was deterred by entrenched incumbents
- Took interest in crypto in 2017
- Attended meetups
- Met mentors like SushiSwap’s Joseph Delong and consultant Jay Payne
- Took a leap of faith, began working in blockchain
- Now contributing open-source code at ChainSafe
How is he helping others make the jump?
- Rewriting Web3.js with his team to make it a bit easier to work with for new developers
- Revamping Web3.js documentation so it is user-friendly for new onboarders into the space
- Creating new, maintainable Web3.js examples because existing ones out on the web are largely outdated and do not work
- Encouraging others to join the convo in the Web3.js Github or the Web3.js Discord
ChainSafe wrote a detailed tweet thread about Wyatt’s story here. One of the commonly recited phrases here in ChainSafe is “attitude over aptitude”, which Wyatt and many other blockchain notables have come to embody. Since blockchain is still such a nascent space, we highly value those who thrive on the edge, with a strong appetite to learn and to contribute. Are you someone like that? Have a chat with us: careers@chainsafe.io!
Willem Olding — Fast Exits from Optimistic Rollups
Willem Olding is a Solutions Engineer at ChainSafe. He works on a variety of research projects, breaking down blockchain architecture, and suggesting protocol improvements to ChainSafe’s various project teams.
The theme of Willem’s talk is Optimistic Rollups, its architecture and background, how to “skip the window” on exiting and the various ways this can be applied to bridges. For those new to optimistic rollups in general, this is an excellent primer (it was for me!). I will attempt to summarize:
With Optimistic Rollups, higher throughput is achieved since the state transition function is computed off-chain (layer 2) and committed on-chain (layer 1) by a sequencer [sequencers pledge to accurately execute received txs]. The state transition is “optimistically” assumed to be correct as sequencers must post a bond [stake] with the state root, which can be observed, challenged, and slashed if found fraudulent by adjudicators.
However, this has distinct implications on finality. If rollups can be rolled back on a successful challenge, there must be some fixed period after which they cannot be rolled back in order to provide finality. This window must be large enough such that challengers can get their challenge included in a block with high certainty. A large window also helps prevent blockspace DoS attacks by malicious sequencers by making it prohibitively expensive to execute. Hence, finality is said to take 1–2 (!) weeks in Optimistic Rollups.
This makes entry into rollup chains fast, but exits to L1 chains cumbersome.
The key insight shared by Willem is that a valid state root can never be proven invalid — which means it can never be rolled back. The fast exit workaround is surprisingly simple: you have a liquidity provider observing for burning of wrapped ether on a rollup chain, check that everything is valid, and then immediately dispatch the fund to the exiting user near-instantly (for a fee). 1–2 weeks later, once the rollup has reached finality, the unlocked ether will go to the LP instead.
Willem then muses on application of his fast rollup exits to one of ChainSafe’s products called ChainBridge. Since ChainBridge is currently operated by a trusted federation of relayers, these relayers can actually be leveraged to observe rollup exits, and facilitate near-instant interoperability via cross-chain token transfers and calls, for both L1 and rollup chains.
🤯
Scott Moore — Gitcoin: Build for the Public Good
Scott Moore is a BD lead and co-founder at Gitcoin.
Scott opened his talk by emphasizing an important point: put yourself out there! Get involved in the space, join Discord channels, and even DM people! It is an open community built on collaboration and participation, and if you do this enough, opportunities will emerge.
He goes on to discuss:
- The beginnings of Gitcoin as a bounty program for developers to build their experience developing in Ethereum
- Gitcoin Grant’s adoption of quadratic funding, which democratically distributes funds from a matching pool to popular Ethereum public goods
- A summary of some examples of Gitcoin funded projects like: DeFi protocols like 1inch Network, Uniswap, Zapper.fi; samczsun as the first quadratic freelancer; Evan Van Ness for running “Week in Ethereum”; EIP-1559
- Grants Round #9, which officially completed with $1.38m raised by the community (led by Badger DAO 🦡), $500k in the funding pool, and 164.5k contributions
- A Four Step system to identify, manage, and defeat fraud by projects trying to get their projects funded by spamming “individual” contributions
Richard Moore & Yuet Loo Wong — Sprinkles NFT
Richard “Ricmoo” Moore and Yuet Loo Wong are both avid contributors to the Ethereum ecosystem.
Their latest contribution is their ETHGlobal/NFTHack submission called “Sprinkles” — a neat DIY gadget/frame that allows one to “sprinkle” their favourite NFTs in the meatspace. The device also allows verification that the owner of the Sprinkle is also the owner of the NFT being displayed. Neat!
Technical hardware:
- ESP32 chip
- ATECC806A Secure Enclave
- Qi Receiver
- 1.3” IPS Retina Display
- SD card
All for around $10 (at scale, before assembly costs)!!!
The duo also fielded some very interesting questions from the participants at the meetup, so be sure to check out the talk for the full context.
Cayman Nava — Lodestar: Debugging Live Javascript Applications
Cayman Nava is the Tech Lead for the Eth2 Typescript client implementation called Lodestar.
Cayman walks us through some ways to debug a Javascript application using his team’s work with their Eth2 beacon node Lodestar as an example. Debugging from the command line is clunky and not really scalable, so Cayman offers some other workarounds:
- Prometheus metrics, which provides context-rich dashboards
- Chrome Inspect via DevTools, which allows Chrome to hook into a running node process for detailed inspection
We also had some great questions from the crowd for this one, so be sure to tune in on YouTube to get the full context!
Frankie Pangilinan — Web3.js update
Frankie Pangilinan is a Web3.js developer working together with Wyatt Barnes to improve and maintain the Web3.js library.
Some big announcements for the Web3.js team:
- Expect within the next weeks a major version bump
- The web3-bzz and web3-shh packages will be fully deprecated
- Wyatt and Frankie have been rewriting the legacy library into modern Javascript
- A new feature which makes the core Web3 library much more small and lightweight — easy to import libraries you want to use
- Also an Eth2 package was created and works with the Eth2 client’s Beacon Chain
EDMTo: April
That’s all, folks! We’re looking to put together another meetup for the end of April, so stay tuned to ChainSafe’s Twitter for more information. If you’d like to give a talk, or have any feedback about the last one, please don’t hesitate to email me at tim.ho@chainsafe.io!
Get involved
Want to work with ChainSafe? COME JOIN US!!! We have many open positions, so take a look and get in touch with us at careers@chainsafe.io if you are interested!
Learn more about ChainSafe by visiting our website, through our Medium, via Twitter, or by visiting the ChainSafe GitHub. Our YouTube is also a great resource!