BUSINESS could be such a breeze—if it weren’t for those pesky humans. Imagine contracts that enforce themselves and are not subject to interpretation by, for instance, rent-seeking lawyers. Or envisage autonomous corporations, made up of bundles of automatic agreements, which could send their investors dividends whenever profits reach a certain, specified level and not just when the board of directors has had a good lunch.

Such “smart contracts” are all the rage among futurist backers of the blockchain, the technology that underpins bitcoin, a digital currency. In simple terms, these are pieces of software that represent a business arrangement and execute themselves automatically under pre-determined circumstances. As well as making businesses more efficient, some see them as a way to bypass human decision-making altogether. Faster than you can say “techno-Utopia”, however, the idea has collided with reality.

Automating contractual relationships is an old dream. The term “smart contracts” was coined in 1994 by Nick Szabo, an American computer scientist and legal scholar. But the concept remained obscure for lack of the right technology. Then, in 2008, along came bitcoin and the blockchain, a special kind of peer-to-peer database that provides a secure, public and trusted record of transactions. It enables new data to be added and prevents historical data from being tampered with. But the potential of the blockchain goes much further than ensuring the same bitcoin are never spent twice. It also allows users to “bake in” information, including the precise instructions needed for smart contracts.

Bitcoin’s blockchain proved to be less than ideal for executing business rules. Enter Vitalik Buterin, a 22-year-old Russian-Canadian programming prodigy, and his crew of libertarian coders. Last year they launched Ethereum, a new type of blockchain meant as a platform for smart contracts. The aim was as much political as it was technological. Ethereum would allow developers to program not only smart contracts, but entire “Decentralised Autonomous Organisations” (DAOs)—entities that, like bitcoin, do not need centralised management and operate beyond the direct control of self-interested institutions such as governments.

The Ethereum coders immediately pressed ahead with just such an application and created, in April, a sort of venture-capital fund without venture capitalists, called the DAO. Everyone could join it by transferring digital coins (called “ether”, Ethereum’s equivalent of bitcoin) to a smart contract which represents the fund, which gave them the right to participate in votes on investment proposals. It attracted ether at one point worth more than $200m. But then somebody hacked the DAO through flaws in its code, and took about $50m. The stolen funds could only be fully withdrawn after four weeks. So to recover the money in time Ethereum’s community last week agreed to change the rules, allowing the original owners to withdraw their contributions.

The DAO debacle could reflect teething problems. On average, software comes with between 15 and 50 defects per 1,000 lines of code. That number is estimated to be at least twice as high for Ethereum’s contracts because the system is immature. This means that, as one blogger put it, the contracts are “candy for hackers”.

But the affair also points to more serious problems with the very concept of smart contracts. A blockchain is meant to be immutable. Once contracts are set in cryptographic stone, the whole idea is that they cannot be changed, even though updates are usually how software matures. The Ethereum community resorted to changing its blockchain in this instance because the DAO was considered too big to fail: it had attracted 14% of all the ether in circulation. But that creates more problems: if code is law, so are bugs in the code—and correcting them may itself mean a breach of contract. Some are now speculating whether the DAO hacker will sue to recover his loot.

There are other reasons why smart contracts may never become as pervasive as their fans hope. Imagine a contract that gets data from elsewhere and then takes action—an agricultural-insurance policy, say, that retrieves weather data and pays out automatically if there has been no rainfall. Simple as that sounds in theory, the nature of the blockchain again gets in the way. It is controlled collectively by many of its users, so they all have to keep identical copies of the contract and there is as yet no way around this. So which duplicate of the contract should try to fetch the data? To avoid such confusion, trusted parties, known as oracles, could supply the data to a blockchain, but that would undermine the goal of agreements free of human caprice.

Fans of smart contracts should curb their enthusiasm. Rather than creating “a new breed of human organisation”, as the now dissolved DAO promised, the best uses of the technology are for now more mundane: escrow, automatic transfer of funds and the like. Sophisticated smart contracts will emerge within old-style organisations long before they replace them—on private blockchains maintained by groups of companies, such as banks. The furthest along in using smart contracts, Symbiont, a startup, for instance, has built a trading platform for “smart securities” such as syndicated loans and catastrophe-insurance swaps.

Flawed humans v buggy code

If smart contracts can be made to work, how automated should business ultimately become? So far, IT has mainly replaced paper processes. Smart contracts mean a different order of automation: economic transactions are put on auto-pilot. True believers want them to do away entirely with intermediaries, from banks to governments. But they should be careful what they wish for. If smart contracts spread widely, you would take away much of the flexibility that smooths the economy’s functioning. Real-world institutions can adjust when things go wrong. For many years to come, and perhaps for ever, human institutions, flawed though they are, will be a smarter bet than relentless, bug-ridden code.