Contributor journeys

Some Contributors have documented their journeys into the space which lets us learn about approaches they found useful, and also any pitfalls and things they found difficult along the way.

Decentralized development

Olivia Lovenmark and Amiti Uttarwar describe in their blog post "Developing Bitcoin", how changes to bitcoin follow the pathway from proposal to being merged into the software, and finally into voluntary adoption by users choosing to use the software.

Developer guidelines

The Bitcoin Core project itself contains three documents of particular interest to Contributors:

  1. CONTRIBUTING.md — How to get started contributing to the project. (Forking, creating branches, commit patches)

  2. developer-notes.md — Development guidelines, coding style etc.

  3. productivity.md — Many tips for improving developer productivity (ccache, reviewing code, refspecs, git diffs)

  4. test/README.md — Guidance on running the test suite

Using ccache as described in productivity.md above will speed up builds of Bitcoin Core dramatically.
Setting up a ramdisk for the test suite as described in test/README.md will speed up running the test suite dramatically.