Okcoin is awarding a second yearly grant to Marco Falke, Bitcoin Core’s most prolific developer, in order to support his work for another year. He tells us more about what he has worked on during the last twelve months and what challenges lie ahead for Bitcoin. 👀
- Okcoin awards a second yearly grant to support Marco Falke’s open source work, with no strings attached.
- Marco is a maintainer: He reviews and tests Bitcoin Core’s code to eliminate bugs and vulnerabilities.
- The Bitcoin code has strengthened during the last year, but a number of challenges still lie ahead.
Investing in Bitcoin development
We’ve now invested more than $1,000,000 in Bitcoin open source development through our developer grant program. All of our grants are:
- For open source. The work done by the developer must be open source, which means anyone can read, fork, and build on their code.
- No strings attached. The developer does no work for our company at all, and gets to be entirely focused on open source development.
- An investment, not a donation. These grants are an investment in the future of Bitcoin.
When asked to summarize what he has focused on for the last year and what he will keep working on with this new yearly grant, Marco singled out three areas: testing, modularization, and outreach.
Improving Bitcoin’s security with advanced code testing
As we explained in our blog introducing his work, Marco hunts for vulnerabilities in Bitcoin’s code thanks to a technique called fuzz testing. Put simply, it works in two steps:
- A fuzz testing program sends a large amount of data to Bitcoin Core;
- If Core behaves differently than expected, the fuzzer program flags what caused the anomaly.
That requires resources though. Thankfully, Bitcoin Core’s fuzz testing capabilities improved this year with the integration of OSS-Fuzz, a tool developed by Google to bring more fuzzing firepower to open source projects. Thanks to this improved framework, some previously unknown vulnerabilities have been discovered and a last-minute bug was identified before the last version of the software (22.0) was released. Marco thinks the framework has improved quite a lot but will need to be further improved and deployed on parts of the code that haven’t been tested as much yet. 🚀
Modularizing the code
Modularization is a fancy word to refer to the process of structuring a code base into separate modules. Why would you do that?
- It makes the life of developers easier: The more modularized the software, the less they have to review gigantic chunks of code in order to make a specific review, and the simpler it gets to figure out who’s in charge of what part.
- It makes running Bitcoin Core cheaper: A modularized code allows to turn off optional modules and run the software with lower computational resources, which is an essential part of keeping Bitcoin decentralized – especially if it’s to run on mobiles like one of our other grantee, Joao Barbosa, is preparing it to.
Marco’s goal has been to make the mempool module optional – the mempool is where valid Bitcoin transactions wait to be confirmed. That required other changes in the code, which have all been integrated now. This means it will now be possible to make the mempool optional, which will in turn make development easier and decentralization cheaper. 💪
Training new Bitcoin developers
Finally, Marco focuses on onboarding new developers to the project. He was for instance a mentor during the Summer of Bitcoin internship program, where he provided help and guidance to developers interested in helping the project. Having been involved in Bitcoin development since 2015, Marco has seen the development landscape evolve and mature. There are more funding initiatives like our grant program now, which helps to get more competent developers onboard and work long-term on the project.
Our research shows a lot of users are still not aware that Bitcoin developers are volunteers and that funding them is the responsibility of the broader community. That’s why, with the help of Marco, and in partnership with Brink and OpenSat, we published a short ebook about how Bitcoin development works and how it’s funded.