Reviewing Code Is Mind-Numbing: Q&A With Bitcoin Maintainer Andrew Chow – CoinDesk
Posted: March 16, 2023 at 3:34 pm
Few people understand the key technical issues currently facing the worlds dominant cryptocurrency. Andrew Chow is one of them.
Chow is one of four maintainers for Bitcoin Core (or just Core), the most popular software for connecting to the Bitcoin network.
Maintainers review changes to Bitcoin Core known as commits, which are submitted by fellow Bitcoin developers as pull requests or PRs. Chow and other maintainers then approve or merge those changes into Cores source code. The code review is critical to ensuring no buggy code gets merged.
Chow is a gamer at heart, and only got into Bitcoin in high school to pay for video games he couldnt otherwise afford. His parents wouldnt give him a credit card, open a bank account for him or even give him an allowance. He resorted to freelancing on the BitcoinTalk forum and began writing code in exchange for bitcoin (BTC).
Chow, who says he's now in his mid-20s, gets paid as an engineer at the Bitcoin infrastructure firm Blockstream, where aside from a few corporate tasks, his main priority is working on Bitcoin Core.
He says code review is one of the biggest challenges Bitcoin faces today. Most Core developers are keen on writing code for new features, but few enjoy the more mundane task of reviewing code submitted by their peers. Chow says more contributors need to focus on code review to tackle the 300-plus PRs in Cores GitHub repository. The community has a Bitcoin Core PR Review Club that meets weekly to help newer contributors learn about the review process.
Chow agreed to an interview with CoinDesk at the Advancing Bitcoin conference in London. He elaborated on why code review is so critical, explained what Bitcoin Core contributors do every day, and weighed in on the current debate over op_vault and Speedy Trial. Heres a partial transcript of that interview.
CoinDesk: How did you discover Bitcoin?
Andrew Chow: When I was younger, in high school, I didn't have a bank account because I was under 18. My parents didn't open one for me. I didn't have a credit card even a supervised credit card and I didn't have an allowance. But Steam was selling games for bitcoin. If you do PC gaming, you can download Steam and it has basically all the PC games.
Also, on purse.io, you could sell bitcoin for stuff. Well, I wanted to play games. I wanted to buy them. I mean, I'm okay with pirating but, you know, pirating things is kind of sketchy. You don't know what you're downloading. It could be complete malware.
So I was, like, this bitcoin thing is fully electronic. Maybe I can use that to buy games but how do I get bitcoin? Maybe I can do some work and get paid in bitcoin.
I know a few people who did that. So that's how I learned programming. Id go on BitcoinTalk and people would say, I will pay you however much to write me a script that does this.
Well, that seemed simple enough. I also had a friend in high school. He was, like, Hey, have you heard about this bitcoin thing? I think you might like it. He was definitely buying drugs with bitcoin.
So that's how I got into Bitcoin. And eventually I was like, Well, I'm using this wallet and I'm running into these issues. I clearly know how to write a program. Maybe I can fix this wallet. That's how I got into doing development.
I was running this thing called Armory. Which was basically not maintained. I mean, it's still kind of maintained by one guy, so barely.
By the time I was using it, it was kind of a mess and it didn't always work. I was finding that some of the problems that were happening in Armory were caused by things that Bitcoin Core was doing. So I started going into Bitcoin Core and asking whats Bitcoin Core doing? Oh, Bitcoin Core has this bug that's causing us to have a bug.
Armory was doing something not recommended, which was to read the block files directly from Bitcoin Core you're not supposed to do that. When they changed the format, it broke everything.
I was trying to reconcile the two, and then Armory just kind of fell off my map. That's how I transitioned to Bitcoin Core. I eventually stopped working on Armory because I got more done on Core.
Yesterday we talked about the ratio of Bitcoin contributors who review code versus contributors who write code. Can you share your thoughts on that?
Our main bottleneck in Bitcoin Core has been review. We have 300-plus PRs open and they need to be reviewed. Whether its just to make sure the code is good or just conceptually like, Do we even want this change?
The problem with every PR is that one person usually writes it, but we need multiple people to review it, give an approval or leave comments. Therefore, we must have more reviewers than people writing, but that's just not how it works.
Personally, I find code review to be a little bit boring. It's a little annoying and it can be kind of mind-numbing. But I still do it. I guess it's like a necessary evil and it's because I don't find it fun. If I do it enoug I start feeling like Ill burn out because it's no longer enjoyable.
So you have to find some balance between writing code and reviewing code. Its a bit of a catch-22. We have to have more reviewers than coders, but how do you become competent enough to review code if you're not writing code? It's a conundrum.
We're in a bear market and organizations like Brink that fund Bitcoin development are saying funding is down by about 50%. Why do we need to pay Bitcoin contributors and developers?
Fundamentally, every piece of software has bugs. There will always be bugs to find and bugs to fix. That's just general software maintenance that must happen.
And even then, the software that exists now cannot last forever. Operating systems will evolve and libraries will evolve and change. Eventually the software will just stop compiling on a computer; it might just stop running. And so, there needs to be constant work just to keep it up to date.
So there are always things to update, even without new features. But there are new features and we do want to improve Bitcoin. Not just the consensus rules, but also how we relay transactions, what kind of transactions we accept into the mempool and the peer-to-peer protocol.
There can be DoS vectors we want to fix or change that maybe haven't been discovered yet. There's always something.
If I'm a new Core contributor, what are some of the big issues I would need to know about?
There are currently a number of issues that exist, like pinning attacks, that are pretty well documented. It seems to be that no one exploits them, but that's not a good reason to not fix them.
There's been a lot of work on the mempool how and what transactions are accepted into the mempool, what methods there are for fee bumping, and things like that. It's relevant to Lightning and other [layer 2] networks.
Whats a pinning attack?
If both of us open a Lightning channel together, I can make it so that you can never bump the fee on that transaction. So I can make it perpetually low-fee and it never gets mined, then try to double-spend it later.
There's a bunch of attacks you can do with the existing mempool policy rules. These are documented on the mailing list and they're definitely problems. If someone tried to exploit them it would be annoying, but I don't think we've seen anyone try to exploit them.
We still want to fix them and there's been a lot of work on making improvements so that we don't have these pinning attacks, or at least, if you want to pin a transaction, it'll be really expensive.
We also discussed op_vault and Speed Trial yesterday. There have been some tensions around James OBeirnes recommendation to deploy op_vault using Speedy Trial. Any comments?
With a new proposal like that, deployment should be the last thing to think about.
Some ideas on how to deploy things are, for some reason, contentious. If you want to have a discussion about the proposal, having deployment in there kind of causes it to be derailed.
So I do think James putting that in there was probably a mistake. The Taproot deployment section wasn't defined until after Taproot. The code changes themselves were merged into Bitcoin Core but not active. It's not unusual to just say we'll deal with deployment after we figure out what we want the code changes to be.
Speedy Trial was an experiment for Taproot. We've tried different deployment methods over the years with varying degrees of success.
The rest is here:
Reviewing Code Is Mind-Numbing: Q&A With Bitcoin Maintainer Andrew Chow - CoinDesk
- Why Bitcoin Cash And Ethereum Classic Are Ripping Higher - Benzinga [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Bidens Tax Hike Proposal and What It Means for Bitcoin 'Wash Sales' - Decrypt [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Bitcoin Bulls Rejoice: Henrik Zeberg Predicts Upward Trend Until This Happens - Coinpedia Fintech News [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Digital Assets Worth 2 Billion Rubles Issued in Russia in Less Than ... - Bitcoin News [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Bitcoin: Fall of Silicon Valley Bank might be a silver lining for BTC, heres why - AMBCrypto News [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- If This Trend Continues, Bitcoin Could Grow for Years to Come - The Motley Fool [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- US Fed to the rescue of banks as Bitcoin soars - The Cryptonomist [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Crypto and Bitcoin ATM adoption is highest in countries with large ... - Kitco NEWS [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Hashdex Celebrates Six-Month Anniversary of World's First Bitcoin ... - Yahoo Finance [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Bitcoin a Risk to Profits Says Bank - Trustnodes [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Forget Bitcoin: BlackRock CEO Touts Next Big Thing in Crypto - U.Today [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- More than $70 billion wiped off crypto market in 24 hours as bitcoin drops below $20,000 - CNBC [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Evaluating Bitcoin as a Store of Value - Yahoo Finance [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Bitcoin rallies over 18% in 24-hour span in wake of SVB crisis - TechCrunch [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Bitcoin Is PumpingBut Its Not Yet 'Decoupling' From Stocks, Analysts Say - Decrypt [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Credit Suisse Shares Drop Nearly 25%, Is Bitcoin Gearing For Another Rally? - NewsBTC [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Bitcoin Core developer proposes new type of pruned node - Protos [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- 'Rich Dad Poor Dad' Author Says Buying Bitcoin Is Vital as 'Crash and Crisis' Just Starting - U.Today [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Sphere 3D Corp. Provides Bitcoin Production and Mining Updates for February 2023 - Yahoo Finance [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Cryptoverse: New bitcoin NFTs on a multi-million roll - Reuters [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Should I Keep My Money in Bitcoin or a Bank? - CoinDesk [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- FTX fiasco set back the approval of Bitcoin spot ETFs: Valkyrie investment chief - Cointelegraph [Last Updated On: March 16th, 2023] [Originally Added On: March 16th, 2023]
- Bitcoin's illiquid supply hits 10-year high, signaling strong investor conviction - CryptoSlate [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Coinbase Stock and Bitcoin Are Soaring Together - Barron's [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Bitcoin whales resume accumulation, signaling confidence in market rally - CryptoSlate [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Crucial Bitcoin (BTC) Prediction Made by Samson Mow, Hold Tight - U.Today [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Swiss city Lugano to accept Bitcoin, Tether for tax payments - CryptoSlate [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Mark Your CalendarsBitcoin Rockets Past $40,000 As Date Reveals Huge $17 Trillion Bitcoin ETF Countdown Has Suddenly Begun, Heralding Ethereum, XRP... [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Expect 'records broken' by Bitcoin ETF: Brett Harrison (ex-FTX US), X Hall of Flame - Cointelegraph [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Breaking: Bitcoin price breaks $44,000: Is $50K next as BTC confirms a move above a weekly supply zone? - FXStreet [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Bitcoin and gold are smashing through key levels. Here's what's driving the moves - CNBC [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- BlackRock Bitcoin ETF Receives $100,000 in Seed Funding - Decrypt [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Will Ethereums price prediction piggyback on Bitcoins rise? - AMBCrypto English [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Bitcoin perpetual futures open interest hits yearly high on Deribit - The Block - Crypto News [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- BlackRock, Bitwise file updated spot bitcoin ETF applications with the SEC - The Block - Crypto News [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Bitcoin has surpassed $41,000 for the first time since April 2022. What's behind the price surge? - Quartz [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Bitcoin price briefly breaks $42,000, back to pre-Terra crash level - The Block - Crypto News [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Top 3 Price Prediction Bitcoin, Ethereum, Ripple: This is the level to beat as BTC eyes $50,000 next - FXStreet [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Bitcoin price hits $44,000 as Coinbase CEO speculates BTC could be key to extending Western civilization - FXStreet [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Swiss city Lugano accepts Bitcoin and Tether for municipal taxes - Cointelegraph [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- BTC price sets new 19-month high in 'choreographed' Bitcoin whale move - Cointelegraph [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- Bitcoin tops $41,000 and hits 19-month high on ETF hopes, bets on Fed cuts - CNBC [Last Updated On: December 6th, 2023] [Originally Added On: December 6th, 2023]
- BlackRock to slash 3% of workforce ahead of Bitcoin ETF deadline: Report - Cointelegraph [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Can Bitcoin ETF Still Be Rejected? - U.Today [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin ETFs Could Spark Huge BTC Trading. The Market Appears Up to the Task - CoinDesk [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- VanEck pledges 5% of potential spot BTC ETF profits to Bitcoin core developers at Brink - The Block - Crypto News [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- 4 Stocks to Watch as Bitcoin Rally Continues Into 2024 - Yahoo Finance [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- A Spot Bitcoin ETF is Coming Soon Join VettaFi Event to Learn More - ETF Trends [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- The crypto world is ready to take bitcoin ETFs to the masses. It needs the blessing of a longtime foe first. - Yahoo Finance [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Crypto Stocks Rally On Report Bitcoin ETF Regulatory Approvals Could Arrive Sooner Than Expected - Investor's Business Daily [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin: four reasons why the price should surge in 2024 - The Conversation [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin ETF Fees Will Play Critical Role in the Race to Popularity - CoinDesk [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Will 2024 Be the Year of the Bitcoin ETF? - CoinDesk [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Y'all set to spend another week muttering about imminent spot bitcoin ETF approval? - ForexLive [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Mysterious Bitcoin Transaction: Satoshi Nakamotos Wallet Resurfaces in a $1.17 Million Move - CryptoPotato [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- This is the Most Interested US State in Spot Bitcoin ETF - CryptoPotato [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin ETFs Are Coming Fast. Crypto Investing Will Never Be The Same. - Investor's Business Daily [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin has surged 67% in value since Septemberhere's why - CNBC [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Institutions Need the ETF, Not Bitcoin, Says Bybit CEO - Cryptonews [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Coinbase Stock Wobbles as Analyst Warns Gains From Bitcoin ETFs Might Disappoint - Barron's [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin ETFs Are Almost Here. The Fee War Is Already Heating Up. - Barron's [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin ETFs will solve unit bias psychology, says VanEck adviser - Cointelegraph [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin traders see breakout as bulls cling to $44K in ETF countdown - Cointelegraph [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin bounces back above $44,000 amid volatile start to 2024 - CNBC [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin tops $45,000 for the first time since April 2022 as crypto jumps to kick off new year - CNBC [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- VanEck to Donate 5% of BTC ETF Profits to Bitcoin Core Developers - CoinDesk [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Arthur Hayes Foresees 30% Bitcoin Crash Amid 'Vicious Washout.' Here's Why - CoinDesk [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- If a Bitcoin ETF Is Approved, Heres What May Happen - CoinDesk [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- US Economic Calendar & Bitcoin ETF Ruling in Weekly Spotlight - BeInCrypto [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin Price Drops. Crypto Investors Should Hedge Their Bets. - Barron's [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Marathon's bitcoin production growth surges, bolstered by high fees - The Block - Crypto News [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Investor cohorts outpace Bitcoin's monthly mined supply for the first time since early December - CryptoSlate [Last Updated On: January 8th, 2024] [Originally Added On: January 8th, 2024]
- Bitcoin is back above $68,000. Are we heading toward a new peak? - Quartz [Last Updated On: May 24th, 2024] [Originally Added On: May 24th, 2024]
- Bitcoin may be coming to the biggest crypto wallet on Ethereum - Quartz [Last Updated On: May 24th, 2024] [Originally Added On: May 24th, 2024]
- Could a pending ether ETF mimic the arc of spot bitcoin ETFs? - Yahoo Finance [Last Updated On: May 24th, 2024] [Originally Added On: May 24th, 2024]
- XRP Skyrockets 60% in Volume as XRP Price Outperforms Bitcoin - U.Today [Last Updated On: May 24th, 2024] [Originally Added On: May 24th, 2024]
- Im really sorry: Chris Pan on Ohio State Bitcoin speech, and how he was picked - NBC4 WCMH-TV [Last Updated On: May 24th, 2024] [Originally Added On: May 24th, 2024]
- Bitcoin surges to $71000 level today; what's driving the rally? - Mint [Last Updated On: May 24th, 2024] [Originally Added On: May 24th, 2024]
- Bitcoin and Ethereum ETPs debut on London Stock Exchange after FCA nod - Cointelegraph [Last Updated On: May 24th, 2024] [Originally Added On: May 24th, 2024]
- What can I buy with Bitcoin? - Quartz [Last Updated On: May 24th, 2024] [Originally Added On: May 24th, 2024]