Who's Building Bitcoin? An Inside Look at Bitcoin's Open Source Development
For as much as bitcoin has grown, the technology is still being developed by a core group of insiders.
One of the biggest stories so far this year has been the re-emergence of bitcoin, the little cryptocurrency that could. It’s been a wild ride, to say the least. Amid the craziness, it’s been easy to forget that bitcoin is a work in progress. Who are the architects behind the world’s most widely used virtual currency?
Slowly but surely, over the past few months, we’ve figured out exactly what bitcoin is, how it works, and what it all might come to. We witnessed events in Cyprus that put into question the current system and the U.S. Treasury issued guidance validating the legality of a brand new form of virtual money. We experienced a frenetic bubble as well as the inevitable crash.
Beyond the ecosystem of services, exchanges, and new companies willing to accept these digital dollars, there lies a disruptive technology that’s constantly being worked on, tinkered with, and improved. The bitcoin system evolves with each new update. But who’s doing the updating?
For a finer picture, I turned to Alex Waters, who, along with Gavin Andresen, was one of the only bitcoin core developers to ever get paid by TruCoin (an entity that was around prior to the existence of the Bitcoin Foundation) for his coding expertise. Today, he’s the COO and CIO of BitInstant.
The heart of everything
Coding contributions to the master file over time, via Github
Bitcoin is an open source project. That means it’s code is available for perusal by anyone at the open source online community, Github. Here, the core developers of bitcoin decide what needs to be worked on and what new software improvements will be added to each new version.
As Waters explains, core development is “the underpinnings of everything. It’s the seed that grew this enormous tree that is bitcoin. And it’s still kind of a seed. Right now, it’s this thing that has enough water, enough sunshine, and all the nutrients it needs.”
“But it’s still this seed. Bitcoin’s core development is led by a small group of people.”
And as bitcoin grows, there’s a perpetual struggle to keep up. “If bitcoin is the ship, the core dev team is the engine, which is constantly under maintenance,” Waters told me. “The engine is constantly being improved. At the same time, the ship is also growing. New facilities are being added and more people are getting onboard.”
“So everything is slower because the ship is fat and the engines aren’t powerful enough to keep up. But it’s still a ship. It’s a ship with a direction in mind.”
The key players
For as much as bitcoin has grown, the technology is still being developed by a core group, which includes:
Gavin Andresen: Andresen serves as chief scientist on the board of the Bitcoin Foundation and is essentially bitcoin’s lead developer, a position passed onto him by Satoshi Nakamoto, bitcoin’s mysterious creator. A Princeton grad, Andresen joined the bitcoin movement after spending time in Silicon Valley. Today, he is the only person receiving an official salary from the foundation for his work. Outside of Nakamoto himself, Andresen is the person who has most influence on the direction of bitcoin. If bitcoin is a ship, Andresen is the undisputed captain. He’s bitcoin’s Linus Torvalds.
Jeff Garzik: Garzik is a frequent writer, miner, developer (bitcoin and others), network engineer, familiy man, and staunch bitcoin advocate. He’s known within the community to be incredibly smart, tackling bitcoin’s many complex problems with speed and ease. Notably, he was the world’s first person to receive a specialized bitcoin miner from Yifu Guo’s firm Avalon, which at one point was mining hundreds of dollars worth of bitcoins a day.
Mike Hearn: By day, Hearn is a software engineer for Google. By night, he is the bitcoin community’s unofficial futurist, bitcoin’s very own Ray Kurzweil. Always focusing three to five years down the road, Hearn’s role is primarily that of an advisor.
Matt Corallo: One of the core development team’s unsung heroes, Corallo has made significant contributions to the bitcoin client, its infrastructure, and the main protocol, among others.
Pieter Wiuelle: Like Corallo, Wiuelle has devoted a substantial amount of code to the bitcoin project.
“This core team of bitcoin developers has remained fairly solid over the years with little controversy among the community,” said Waters.
The open source process
A screenshot of bitcoin pull requests from Github
There are two primary avenues of communication between developers: an IRC chat and an official mailing list. “IRC is mostly petty stuff, bickering. There’s the daily back and forth,” Waters said. “The mailing list is more formal, the equivalent of nailing something to the door of a church.”
The key, of course, is the Github repository, where anyone can find the official code that makes the whole system tick. Within the repository are pull requests. “Someone will say, ‘hey, I wrote a bunch of code. Can you add it to bitcoin?’” explained Waters. “Then there’s usually a group consensus on whether or not it gets added. After testing, the code gets merged in.”
“Such requests can remain outstanding for years, or never get in, depending on relevance. Others are addressed within a matter of days,” he said. “Controversial things usually take the longest, such as changes to the main bitcoin client, known as the Satoshi client. Minor adjustments, such as copy changes or transposing the system into other languages happen quickly.”
Anyone can submit a pull request, but only a select few have the power to merge code into the official repository after a consensus. These people include Andresen, Garzik, Wieulle, Greg Maxwell, Wladimeer van Derlin, Mark Carpelis, and Neal Schneider. Schneider and van Derlin are former developers who haven’t been seen in some time. The rest have had some long-standing involvement with the community.
Bitcoin's chief scientist, Gavin Andresen, via Twitter
“There’s no clear hierarchical structure of the core team of people who have access to the main code,” said Waters. “It’s been a fairly democratic process. If there’s a conflict, everyone has generally worked toward the greater good. We haven’t had any serious squabbles.”
“Gavin has a lot of say,” Waters added. “At times he can be like Linus Torvalds. At times he can be sort of a silent protector. Gavin does a huge amount of work. Though he gets paid by the foundation, I do not envy his job. He certainly has the most difficult job. He’s kind of like our Batman in that his actions reflect motivations of altruism, and selfless dedication to the benefit of the community.”
This becomes a problem. Just as Mt. Gox, the largest bitcoin exchange, was recently inundated with unmanageable trading volume, the amount of developmental work needed for bitcoin can be overwhelming. “That’s one issue,” said Waters. “We only have so many Gavins.”
Bitcoin’s interest groups
A breakdown of bitcoin mining, via Blockorigin
Just like democracy in the real world, bitcoin’s development has seen the inevitable rise of key interest groups. “You have several camps that want to get code into the core,” says Waters. “One of those camps are people who just want to see bitcoin succeed. Another camp is mining pool operators. The final camp is corporate interests. The breakdown is about 70, 20, 10, respectively.”
“One of the big issues is merged mining,” said Waters. It was something many of the pool operators were pushing for. Such pools allow users to combine their processing power as to mine bitcoins as one single entity. What happens is that it gives the operators of those pools plenty of political power.
“This is a problem,” said Waters. “There are only a few pool operators and only a few pull requests that benefit them.” But given their political weight, there’s a higher chance those changes get added.
“Ultimately, they hold a lot of the power over which version of the client is making up the lionshare of hashing power,” said Waters. “So when we saw something like the blockchain split, we depended on the major pool operators to downgrade their software and work with the core development team to fix the issue.”
Thus far, this has been more of a theoretical problem. “It’s been fairly simple as far as politics and the people involved,” Waters explained. “Most people have been altruistic to the cause.”
Satoshi’s lingering influence
An internet representation of bitcoin creator Satoshi Nakamoto
Even though Satoshi Nakamoto has yet to reappear since his enigmatic disappearance years ago, some within the community believe he’s still watching and could come out of hiding if he believed things were going awry.
“Someone might have a direct line to Satoshi,” Waters said. “He could kind of step in and say, ‘This is bad.’ It could happen.”
“And he would absolutely have enough sway. His word is pretty much bond, especially if he were to come out from reclusiveness after all those years. To verify his identity, all he would have to do is sign a message to one of his keys from his exodus block. People would get behind it. Anyone involved at a low level would go along with what he says.”
The benefits of an open approach
In many cases, closed source has usually beat out open source head to head. Think Diaspora versus Facebook or Open Office versus Microsoft Office and Google Docs. So why bother with this kind of approach?
“There’s no central stay of power,” said Guo, who joined in on the discussion and has also been involved with the core development team. “Anyone can run a bitcoin client and can start mining. It’s Darwinian in nature. Inferior evolution will be discarded and only the strongest and best will survive. That is the nature of open source. That is the nature of science.”
“It’s very organic,” Guo continued. “It’s how life works. By going out there without any external control, you live within the system. There, everything is transparent. You’re allowed to grow and the weak genes are ultimately eradicated.”
“The bitcoin core development community is similar to the scientific and physics communities in its infancy," he said. "Further developments require a majority acceptance before they’re considered credible. Any improvement is peer reviewed. And results need to be replicated. Everything is also documented. There’s a history of everything that’s made into an artifact. If somebody tried an experiment previously and it didn’t work, there’s a reference point and all that information is shared. It’s transparent and it’s free.”
The pitfalls of democracy
Closed source versus open source, via Wordpress
We need to look no further than America’s own political stalemate to realize that democracy has its weaknesses. For one, the idea of democracy is, in reality, often not very democratic.
Bitcoin development still relies on voluntary altruism. And as those in the community’s upper echelons continue to consolidate their power of an ever-expanding empire, there is always the chance for power to corrupt.
“It takes only one person to destroy something very great,” said Waters. “It could be you or me. Any system will have weaknesses, which is why the system is constantly racing to improve itself. The world is getting smaller every single day. The power to give up power is true power, like George Washington. Greater things happen because of it.”
It’s a nice thought, but guys like Washington are more likely to be the exception than the rule. And in the world of mathematics and theories, someone still needs to make the final call.
“We don’t have absolute answers,” said Waters. “We just have probabilistic answers. And so, we still invariably rely on people to step up, accept that responsibility, and make the final call.” In the end, someone has to bring the ring to Mordor.
The end result is often a slow and lumbering process. “Closed source development would achieve results much faster,” said Guo. “Because it’s more focused.”
There’s also the risk of a mob mentality. “There’s the network effect,” said Waters. “A lot of these individuals aren’t making conscious decisions. A lot of the time, it’s just groupthink, which has the potential to be dangerous. Groupthink might make us think that, before we came up with atomic theory and nuclear physics, that it would be a smart idea to detonate a nuclear missile deep in the ground, not knowing that the impacts of that could cause earthquakes.”
Then there’s the inverse of dangerous actions: inaction. “There was this instance in New York City where a woman was murdered,” said Guo. “A bunch of people in the apartment complex heard the screaming yet didn’t call the police thinking someone else would do it. If an individual was there, they would have stopped it. But since it was groupthink, it was a net loss for society.”
There could also be selfish motives in conscious silence or inaction. “If there’s something malicious going on, but it benefits me, I might not be outspoken about it,” said Waters.
What’s next for bitcoin development
The price of bitcoins is still stabilizing post-crash, via Bitcoin Charts
So what’s the core development team got up its sleeve for the next big update? “Bloom filtering is a game changer,” said Waters. “It will drastically reduce the size of the blockchain, which, at an already mammoth ten gigabytes of data, is becoming more and more of a barrier of entry for regular users. It’s a time consuming task.”
“We’re also seeing people development alternative software to the primary Satoshi client, such as Electrum and Armory” said Waters. “Instead of just having a steam engine, now you have a steam engine and a combustion engine.
“We’re also seeing a bunch of new infrastructure being built: systems of donations for open source work, trading infrastructure, and hardware improvements that minimize carbon emissions and the planetary cost of bitcoins. All of these things are being built off of this seed. We’re starting to see that innovation we’ve been waiting for and real money is being invested.”
But the biggest lesson of all?
A flowchart of the bitcoin system, via Flickr/Bitcoin Leather
“We’re discovering that the bitcoin system can be used for how a company forms,” Waters said. “You could have an idea and you could fund it through the bitcoin system. But you could also replicate the model for new services, such as building an open source version of Skype where the founders will get some Skype coins. The system itself uses the currency of the system. Users can buy them and hold them or buy them and sell them.”
“It’s going to create a new wave of thinking just like the internet spurred on an entire generation, forever changing the way we see the world and forcing us to reconfigure the way we solve problems.”
“We’re starting to see that with bitcoin,” Waters said. “People are starting alternative chains. It’s the largest social experiment to happen in our lifetime.
More on bitcoin: