Amiti Uttarwar, Bitcoin core developer at Xapo and former software engineer for Coinbase, has explained how developers can contribute to the Bitcoin protocol in a blog post published Friday. As an open-source project, almost anyone with sufficient developer know-how can get involved in the protocol's expansion. But it’s not always obvious where to begin.
According to Uttarwar, there’s more to contributing than submitting code to Bitcoin's codebase. There are a number of less-technical ways to get involved, such as signing up for Bitcoin's mailing list discussions.

The "Bitcoin-dev" mailing list regularly includes discussions surrounding patches, BIP proposals, and academic paper announcements. Talks of a less fundamental nature are often held via "Bitcoin-discuss"—a mailing list dedicated to inquiries outside the direct development focus of Bitcoin-dev.
Another way to stay up-to-scratch on ecosystem developments is a subscription to "The Bitcoin Optech"—a weekly newsletter that delves into Bitcoin's latest technical developments.
Down the Bitcoin rabbit hole
For those looking to contribute actual code to Bitcoin, familiarizing oneself with Bitcoin's codebase is the place to start.
"Clone the repo, compile it and run tests," suggests Uttarwar.

How to build a Bitcoin Lightning node for just $150
Bitcoin is the future of money, they say. And we’re not doubting that. But, while the Bitcoin network is great at making large payments that don’t need to be settled quickly, it’s too expensive for making everyday, small payments. Enter the Lightning Network: a second-layer solution built on top of the Bitcoin network that allows anyone to send bitcoin to each other instantly, for near-zero fees. But to use Lightning, you need to have a Lightning node. And sure, you could use a custodial solutio...
Once acclimatized, it's time to try the real thing. Pull requests are proposed revisions to Bitcoin's codebase. Other developers review these requests and some make it through to be included in its code.
Creating a pull request can be a challenging undertaking. Finding a niche is essential since contributions must be of some value to the project in order to be picked for merging. Keeping an eye on mailing list discussions is a good way of sourcing a worthwhile pull request.
Uttarwar advises scanning through Github's "Issues" tab. Filed under two labels: "good first issues" and "up for grabs" are pull request issues that are available for taking, meaning anyone can write code designed to solve the problem and submit it to the review process. They often include several suggestions suitable for first-time contributors.
Other pull request ideas can be found by searching for the label "TODO." This keyword can unearth a range of beginner-friendly tests and follow-ups to work on.
"Think critically about how to test the changes," writes Uttarwar, "opening [pull requests] to address follow-ups and increase test coverage will be much appreciated."
The PR-review-club is also an essential resource for contributors. Here, weekly discourse on pull requests aids newcomers in learning about the PR reviewal process.
So, what are you waiting for?