Learn Bitcoin Core Development
Originally written by Satoshi Nakamoto, bitcoin proved that purely peer-to-peer electronic cash, one of the hardest computing problems, was possible. Becoming a Bitcoin Core developer is not for everyone, but for those that are willing to do the work will contribute to a legendary codebase designed to span generations.
Level 1
Get started with these text based sources to firm up your technical foundation and learn about the philosophy behind Bitcoin Core development.
The canonical primer on understanding the technical side of bitcoin. The 3rd edition promises to be the best release yet.
Gain a deeper understanding of Bitcoin's design trade-offs and philosophy, offering insights into over a decade of Bitcoin development and public debate.
Level 2
Get your hands dirty with some more advanced topics, exercises and simulations.
This program offers a curated curriculum and hands-on sessions to complete at your own pace or with a cohort of other keen explorers.
Use your own bitcoin node to execute transactions, script bitcoin operations, integrate with hardware wallets and hidden services with this step by step guide.
Get on a first name basis with SegWit and Taproot transactions. Add sighashes and timelocks to your list of friends by creating and signing Bitcoin transactions using a local bitcoind instance via Jupyter notebooks.
A comprehensive POW mining simulator offering a hands-on experience to explore block discovery, peer node configuration, and chain splits using realistic Poisson distribution models.
This exercise offers a unique and playful way to understand Bitcoin's network dynamics by connecting to live nodes on the network with 150 lines of Python.
The Schnorr/Taproot Workshop by Bitcoin Optech is an interactive walk through to learn about Schnorr signatures, MuSig aggregation, and Taproot applications via Jupyter notebooks.
Level 3
By now you have leveled up in the safety of reading and tutorials. It is time to start doing the work you came to do. Explore the codebase and start building your review skills.
This guide covers both the technical components such as, architecture, consensus, validation, the wallet, P2P, and script, but also introduces the under-documented social aspects like PR etiquette and the decentralized development process.
The Bitcoin Core PR Review Club is a monthly online meetup for discussing PRs and boosting your understanding of the codebase.
What's Next
Contributing to Bitcoin Core requires a stoic patience to onboard to a C++ codebase now in its teenage years. 99% of the nodes on the network run Bitcoin Core making it the bedrock of the ecosystem. If you are looking for a project that moves fast and breaks things, this is NOT the right fit for you. There are ~30 full-time contributors to Bitcoin Core and only a few newcomers join their ranks each year. Are you up for the challenge?