Building Bitcoin in Rust by Lukáš Hozda

What is it? This is an 11-week Rust cohort designed for programmers who are new to Rust and want to learn it through a practical Bitcoin-focused build path. The curriculum follows the learning arc of Building Bitcoin in Rust, starting with Rust setup and fundamentals, then moving through ownership, traits, testing, mining, async networking, node design, and wallet construction.

Who is it for? This cohort is for developers and technical learners who can code in at least one language and want to transition into Rust + Bitcoin systems programming. If you prefer learning by building and want clear weekly structure, this track is for you.

What are the prerequisites? Comfort with basic programming concepts (functions, loops, data structures, and debugging) is expected. Prior Rust experience is not required. Familiarity with Git and command-line workflows will help. Bitcoin curiosity is required; deep protocol expertise is not.

What are the takeaways?

  • Rust Fundamentals With Real Context: Build a practical foundation in Rust syntax, ownership, borrowing, lifetimes, and idiomatic project structure through Bitcoin-flavored problems.
  • Domain Modeling for Bitcoin: Model transactions, blocks, networks, validation errors, and reusable library APIs that can power miners, nodes, and wallet tools.
  • Production-Style Engineering Habits: Practice testing, error handling, linting, serialization, modular architecture, and clean CLI design using real assignment workflows.
  • Concurrency and Async Skills: Implement multi-threaded CPU mining, then move to async Rust and Tokio for networking and node-style command handling.
  • End-to-End Bitcoin Builder Path: Finish with wallet construction, request/dispatch design, and an extended capstone window to integrate all prior components.
  • Certificate and Community: Earn a completion certificate and continue collaborating with peers, TAs, and mentors on deeper Bitcoin open-source work.

What is the assignment flow? Each week includes one live teaching session and one GitHub Classroom assignment. Assignments are test-driven with visible tests for feedback and may include hidden tests for edge-case grading.

Primary reference book: Building Bitcoin in Rust (Braiins) by Lukáš Hozda.

Cohort Details

Start date

TBA

End date

TBA

Registration deadline

TBA

Duration

11 weeks

Session timing

8:00 PM - 9:30 PM IST

Cohort level

Intermediate

Mode

Self-study, weekly live sessions, GitHub Classroom assignments, group discussions, and QnA

Format

Online virtual classroom

Structure

The structure of the cohort program is designed for self-study. Each week, participants will be assigned to a group to receive questions related to the scheduled chapters. Participants are expected to study the material, prepare answers to their questions, and actively participate in the weekly group discussion sessions, where they will explain their answers to other participants.
Following the group discussion, Bitshala Teaching Assistants (TAs) will be available for doubt-clearing sessions, providing an opportunity to ask additional questions and clarify any doubts that arose during the study session.
After the group session, participants will be given programming exercises based on the weekly study content. Participants are expected to complete and submit the exercises within the designated timeframe.

Cohort calendar

Weeks

Lessons

Chapters


Week 00

Introductions


Week 01

Rust setup, syntax, data structures, and Bitcoin context

Intro


Week 02

Functions, ownership, borrowing, structs, enums, pattern matching

Ownership


Week 03

Bitcoin library architecture and domain modeling

Types


Week 04

Error handling, traits, generics, and iterators

Traits


Week 05

Testing, tooling, closures, macros, and serialization

Testing


Week 06

Smart pointers, interior mutability, and CPU mining

Mining


Week 07

Async Rust, Tokio, networking, and node foundations

Async


Week 08

Wallet CLI, dispatch, and design patterns

CLI/TUI


Week 09

Capstone build sprint


Week 10

Capstone completion, demos, reviews, and graduation


The weekly arc is based on Building Bitcoin in Rust, with a practical assignment every week and a capstone phase in the final two weeks.

Meet Your TAs

RAJ
Lead, Bitshala
ANMOL SHARMA
Engineer, Bold
CODINGP110
Developer, BDK
BTC NOOB
Bitcoin Educator
DHRUVIL
Developer, Lampo
CHAITIKA
Developer, Silent Payments
BALA
BALA
Protocol Developer

Cohort Graduates with Bitshala Fellowship

Bala
Developer
Shreyan
Educator
Faisal
Educator