Skip to content

Bitcoin Developer Education

CONGRADUATIONS to Myself! and my inaugural Pathways Cohort Members!!!

Recap

This year, I've been fortunate enough to enter Btrust Builders learning Pathways to Bitcoin development. Q1 was definitely an absolute whirlwind of info and a real test for me in managing my time and applying my Computer Science knowledge in new in depth ways.

Btrust Builders Pathway 05 BOSS Cohort

The end of December I renewed my attempt at grappling with the Bitcoin codebase. The tasks to join the cohort required: a review of the project documentation; building the Bitcoin Core project from source; combing through the Python test suite and making ONLY one test fail. This task just 'bout made me cry more than once and it was an honest preview of the structure of the course and the nature of Open Source Development. You have to put in work, be proactive in gathering resources and reaching out for help, and having the Grit to Grind to the Solution.

Even though I honestly expected something a bit more hands-on at the outset, this was a welcome challenge to drive my experience. The asynchronous learning experience gave us access to mentors, learning materials and resources that you can consult. You're expected to do the work of engaging with any and all relevant materials, catching yourself up and then engaging mentors with informed positions.

This cohort continued for 3 months, winding down at the end of March. They really setup a series of challenges for us to tackle and work through 1-by-1. With the "Top Performers" being those who crossed the finish line first.

Some of the projects from this cohort included:

  1. Bitcoin CLI RPC

    Using the Bitcoin-cli command tool that comes with Bitcoin Core, create a series of increasingly difficult bash scripts to solve scenarios around Bitcoin transactions and reading blockchain information.

  2. Signet Wallet

    Using Python, C++, Rust, or any language, build the functionality of a signet (test network) Bitcoin Wallet such as recovering the current balance for a Bitcoin wallet and sending MultiSig transactions.

  3. Warnet

    In teams, simulate cyberwarfare defense and attack strategies on a Bitcoin test network.

  4. Lightning RPC

    Using bitcoind and lnd, learn and execute the basic functions of a Lightning node.

  5. Lightning Router

    Understand how Lightning nodes route transactions and calculate fees made when making payments.

Btrust Builders Pathway 02 Learn Bitcoin from the Command Line

This class was an INTENSE 6 weeks that started not long after the test servers from our BOSS cohort spun down.

Each week, we had a few more chapter from Learning Bitcoin from the Command-Line and were given a repo of exercises to test our understanding of the material.

From Chapters 1-13:

Building/Installing Bitcoin Core

Bash Scripting

Hexadecimal

Bitcoin Keys

Bitcoin Block and Transaction Structure and Protocol

Transaction Types

Inputs

Outputs

Other Properties

Scripts

Hashing Algorithms: SHA256, RIPEMD160, Hash160

Bitcoin Node RPC Functions and Bitcoin-CLI Commands

Additional Bash CLI Commands

Creating, Sending, and Managing Transactions

MultiSig Transactions

Locking and Unlocking Transactions

Hardware Wallets

Bitcoin Script

Timelocked Transactions

Puzzle Locking Scripts

Technical Takeaways and Next Steps

Building Puzzles and Scavenger Hunts to Unlock Transactions

Robust usage of Bitcoin / what existing libraries do / building my own library

Programming Bitcoin

Finance Genius

Educational Takeaways

Engage with Material

Practice

Meet/Discuss/Assist

Repeat

Open Source Materials