# Week 3: Expanding Scope and Presenting at EPF Day
This week marked a significant pivot for the project. After discussions with my mentor, while I will continue the development of the **Rust KZG tutorial** to ensure a stable and valuable outcome for the community, I am also adding a new, parallel research track: **optimizing the [Grandine](https://grandine.io/) PeerDAS implementation for production**. This dual approach allows me to build a foundational educational resource while simultaneously applying that knowledge to a high-impact, albeit higher-risk, research problem.
The main event of the week was presenting this expanded vision at **EPF Day**.
## Expanding the Project Scope with PeerDAS Optimization
The new research track will run alongside the tutorial development. The goal is to enhance the performance of the `rust-kzg` library, specifically for the workloads required by PeerDAS (EIP-7594). This involves deep performance analysis and implementing a new optimization layer for Grandine. This synergy is powerful: the process of creating the tutorial provides the deep, systematic knowledge required to effectively tackle the complex optimization research.
## EPF Day Presentation
I developed and delivered a presentation titled **"Grandine: Optimizing PeerDAS for Production."** The talk covered the project's full scope:
* **The Tutorial as a Community Resource**: I introduced the ongoing tutorial project as a foundational guide for developers entering the KZG ecosystem.
* **The Research Track**: I then detailed the new research plan, covering:
* **Data Availability Sampling (DAS)**: The core concepts and its importance for Ethereum's scalability.
* **KZG Commitments**: A technical overview of how they secure and enable efficient DAS.
* **`rust-kzg` Architecture**: An analysis of the library's multi-backend design and performance.
* **Proposed Optimization Strategy**: A plan to build an intelligent layer to improve performance for Grandine's production environment.
## Community Engagement and Learning
I also participated in an EPF Day workshop on **libp2p**, the networking stack used by Ethereum. This was highly relevant for understanding the P2P challenges in data sampling. During the workshop, I discovered a bug in the tutorial's workspace that prevented it from compiling and submitted a [detailed issue report](https://github.com/libp2p/universal-connectivity-workshop/issues/4) to help the team and other learners.
## Week 3 Achievements
* **Expanded Project Scope:** Added a parallel research track for production-oriented PeerDAS optimization while continuing the tutorial work.
* **Delivered EPF Day Presentation:** Successfully presented the project's dual focus: the tutorial as a community resource and the new research plan for Grandine.
* **Established Research Foundation:** Completed a baseline performance analysis of the `rust-kzg` library, identifying key bottlenecks for the optimization track.
* **Contributed to the Ecosystem:** Identified and reported a build issue in the official `rust-libp2p` tutorial, contributing to the broader developer community.
## Next Steps
For next week, I will be making progress on both tracks:
1. **Tutorial Development**: Continue writing the next chapters, focusing on the mathematical foundations of KZG and advanced API usage.
2. **Research Track**: Begin the deep performance profiling of `rust-kzg` backends and start designing a proof-of-concept for the adaptive backend selection mechanism.
***
## References and Further Reading
1. **Grandine Official Website**: The production-grade execution client the optimization research is focused on. [https://grandine.io/](https://grandine.io/)
2. **EIP-7594: PeerDAS Specification**: The official Ethereum Improvement Proposal for Peer Data Availability Sampling. [https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7594.md](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7594.md)
3. **rust-libp2p GitHub Repository**: The Rust implementation of the libp2p networking stack, which is fundamental to P2P systems like Ethereum. [https://github.com/libp2p/rust-libp2p](https://github.com/libp2p/rust-libp2p)
4. **sppark: GPU Acceleration for MSM**: A library that provides GPU acceleration for Multi-Scalar Multiplication (MSM), a core bottleneck in KZG operations. [https://github.com/supranational/sppark](https://github.com/supranational/sppark)
5. **KZG Polynomial Commitments by Dankrad Feist**: An essential blog post that explains the mathematical foundations of the KZG commitment scheme. [https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html](https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html)