And God said, “Let there be a split!” and there was a split.

A year ago, I’ve written How I learned to stop worrying and love the fork, espousing my view that a split of Bitcoin into two networks is possible, and might even be good under the right circumstances and with proper preparations.

Half a year ago, I’ve followed up with I disapprove of Bitcoin splitting, but I’ll defend to the death its right to do it, which elaborated a bit and aimed to refute some misinformation.

I’ve been meaning to write another followup to address some questions that have been raised…

And then Ethereum Classic happened.

Continue reading

I disapprove of Bitcoin splitting, but I’ll defend to the death its right to do it

In a slideshow published by Brian Armstrong, CEO of Coinbase, he promotes the view that Bitcoin is currently undergoing a winner-takes-all elections, and that variety in Bitcoin protocols is akin to variety in web browsers.

I find this incorrect, misleading and destructive.

Unlike physical currencies, governed by the laws of nature, and centralized currencies, governed by the whims of their issuers, it’s not at all obvious what ultimately governs a decentralized digital currency such as Bitcoin. There’s the protocol and the code, of course, but those are mutable and thus adhere to a higher authority.

Continue reading

How I learned to stop worrying and love the fork

It’s hot in Israel in August, but not nearly as hot as the global debate surrounding the release of Bitcoin-XT and the contentious hard fork that would ensue if enough people adopt it. It seems that both proponents and opponents of Bitcoin-XT dread the possibility of the network splitting in two, and focus on making sure everyone switches to their side to prevent this from happening. Contrary to this post’s title, I don’t actually like the prospect of a fork; but I do claim that having two networks coexist side-by-side is a real possibility, that it is not the end of the world, and that we should spend more energy on preparing for this contingency.

Continue reading

How many hardware engineers does it take to develop an artificial general intelligence?

None. It’s a software problem.

At a recent wrap-up party of Harry Potter and the Methods of Rationality I attended on Pi day, I overheard a discussion about friendly artificial intelligence. I think several errors were made in that discussion, but unfortunately the suboptimal acoustic situation at the venue prevented me from offering my two satoshis. But I figured this would make for an interesting blog post, since if one person makes these mistakes, there must be more than one. (Incidentally, what HP:MoR, FAI and Bitcoin all have in common, is that I’ve heard about them from LessWrong.)

So far, humanity has had great success at building artificial specific intelligences. These are machines that can perform well in specific tasks which were once doable only with human intelligence. We have calculators that operate faster and more accurately than any human. We have chess programs that can easily beat the strongest human players. We even have cars that drive themselves more safely than humans.

What we don’t have is an artificial general intelligence (AGI) – a machine that has our ability to adapt to a very wide range of circumstances and solve practical problems in diverse fields. What will it take to create such a thing?

An argument I’ve heard says, that at our current technology level, we can build a machine with some specific level of intelligence (using, say, a generic state-of-the-art machine learning algorithm, such as a neural network). With hardware advances and Moore’s law, we will be able to build smarter machines, until one day, a computer will be as intelligent as a human. Past that point, it was said, computers with better hardware will become even smarter than humans, and gradually widen the gap.

Mankind has always been fascinated by the ability of birds to fly, and dreamed of gaining this ability itself. And people tried to proactively pursue this dream… By building feathered contraptions that resembled bird wings, attaching them to their bodies, and waving their arms vigorously.

That didn’t work.

People didn’t succeed in flying by building up muscle strength and flapping their arms more forcefully. They did it by understanding how flight works – the laws of physics, and aerodynamics in particular – and using this understanding to design a machine that can fly given our requirements and the tools available to us. These machines, of course, have only a superficial resemblance to birds.

Taking an algorithm which is crudely inspired by how brains are supposedly built, running it on increasingly faster hardware, and hoping that eventually general intelligence will emerge, is also not going to work. Instead, we need to understand how intelligence works, and use that to write software that will elicit intelligence from the technical capabilities of our computing hardware. Given the reliability and sheer processing power of modern digital computers, it is likely we will end up with a machine which is more intelligent than a human.

What’s next? The machine won’t wait around for Moore’s law to double its processing power and give it an edge in intelligence. Rather, it will use its superior intelligence to modify its own source code and create a better intelligence than we mere humans could create. The result will be even smarter and create an even better AI, and so on. The whole thing can explode rather quickly into absurd levels of intelligence.

What will this absurdly intelligent machine do? Another argument I’ve heard is that, since we wrote the code, it will only do what we told it.

It is a fundamental fact of theoretical computer science that, given an arbitrary program, there is no general way to tell if running this program will go on forever or stop at some point. Knowing whether a program stops or not is a pretty basic thing, so this already demonstrates the absurdity in thinking that knowing the code means knowing what the code does.

But we don’t need to go as far as these abstractions. Chess playing software were written by people, and these people have a good idea of the general way the program will go about finding the best moves. What they don’t know is what actual moves the program will play on the board. Indeed, chess programs often make moves no human would ever think of, because no human can do the trillions of calculations that the computer does.

But chess programs are just a specific intelligence. Once we build a program with general intelligence, we have no idea what specific course of action it will take. At first, we’ll have an idea about what the program does to reach a decision – but once the machine runs modified source code that it has written itself, we don’t even have that anymore.

It is generally assumed the AGI will be an “agent” – it will have a “target function”, a goal it wishes to achieve, and the software will be designed so that it always chooses the actions that best work toward this goal. We can try to construct the goal to be compatible with what we want, but “what we want” is incredibly complex and difficult to code; and the machine only cares about the goal we’ve written, not what we intended to write.

When we humans work towards our goals, we see fellow humans as our peers. When an AGI sees a human, it is more likely to see them as a collection of atoms that might be of more use to it in a different configuration. Avoiding the situation of a strong AI trampling humanity in pursuit of a naive target function that was coded into it, is exactly what the challenge of developing a Friendly artificial intelligence (FAI) is all about.

I’ve skipped over many details in this description, of course. But if you’re interested in learning more, you should stop listening to me – as I know nothing about this subject – and head over to (and if you ever decide to make a donation, they also accept Bitcoin).

What is real? And what is virtual?

The word “virtual” has several meanings. But the most obvious meaning people think of is “not real”. The uninformed often call Bitcoin a “virtual currency”, and contrast it with “real currency” such as the US dollar.

This is of course nonsensical. You could make stronger arguments for Bitcoin being real than for the US dollar. This is why Bitcoin should be more correctly referred to as a “digital currency”, emphasizing the fact that its existence consists in bits of digital information; or as a “cryptographic currency”, emphasizing that its operation is based on cryptography.

Similarly, the defining feature of the US dollar and its kin is that their issuing and usage is mandated by governments (regardless of whether an external body such as the Federal Reserve is charged with doing the actual issuing), and thus should be referred to as “government currency”. Alternatively, the terms “traditional currency” and “legacy currency” are slightly broader and emphasize that this is the kind of currency we have used so far. The term “fiat currency” is sometimes used to mean government currency, but personally I am not fond of that, as the literal meaning of the term is too broad.

A deeper understanding of the phrase “virtual currency” can be achieved only by contrasting it with something which is truly a virtual currency, such as World of Warcraft Gold. In the WoW game, virtual warriors are paying virtual gold to buy virtual swords with which to slay virtual dragons (or something like that. I’ve never actually played WoW).

None of this is real. Dragons of the kind featured in WoW have never existed in our physical universe. The WoW Gold does not correspond to any actual Au atoms. These are things that exist only in the virtual, simulated world.

The virtual dragons are encoded as bits, manifested as electrical and magnetic signals on computing devices somewhere. The bits are very real – they are configurations of actual electrons in our universe. But they are bits, not dragons.

Within the virtual world, the WoW gold is the ubiquitous currency used by the population, it is actual metal the people go out and mine, and it is not controlled by anyone. As such, the WoW gold is a virtual, physical, decentralized currency.

But just as the virtual dragons double as real bits, the WoW gold doubles as a real, digital, centralized currency.

The owners of this currency are the real players with user accounts that possess WoW Gold. And it has real value – real people offer real money (such as USD) to get WoW Gold, because they prefer to spend their real time playing WoW and slaying virtual dragons than farming virtual gold. And there are real sweatshops in China where real people work in real terrible conditions to play the game, earn WoW Gold, and sell it to aforementioned real players.

Of course, as a real digital currency, WoW Gold is centralized and is thus barely usable. It is completely controlled by Blizzard, hence is inefficient, and tricky to use because, AFAIK, its exchange for things of real value is an EULA violation. So WoW Gold is a bad real currency, whose saving grace is the extra semantics placed on it by the controlling company – which is entitlement to in-game virtual currency.

Since WoW Gold and its kin double as both digital currency and virtual currency, it is easy to see why people would get confused. But the contrast with Bitcoin becomes clear: It is digital, but it is not virtual. There is no virtual world in which Bitcoin is the currency. Rather, it is a currency used in our real world to pay for real products and services. It is digital and still fledgling, to be sure – but unlike WoW Gold, which is centralized and thus a bad currency, Bitcoin is decentralized and has all it takes to become a ubiquitous currency.

When in doubt, we should remember – that which vanishes is virtual, that which remains is real.

My new PC

It has been a while since I last posted on this blog; and the more this goes on, the more I feel that the post to break this prolonged absence must be “special”, and hence, harder for me to write. I’ve decided to break the cycle by writing a post that is special in the sense that it deviates from my usual habit of offering my thoughts on various developments in the Bitcoin world (which, incidentally, has celebrated its 6th birthday this week), and instead share my experiences from an important life event. Don’t worry, the word “Bitcoin” will still be mentioned several times.

I am talking, of course, about the new computer I have purchased. I’ll give you a moment to mock how uneventful my life must be if the purchase of a new computer is important, and move on to describe some of my design considerations.

Continue reading

The Creators and the Destructors

Some men and women are creators. They believe in dedicating their time and wealth to advancing a cause. They build things for others to enjoy, they help, they respect those around them in words and actions. They put their personal interests behind the greater good, and they always do the right thing, or at least try to. Over years of effort they prove their integrity and wisdom. If they do not have the means to contribute, they offer their gratitude and support to those who do.

When they disagree, they talk, ask questions, discuss. They make an honest effort to reach a mutual understanding in a respectful way. If when everything is clear the disagreement persists, they offer constructive criticism, they cherish the good and work to fix the bad.

But some have no interest in creation, only in destruction. They make little contribution of their own and impose impossible and arbitrary standards on those that do. They attack and slander the creators without correlation to what they do right or wrong. Whatever they have a gripe about, they strive to tear it down completely. When they disagree, they condone hateful speech, bullying, verbal abuse and threats of physical violence. Their only way of making themselves heard is by insulting those in front of them.

Bitcoin is only as strong as its community. When the goings get tough, when the community is torn asunder with infighting, when good men are subject to humiliation, when there is no unity, camaraderie or love, I take comfort in reminding myself who I’m struggling for. I’m not here for the destructors; I’m here for the creators.