Published on

Caring For Core

Authors

In keeping with our commitment to supporting the Bitcoin ecosystem, OpenSats is pleased to announce a new round of grants focused on Bitcoin Core development. In addition to supporting multiple core developers for the long term, we are excited to provide grants for three up-and-coming developers working on Bitcoin's reference implementation.

Listed in no particular order, they are:

In addition to the above, we are supporting the development of the Bitcoin Core App, a modernized user interface for Bitcoin Core, and the Bitcoin Core Testing Suite, as announced earlier this year.

We are dedicated to nurturing both established and emerging talent in the Bitcoin developer community, ensuring that Bitcoin Core remains a strong and resilient foundation for the entire network.

These grants are sourced from our General Fund, which is supported by generous donors like you. If you would like to support free and open-source projects that help Bitcoin flourish, consider donating to the fund:

Now let's explore their contributions in more detail to understand their purpose and how the grants will support their efforts.


@tdb3

tdb3 focuses on improving stability, security, and performance by actively engaging in the review and authoring of pull requests for Bitcoin Core. With over 300 open PRs at the time of this writing, there is a significant need for quality technical contributions and reviews to maintain this essential software.

His initial efforts will concentrate on maintenance, bug-fixing, and feature enhancement. Efforts will then focus on key areas for improvement, such as making the interface easier for other developers to understand and use. Best practices from mission-critical software development will be incorporated to further stabilize and secure the network. These activities aim to help developers ensure the continued reliability and resilience of Bitcoin Core, contributing to the overall robustness of the Bitcoin network.

Repository: bitcoin/bitcoin
PRs: created, reviewed
License: MIT

@davidgumberg (David Gumberg)

David focuses on optimizing the Initial Block Download (IBD) process for Bitcoin Core nodes. IBD involves downloading and verifying the entire Bitcoin blockchain, a process that can be resource-intensive in terms of time, bandwidth, and storage. The project aims to reduce these challenges, making it easier for users with limited resources to run full nodes. Primary initiatives include developing infrastructure to benchmark IBD performance across different hardware and network setups, monitoring for performance regressions in Bitcoin Core's development branches, and evaluating proposals that aim to enhance IBD efficiency.

This grant will fund efforts to thoroughly analyze and improve the IBD process. Initial efforts will involve understanding the current IBD mechanisms and assessing existing proposals that aim to optimize efficiency, such as those that minimize data downloads or streamline index-building. The project will also create a benchmarking tool to evaluate IBD under various conditions. Later stages will focus on identifying new opportunities for performance enhancements using profiling tools and considering theoretical improvements. The overarching goal is to lower the barriers to running a full Bitcoin Core node, thereby promoting greater decentralization and resilience within the Bitcoin network.

Repository: bitcoin/bitcoin
PRs: created, reviewed
License: MIT

@hodlinator

Hodlinator is focused on enhancing the Bitcoin Core codebase through detailed code reviews and addressing minor yet impactful concerns. Key activities include investigating performance inefficiencies, improving logging and debugging practices, developing tools to identify regressions, and refining the behavior of functional tests. Using their strong background in C++ development, Hodlinator aims to bring a meticulous and thorough approach to Bitcoin Core.

This grant will support efforts in reviewing pull requests from other contributors, diagnosing and addressing the slowness of some extended functional tests, enhancing build information logs for better troubleshooting, and creating a tool to identify regressions by analyzing the impact of different commits on test outcomes. Additionally, the project will modify test timeout behaviors to provide more detailed feedback on tests that approach timeout thresholds. These activities aim to enhance the robustness and reliability of Bitcoin Core by improving the efficiency and accuracy of the review process and addressing critical elements within the codebase.

Repository: bitcoin/bitcoin
PRs: created, reviewed
License: MIT

Bitcoin Core App

The Bitcoin Core App is an attempt to modernize Bitcoin Core's user interface by transitioning from the slightly outdated Qt Widgets framework to the more modern Qt-QML framework. The redesign will incorporate user experience enhancements developed in collaboration with leaders from the Bitcoin Design Community.

The project aims to lower technical barriers, promote self-custody, enhance privacy, and strengthen the Bitcoin network by increasing participation in node operation. A significant feature under development is to provide compatibility with mobile devices, particularly targeting Android platforms. The aim is to make running a full Bitcoin node more accessible and convenient, allowing users to participate in the Bitcoin network directly from their mobile phones.

Repository: bitcoin-core/gui-qml
License: MIT


OpenSats remains committed to fostering a vibrant and resilient Bitcoin ecosystem. The above grants supplement our long-term support program for Bitcoin Core developers, which currently supports Marco Falke, Josi Baker, Sjors Provoost, Vasil Dimov, Will Clark, 0xB10C, and Bruno Garcia. We are determined to provide stable long-term funding for seasoned veterans, and we want to do what we can to help foster new talent within the Bitcoin Core developer community.

Working on and maintaining Bitcoin Core is a strenuous and often thankless effort, and we applaud everyone who is going down that path, as well as everyone who is trying to bring more talent into this particular ecosystem.

If you're looking for somewhere to start contributing, check out the good first issue list or changes that are up for grabs. If you're new to Bitcoin Core development, the "Contributing to Bitcoin Core" readme might be a good entry point. You can also join one of the PR Review Club sessions to review pull-requests with other developers, or apply for Summer of Bitcoin or a Chaincode Program to get started.

We are grateful to our donors who make our grant initiatives possible and invite others to join us in supporting the future of Bitcoin. By empowering the next generation of developers and advancing the development and maintenance of critical infrastructure, we can help ensure the sustainability and decentralization of the Bitcoin network. Together, we can build a stronger ecosystem that upholds the values of open-source development and financial freedom.

We invite aspiring and seasoned Bitcoin Core developers alike to apply for funding, and we invite everyone else to donate to our cause: