Prysmatic Labs 2021 Update

Terence Tsao
Prysmatic Labs
Published in
6 min readJan 22, 2021

--

Summary for 2020

2020 without a doubt was an eventful year for all of us. Looking back at what we have accomplished, here are our top highlights:

  • Successfully launched the eth2 beacon chain. 4 client teams, the Ethereum Foundation, and the community delivered the beacon chain on December 1st. Since then, the beacon chain has been secured by 2 million plus ETH. It has become home for 67,000+ validators with 20,000 more in the pending queue. Great communities like ethstaker and great tools such as beaconcha.in have also emerged from it.
https://beaconcha.in/
  • A side effect of our impact on eth2 has been the incredible growth of our Discord server, as we are just shy of 10,000 members. Our Discord has been home-base for a variety of stakers, enthusiasts, open source contributors, and more. We are grateful to have members that help each other, answer questions, and we truly believe our community has become self-sustaining over this past year. Every member really enjoys being there with us and sharing amazing conversations about all things Prysm and Ethereum. Link if you haven’t joined our Discord server yet.
  • Prysm has gotten the eyes for all sorts of Go developers. It was the second most popular Go repository on Github for the month of December. This has given us tremendous exposure to the Go community. Even if it’s a simple typo fix, an improvement to test, or more complex features, we have no shortage of open source contributors that want to get involved. As Go’s syntax is small compared to other languages and easy to learn, most of the contributors have found it easy to work with Prysm.
  • We were fortunate to extend our team size to 8. Victor and Radek joined us in 2020 and they were instrumental to our success. I’d personally like to thank them for being so dedicated to catching up on everything eth2 related since the moment they joined. We all have felt the positive energy and the impact over the year.

Pipeline for 2021

Looking forward into 2021, there is no shortage of interesting issues to tackle and innovations to experiment with. Our short term and long terms goals are as follows:

Short to Mid Term

Optimized Prysm Slasher Design

The current prysm slasher implementation does not fare well in terms of resource usage. We are working on revamping it from the ground up. We are going through extensive review feedback and testing before productionizing it for our stakers. Our end goal is for an average staker to be able to run a slasher with the same experience they can run our beacon node.

Validator Web UI

The built-in web interface for Prysm validator provides nice onboarding and ability to monitor health. Unfortunately, it is still in early beta. The immediate priority is to resolve open issues and make it more aligned with what you can do with the Prysm CLI. If you love working on the front end or have new feature suggestions, please do keep in touch.

Eth2 API implementation

Alongside maintaining our own version of an eth2 API known as ethereumapis, we are working in parallel to implement the official eth2.0-apis endorsed by all client teams and the Ethereum Foundation. It will allow easier interoperability between client implementations from a user’s perspective. Here’s the tracking for the overall progress.

Weak Subjectivity Sync

As the chain grows longer, weak subjectivity sync will be required to defend against long range attacks, and also serves as a foundation for better user experience of chain syncing. We are currently working on a design for this.

Validator Efficiency Improvement

We will release consistent updates to improve validator efficiency and profitability. As the chain size increases, it’ll be important to continuously discover and resolve bottlenecks.

Developer Wiki

We believe we can better service open source if we can capture key Prysm knowledge in a comprehensive developer wiki. The wiki will help everyone understand the design decisions and implementations of various aspects of Prysm by simply reading it. The wiki will also contain recordings of design sessions for certain parts of the code base.

User Engagement Moderation

We recently onboarded our first community moderator tasked with dealing with malicious users, spam bots, answering common questions and opening bug reports. As our Discord gains more popularity, this will ensure it remains a safe place, everyone can get answers and no questions will get lost.

Monthly Development Update

We will switch our bi-weekly medium update post into a monthly update post. This gives us more time to write and enables us to deliver better content. We are also planning for infrequent release updates in our Discord so stay tuned.

Long Term

The long term tasks will be driven by the on-going research on the future direction of eth2. Without going too in-depth, we’d love to share with you some of the upcoming implementation plans. For a detailed definition and overview of the following research components, I recommend reading Danny’s State of Eth2 and Paul’s Lighthouse Update.

First network upgrade

A minor network upgrade is planned for mid-year. The content of the upgrade is still getting drafted and discussed. So far, it involves accounting reforms, which should improve validator incentives and state management. It also introduces a new sync committee for light client support. Lastly, slashing penalties and the inactivity leak will be set to their original values. This will be good practice for larger updates (sharding, merge) later.

The initial work for the light client sync committee has begun. In parallel we are reviewing the other draft contents regarding accounts reforms from client implementation’s point of view, and providing feedback. We are very excited about the first update!

Merge

Merging eth1 to eth2 and deprecating proof of work is a very exciting topic to us. As far as we know there’s progress with a merged geth(eth1)+teku(eth2) client running private testnets today. We are currently working on understanding the research landscape and open problems regarding merge so we can better provide feedback.

Sharding

Following Vitalik’s data availability sampling proposal and some fresh cryptography, we’ll shortly begin to study the latest data availability sampling proposal to satisfy the roll-up centric roadmap. There’s a lot for us to do in this area, such as prototyping the existing libp2p stack to analyze trade offs for the data sampling requirements, and exploring on-going Kate commitments implementation and data sampling implementation in Go.

Wrapping it up

Now we have a fully open greenfield ahead of us, full of new projects and exciting aspects in the Ethereum roadmap, such as light client, merge and sharding research. This year will be like no other we’ve ever seen, and we’ll work hard to keep Prysmatic Labs at the forefront of Ethereum development. Onwards! 🚀

Interested in Contributing?

We are always looking for devs interested in helping us out. If you know Go or Angular and want to contribute to the forefront of research on Ethereum, please drop us a line and we’d be more than happy to help onboard you.

Check out our contributing guidelines and our open projects on Github. Each task and issue is grouped into the Phase 0 milestone along with a specific project it belongs to.

As always, follow us on Twitter or join our Discord server and let us know what you want to help with.

Official, Prysmatic Labs Ether Donation Address

0x9B984D5a03980D8dc0a24506c968465424c81DbE

Official, Prysmatic Labs ENS Name

prysmatic.eth

--

--

Terence Tsao
Prysmatic Labs

Building Ethereum 2.0 client at Prysmatic Labs @Prylabs