Programming Bitcoin

Cohort Kicking off on 08th November 2024

What is it? The PB Cohort is an advanced,hands-on exploration of Bitcoin protocol internals. Through solving exercises in python, you’ll gain skills to truly understand Bitcoin at the protocol level, moving well beyond the basics. Guided by Jimmy Song’s Programming Bitcoin, this cohort delves into cryptography, Bitcoin’s scripting language, and transaction mechanics, helping you develop a programmer’s intuition for Bitcoin's elementary protocol routines. By the end, you will have your own little Bitcoin tools library in python, and be prepared to innovate and operate confidently within the Bitcoin FOSS ecosystem.

Who is it for? This cohort is for advanced learners— technically proficient individuals, developers, and engineers looking to dive deeper into Bitcoin’s architecture and scripting. If you understand Bitcoin basics and are ready to build, experiment, and solve problems at a protocol level, this is for you.

What are the prerequisites? You should have a solid understanding of Bitcoin basics (ideally having read Mastering Bitcoin by Andreas Antonopoulos) and proficiency in Python programming. Familiarity with command-line tools and Unix/Linux operations will be beneficial for more complex exercises. Above all, your grit to solve challenging problems is what matters most!

What are the takeaways?

  • Achieve Bitcoin Programming Mastery : Acquire in-depth knowledge of Bitcoin Core, covering Bitcoin scripting, consensus rules, and protocol behavior.
  • Build Cryptographic Proficiency : Develop a strong foundation in cryptographic concepts essential to Bitcoin, including elliptic curve cryptography and digital signatures.
  • Gain Advanced Scripting Skills : Write and validate complex Bitcoin scripts, enabling you to create custom transaction structures and smart contracts.
  • Hands-On Node Management : Gain experience setting up and managing a local regtest node, essential for testing and experimenting in a controlled environment.
  • Community : Connect with other advanced Bitcoiners and developers, engage in discussions, and collaborate with like-minded learners for future opportunities.
  • Certificate of Achievement : Earn a certificate recognizing your completion and proof-of-work.
  • Fellowship Opportunities : Gain access to fellowship opportunities at Bitshala and exclusive invites to Bitspace for more physical community experiences.

What is the fellowship program? The fellowship program is your launchpad into the Bitcoin FOSS(Free and Open Source Software) world. Whether it's developing innovative open-source software or leading educational initiatives, this is where your contributions to Bitcoin — and potentially your Bitcoin career — begin!

Cohort Details

Commencement date

08th November 2024

Duration

08 weeks

Cohort level

Advanced

Mode

Self-study, weekly live sessions, 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

Finite Fields and Elliptic Curves

01-02


Week 02

Elliptic Curve Cryptography

03


Week 03

Serializations and Transactions

04-05


Week 04

Scripts and Transaction Validation

06-07


Week 05

P2SH and Blocks

08-09


Week 06

Networking and SPV

10-11


Week 07

Bloom filter Segwit

12-13


Week 08

Conclusion and Next Step


Meet Your TAs

RAJ
Lead, Bitshala
ANMOL
Engineer, Bold
FAISAL
Program Manager, Bitshala
Saurabh S
Operations Lead, Bitshala
EMJSHRX
Open Source Dev
DELCIN
Rust Educator
SHREYAN
Host, Bitcoin Reads
ADITYA
Open Source Lightning Dev

Cohort Graduates with Bitshala Fellowship

Bala
Developer
Shreyan
Educator
Faisal
Educator