---
# System prepended metadata

title: '[Layer 2 Community Grants 2022 - Consensus book](https://esp.ethereum.foundation/layer-2-grants)'

---

# [Layer 2 Community Grants 2022 - Consensus book](https://esp.ethereum.foundation/layer-2-grants)

# Distributed Consensus in Rust for Hackers

## Brief Project Summary

[TO DO: one paragraph telling the book's project summary]

## What are you going to research? What is the expected output?

[TO DO: two paragraph telling the books objectives]

## What problem are you trying to solve?

[TO DO: two paragraphs]

## How does this project benefit the greater Ethereum ecosystem?

[TO DO: one paragraph answering this]

## Current status of the project

The book is being written right now, the general structure is laid on and about [NEED TO FILL THIS] of it is already done. 

You can check:
- Its [development in its repo](https://github.com/unbalancedparentheses/distributed_consensus_in_rust_for_hackers)
- The published version of the working in progress of the book in [distributedconsensusinrustforhackers.com](http://distributedconsensusinrustforhackers.com/)


The grant would help to bootstrap its development, speeding the delivery time by a considerable amount because the authors will be able to devote more time to research into the subjects and write its chapters. If we're chosen for the grant the estimate time for the project would be [NEED TO FILL THIS].

## Authors

* Federico Carrone. Backend developer. Founder of LambdaClass and Entropy1729, two companies specialized in building compilers, VMs, distributed systems (including blockchains), solving scalability problems, cryptography, security.
Author of Data Science in Julia for Hackers (2020), Cryptography In Rust For Hackers and Distributed Consensus In Rust For Hackers.
* Facundo Olano is a Software Engineer from the University of Buenos Aires and participates in its curricular commission. He specializes in service oriented architectures, such as REST, Backend as a Service, and Microservices. His current focus is on distributed systems and data-intensive applications. He has written popular open-source projects and articles.
* Javier Rodríguez Chatruc obtained a masters in Mathematics from the University of Buenos Aires and then switched to a job in the software industry. He has worked on projects across multiple disciplines, including regular web software development, devops, data science, distributed systems, and crypto. He has written several educational blog posts bringing to earth technical concepts and has published interviews with big names in the software inustry.
* Bono
* Deymonnaz
* Francisco Strambini is a Software Engineering advanced student at the University of Buenos Aires. He has been working for years on distributed systems and applied cryptography.
* Tomás Arjovsky is a Software Engineer from the University of Buenos Aires. He specialized in distributed systems, and is currently leading a team that’s building event-driven backends in Elixir to provide blockchain capabilities to business-related microservices. Previous work includes leading teams that: Built a high-demand system in Elixir for the Argentinian government to provide tourism incentives after the pandemic.  Conducted the data collection process to test mobile sensors before they were shipped to market. This included coding Android apps for data collection and using multi-computing frameworks such as Apache Beam for data ingestion.
* Iván Litteri is a Software Engineering advanced student at the University of Buenos Aires. He is an Assistant Professor on Programming and Algorithms III at the school of Engineering of the same University.

## Book Layout

### Summary

Preface

1. A tour de force in distributed systems
2. Living with failures
3. Replication
4. Consistency
5. Modeling distributed systems
6. Replicated state machines
7. Introduction to Consensus
8. Crash fault-tolerant (CFT) consensus
9. Byzantine fault-tolerant (BFT) consensus
10. Bitcoin and permissionless consensus
11. Proof of Stake consensus
12. Directed acyclic graph (DAG) consensus

i. Appendix: Summary of algorithms 
ii. Appendix: TLA
iii. References and notes