I characterized Mike Hearn’s farewell essay as a ‘whiny ragequit’. I did this because it is, well, a whiny ragequit. He attempted a hostile takeover of Bitcoin with Bitcoin-XT, and now that he’s predictably been made to feel like persona non grata in Bitcoin development he’s throwing a tantrum on his way out.
There are of course real howlers in Hearn’s essay which I can explain, although truth be known I shouldn’t have to. There is overwhelming alignment among people doing Bitcoin development on the path forward. The popular perception of internal division is caused by having a camp consisting of Mike Hearn, Jeff Garzik, and Gavin Andresen who are doing a good job of whipping up popular support and talking to the press. They have a simplistic plan which appeals to people who don’t know any better or want to be told that technical problems can be made to magically go away with a simple fix. On the other side are the people doing actual development, who aren’t particularly good at talking to the press or whipping up support on reddit and have a plan which requires real engineering work moving forwards.
The second camp happens to be in the right for highly technical reasons, but anyone who casually reads the online discussion could be forgiven for getting the opposite impression. Compounding the problem is Gavin’s previous role as the public face of Bitcoin and the journalistic fetish for ‘impartiality’, which frequently means that anyone who has a strong opinion is ‘biased’, so ‘equal time’ is given to the ‘two sides’, without considering the possibility that if one side is a small minority who the experts are all strongly opposed to it might be because they are, you know, wrong.
Presenting highly technical debates by getting into the weeds in postings meant for the general public is a fool’s errand. The anti-intellectual, soundbite-driven side will always come off sounding better, while the side which gives appropriate caveats and states flatly that there’s overwhelming evidence for certain facts will come across as wishy-washy and condescending. The truth is usually the exact opposite. The real world tends to be complicated. There are usually salient facts for which there is such overwhelming evidence that claiming there’s real debate about them is an outright lie. And people who are best at science and engineering have generally neglected their skills at public rhetoric. In any reporting on a controversy in science or technology a journalists job is first and foremost to find out whether there’s overwhelming support for one side among experts and if there is to report that straightforwardly.
But since people will accuse me of being dismissive if I don’t give some examples of how Hearn is completely off base, I’ll give some. Yes, they’re highly technical and no, I’m not going into the blocksize discussion. I’ve addressed that already and will do so again in a later essay.
Hearn criticizes the block increase made possible by segregated witness as being an ‘accounting trick’ as if that means anything, and complains that it’s ‘incredibly complicated’. As it happens segregated witness is primarily about addressing the problem of transaction malleability, which has been a real problem in Bitcoin since the beginning (mt.gox blamed it for their accidentally all the coins). That’s why it’s called ‘segregated witness’ and not ‘increasing the block size’. During development of segregated witness it was noticed that it could both be used to introduce vastly improved hooks for future extensions and to have a significant one-time de facto increase in the block size limit, as ‘bonus’ features which happen to be very compelling in their own right. Whether Hearn honestly doesn’t understand this and thinks that all the complexity is in service of a block size increase or he’s just being disingenuous I honestly don’t know.
Hearn questions Greg Maxwell’s authority because he ‘mathematically proved Bitcoin to be impossible’. You might have noticed that Bitcoin involves this very expensive process known as mining, and possibly wondered why this is necessary. It turns out that if you adopt a slightly naive model of distributed databases which doesn’t include computational complexity then… there’s a mathematical proof that Bitcoin can’t be done! The loophole is that in the real world there’s computational complexity, hence proofs of work and the possibility of building Bitcoin using mining. Again I’m not sure whether Hearn is being disingenuous or ignorant, although in this case I’d bet heavily on ignorant.
There are plenty more things to pick apart in Hearn’s essay, but the gist is the same: It’s completely off base for highly technical reasons.