Oleg Andreev

Software designer and crypto-anarchy historian.


What is blockchain

Blockchain is a data structure for proving that certain events happened in a specific order.

Blockchain consists of a chain of timestamped blocks of events. Events are often called transactions.

Why timestamps? To not only order events relatively, but also pin them to the real time as it’s way more useful and in some cases necessary to make plain ordering work (e.g in Bitcoin to readjust difficulty).

Why chains? To cryptographically link past events to the current events, preserving their order under the latest timestamp.

Why blocks? Because it is relatively expensive to timestamp an event, so almost every blockchain protocol groups multiple events in a single block that gets timestamped.

Why timestamps are expensive? It takes time to reach an agreement in a distributed system. The more distributed and less well-connected the system is, the longer it takes.

What blockchain is not

Blockchain is not a “shared” or any other kind of database, blockchain is only a proof. Blockchain is typically used as a mechanism to update one’s database. The illusion of a shared database is created by multiple computers updating their databases using the same blockchain, and arriving to the same contents. Usually only a specific slice of such databases is the replicated (e. g. unspent coins in Bitcoin), while the rest of the data is more user-specific or even private (e. g. account names).

Blockchain is not a product in itself. Blockchain is a cryptographic proof and as such works only within specific assumptions. For instance, Bitcoin proves that a certain amount has changed hands under assumption that it is prohibitively expensive to double-spend (or reverse) that transfer and that the network is well-connected in order to detect such attempts early. Likewise, commercial/federated blockchain network assumes that the operators protect their infrastructure well from abuse and do not fork the chain. Blockchain is only a component in a larger system.

Blockchain is not a transport mechanism. Transport mechanisms are necessary for delivery and replication of blockchains. Blockchain is not where “money flows”, it’s a place where money already moved and we have a proof of it.

Blockchain is not a “distributed system” in a traditional sense. Most distributed systems distribute load. Blockchains distribute vulnerability. For example, Bittorrent network and distributed/sharded databases distribute traffic and processing costs so that any single node does not have to service all requests. In a blockchain network nodes replicate and verify the same information in order to minimize vulnerability to any single node or entity.

On blockchain scalability

Traditional distributed systems are designed to scale the computational throughput, blockchains are designed to scale social interactions. Bitcoin nodes re-verify all same data and miners burn unforgivable amounts of electricity, but in return people in random jurisdictions can transact directly without numerous intermediaries and associated trust issues (that make many transactions prohibitively expensive).

Feb 8   bitcoin   blockchain

Powerful abstractions

Modern programming languages allow building sophisticated modular systems, where everything is in the right place and feels good. Enthusiastic engineers invent more and more powerful abstractions so we can build our software with ease and confidence.

However, there is a caveat. Power of abstractions is often considered by one factor only: the formal one, that qualifies how much things are “normalized” and “decomplected”. I would argue that there are a few other, no less important factors. For instance, mental overhead and convenience. When formalism is pushed to the limit, the usability of the framework usually goes to nil.

The key to success is, as usual, 80/20. If you keep your formalism at 80% towards Absolute Perfection, you have a chance of keeping the whopping 80% of usability and other nice properties. Think of this as Perl in reverse: Perl pushes convenience well over 80%, making programs hard to analyze formally. Watch for all factors, but stay humble, so radical improvements in one direction do not destroy all the others.

Dec 20   design

Why Bitcoin is called Bitcoin

99% of ideas around Bitcoin existed long before 2008. There was a proof-of-work money, there was a bit gold idea and there was paper on distributed property titles. Not to mention all the necessary cryptography that existed for decades.

The missing link was a simple idea: instead of tracking individual proof-of-work coins of bit gold inside some distributed property title registry, lets turn the problem inside out and put the registry inside a single coin. This way, the registry will track fractions of that coin, and the coin will be made perpetually scarce and identifiable due to never-ending amount of proof-of-work piling up on top of it.

Since it’s going to be just one coin of bit gold, it’s only fair to call it bitcoin.

Dec 19   bitcoin

Bitcoin is like...

Bitcoin is like physical cash: it is not reversible and you are responsible for handling it. If you lose your wallet, you lose your money. You can give bitcoins to someone to hold them for you, but it will be like with any bank: you have to trust them that they won’t run away with your money.

Bitcoin is unlike physical cash: you can store as much as you want and it will not take any space. You can send it over the wire to anyone. It is impossible to counterfeit. You can’t give it in one second: to actually guarantee that transaction has happened, you have to wait 10-15 minutes for the cryptographic proof to be produced by the network.

Bitcoin is like gold: it cannot be produced at will, there is a limited amount of it and this amount is scattered in spacetime continuum (mostly time). To get some bitcoins someone should give them to you, or you should *mine* them. Like gold, Bitcoin is shiny: it attracts people with its beautiful engineering, built-in contract programming language, wise incentives, and libertarian promise of freedom from coercion.

Bitcoin is unlike gold: supply of Bitcoin is completely fixed via scheduled mining (only so much bitcoins are created per hour). You have a guarantee that no one will suddenly find a mountain of bitgold or mine it on asteroids. Unlike gold, Bitcoin difficulty is adjusted to the mining efforts to keep the schedule fixed. You may dig up all the gold in one day, but it will never be possible with Bitcoin no matter how fast computers will ever become. Growing mining efforts can only bend schedule slightly (network adjusts difficulty to producing 6 blocks per hour, but if network constantly grows it may produce 7-8 blocks per hour).

Bitcoin is like a bank: there are computers, databases and transactions. Databases store the entire history of all incoming and outgoing payments: who send how much to whom. Everything is digital. There are no vaults with gold or personal deposit boxes, only bookkeeping in a single “ledger”.

Bitcoin is unlike a bank: everyone can verify that their database contains the same ledger data as everyone else’s. There is no manager in charge of updating the ledger and making sure it is not tampered with. Any person may have as many accounts as they like and all accounts are anonymous (unless one reveals his identity himself). Ledger does not store names, only balances and account numbers. There is no possibility of a “fractional reserve” when bank loans out more money than it actually has. In fact, there are no debts on bitcoin ledger: either you have money on your address and it is fully yours, or you don’t and you can’t use it at all. Also, Bitcoin allows to lock money with “contracts”: cryptographic puzzles designed to spread the decision making between several people or across time.

Bitcoin is like Monopoly money: coins are abstract tokens that are not claims to any value. People value them because they choose to play the game. In fact, the same is true for gold or any other money.

Bitcoin is unlike Monopoly money: there is a limited supply of tokens and no one can counterfeit them. This makes them a good candidate for a universally recognized collectible like gold or silver coins.

Bitcoin is like Git: in Git (a distributed version control system) all your changes are organized in a chain protected by cryptographic hashes. If you trust the latest hash, you can get all the previous information (or any part of it) from any source and still verify that it is what you expect. Similarly, in Bitcoin, all transactions are organized in a chain (*the blockchain*) and once validated, no matter where they are stored, you can always trust any piece of blockchain by checking a chain of hashes that link to a hash you already trust. This naturally enables distributed storage and easy integrity checks.

Bitcoin is unlike Git in a way that everyone strives to work on a single branch. In Git everyone may have several branches and fork and merge them all day long. In Bitcoin one cannot “merge” forks. The blockchain is a actually a tree of transaction histories, but there is always one biggest branch (which has the value) and some accidental mini-branches (no more than one-two blocks long) that have no value at all. In Git content matters more than branches, in Bitcoin consensus matters more than content.

Bitcoin is like Bittorrent: the network is fully decentralized, there is no single “mint” or “bank”. The blockchain is like a single file on bittorrent: cryptographically authenticated and shared across many computers. Every participant, including miners are acting on equal grounds. If one part of the network becomes disrupted, transactions can flow through other parts. Even if the entire network goes down, information about transactions is still stored on many thousands of independent computers and no one’s money is lost. When people connect with each other again, they can continue sending transactions like nothing happened. Both Bitcoin and Bittorrent can survive a nuclear war because information does not become radioactive and can be safely replicated.

Bitcoin is unlike Bittorrent: instead of many independent “files”, there is one file that always grows: the blockchain. Also, the most important participants: miners are actually getting rewarded for their work with real money.

Bitcoin is like freedom of speech: every transaction is a short public message that can be pronounced no matter where or how. If some miners hear it, they will add it in the blockchain and that message will be forever in the history. Everyone will see it and no one will be able to erase it.

Bitcoin is unlike freedom of speech: saying something comes with a cost. Transaction moves coins that you must have to start with. So not every moron is allowed to shout, but only those who had a merit to acquire some coins in the first place. Also, miners may reject transaction if it’s spammy or does not contain enough fees. So no one provides anyone with freedom as “in beer”, but everyone tries to cooperate on a voluntary basis.

Bitcoin is like a social contract: it is a pure cultural phenomenon. It works as money as long as people treat it as such and have guts to hold it and respect its rules. Technology is needed only insomuch to provide necessary plumbing for that contract.

Bitcoin is unlike a social contract: it is not the kind of a contract that they teach at schools. It’s not flexible, and it’s not imposed by some rulers. It’s a virtually immutable set of rules that everyone chooses to apply to themselves, therefore adding to a unanimous consensus.

Bitcoin is like magic internet money: it simply is.

Dec 10   bitcoin   git   money

Bitcoin is a Tesla

Bitcoin compared to traditional financial assets is the same as Tesla compared to gasoline cars. Both Bitcoin and Tesla are sustainable, require less maintenance and eliminate bullshit on a planetary scale.

Recently Elon Musk showed a new truck and a new roadster. Both are the same thing: a battery, couple of motors and a few wheels. Both are very fast, efficient and both not only beat the shit out of every competitor in their categories, but also reshape the whole industry by removing a lot of unnecessary parts and making old problems irrelevant.

Take, for example, a Tesla Semi:

  1. There is no transmission, no cylinders, no oil, no radiators, no shaft.
  2. Nothing explodes near your crotch 3000 times per minute. Instead, your car is powered by a sustainable solar energy: during the day charging stations accumulate the sunlight non-stop and during the night fill the car’s battery.
  3. There are brakes, but you never have to change them because you’d brake via motors most of the time, and guess what — they will return energy back to the battery.
  4. Four small motors are directly connected to four wheels. Not only the motors are the same as the motors in sedans (gaining from economy of scale), but they also provide independent torque to each wheel, giving better traction and better safety.
  5. A convoy of three trucks beats the rail: it’s not just more cost-efficient per kilometer, but you can deliver your load directly from door to door, without extra stations and re-loading your cargo from a train to a truck. You can now imagine how the entire problem of moving goods by land is going to be solved in a much more efficient manner.

Tesla Roadster is the same story, but applied to supercars. It beats all performance records, but because there is less moving parts, there is more space in the trunk, you can seat 2 more passengers and you can make 1000 km on a single charge. Oh, and it costs 5 to 10 times cheaper than all supercars that it outperforms. In other words, your non-toy everyday car can be a supercar. Even their SUV outperforms a Lamborghini.

How does it apply to Bitcoin? Bitcoin is also like a highly efficient battery with very little moving parts.

  1. Bitcoin is a very efficient battery: your stored value is impossible to siphon away via inflation and very hard to confiscate directly.
  2. Bitcoin is a very cheap battery: your stored value does not need maintenance or annual fees. It just sits where you put it and does not occupy any space.
  3. Since everyone can save money, there will be no need for consumer credits with their invasive personal records that leak all the time.
  4. The need for specialized insurance will be reduced to very low-probability issues. When you have more savings, you can afford higher deductible for your car insurance and pay less monthly, which helps saving money even better.
  5. Personal computers enable such a high level of security, there is no need to punish merchants with costs of fraud: payments can be settled much faster and without the need for payers to provide tons of personal information that is eventually leaked too.
  6. As money appreciates rather than depreciates, people will be more careful at spending it: the demand shifts towards higher-quality, longer-living products. You know, like Teslas.
  7. There will be less VC bullshit like “99% startups fail, so we’ll spread funds thin among 1000 startups”. The money will not grow on trees anymore. Most startups will start with their own savings and will provide actual value to actual consumers, because people are not going to part with their bitcoins that easily. Instead of trying to satisfy 3 rich investment “partners” (who just want to resell their stock to the bigger fool) and share your business with them, you will have 100% of your own business and will have to satisfy thousands of diverse customers who do not have any hidden agenda.
  8. People will work less and smarter: everyone wants to earn sound money, but having real savings, everyone can afford more time for personal growth and family. Like working 30 hours a week instead of 60. And with less stress and a higher self esteem. People can make families at a younger age, with less health issues. Kids will grow with more active parents that allocate more attention to them.
  9. Finally, Bitcoin works without kings and politicians: as a result, nothing will explode near yours or anyone’s crotch, just like in a Tesla. Who would spend money that can only be earned, not stolen or inflated, on purely destructive activity? Governments won’t be able to maintain huge armies and be at constant war all over the world: they’d have to start knocking on everyone’s door for extra cash.

Just like Tesla changes the paradigm of transportation, Bitcoin changes the paradigm of finance and security: many existing problems and solutions simply become irrelevant.

Dec 3   bitcoin   tesla

How to buy Bitcoin

You can only buy Bitcoin once in your life. You are going to make your homework and buy some coins with the intent to hold them for at least several years. They will (probably) eventually increase in value, so buying more some time after would not make a difference to your balance.

Unlike popular ponzi schemes, such as social security, pension funds and modern stock market, there are no dividends: you cannot earn more bitcoin by holding bitcoin. You can only sell, in which case you can get something useful back, but you would have to give your bitcoins to other people. The amount of bitcoins you have will only decrease.

People who understand that are rushing to buy as much as possible to have a better starting position. Because when you go from zero bitcoins to some bitcoins, that’s all you are going to ever have. This also explains all the insane level of attacks on Bitcoin in 2017: big money comes in and has only one chance to buy as much as possible, hence all the drama attempting to slow down the price while Coinbase signs up one million accounts per month.

There are three caveats, though.

First: most people would learn about bitcoin when its price has just increased rapidly and has a large amount of short-term speculation in it. They will buy at $1000 in 2013 only to witness the price sliding down to $250 in 2015.

Second: you have a lot of personal responsibility with Bitcoin. You can lose it in million different ways if you are not careful — hackers can steal it from you, your wallet provider can defraud you, you can “invest” in some “crypto currency” etc.

Third: an attempt to create a new kind of money is not a matter of technology, but a purely cultural phenomenon. Any money has value because many people are simply willing to hold it in their pockets. Technology is only there to provide plumbing for the shared hallucination, but does not actually induce it. If you do not believe in that cultural shift or do not support it, by all means you should not buy Bitcoin.

Nov 26   bitcoin

Money does not circulate

All the money ever does is “sits”. It never “moves”. Switching ownership is instant, so “sitting” takes 100% of money’s activity. If your money burns a hole in your pocket, it is not because “money must move”, it is because you have shitty money. A better money does not burn the pocket and sits calmly without losing its value waiting for a good opportunity to be spent on a worthy thing in the future. Money is the insurance against uncertainty.

Most people do not understand that because they hardly have any money: instead they have wages, fees and debt — they only see a shadow of money moving from their paycheck directly into their rent and groceries. And for the most part, it is because paper money loses its value all the time and does not permit savings.

If you do not belive me, here is a quote from Murray Rothbard published in 1963, What Has Government Done to Our Money?:

Economists err if they believe something is wrong when money is not in constant, active “circulation.” Money is only useful for exchange value, true, but it is not only useful at the actual moment of exchange. This truth has been often overlooked. Money is just as useful when lying “idle” in somebody’s cash balance, even in a miser’s “hoard.” (At what point does a man’s cash balance become a faintly disreputable “hoard,” or the prudent man a miser? It is impossible to fix any definite criterion: generally, the charge of “hoarding” means that A is keeping more cash than B thinks is appropriate for A.) For that money is being held now in wait for possible future exchange — it supplies to its owner, right now, the usefulness of permitting exchanges at any time — present or future — the owner might desire.

It should be remembered that all gold must be owned by someone, and therefore that all gold must be held in people’s cash balances. If there are 3,000 tons of gold in the society, all 3,000 tons must be owned and held, at any one time, in the cash balances of individual people. The total sum of cash balances is always identical with the total supply of money in the society. Thus, ironically, if it were not for the uncertainty of the real world, there could be no monetary system at all! In a certain world, no one would be willing to hold cash, so the demand for money in society would fall infinitely, prices would skyrocket without end, and any monetary system would break down. Instead of the existence of cash balances being an annoying and troublesome factor, interfering with monetary exchange, it is absolutely necessary to any monetary economy.

It is misleading, furthermore, to say that money “circulates.” Like all metaphors taken from the physical sciences, it connotes some sort of mechanical process, independent of human will, which moves at a certain speed of flow, or “velocity.” Actually, money does not “circulate”; it is, from time, to time, transferred from one person’s cash balance to another’s. The existence of money, once again, depends upon people’s willingness to hold cash balances.

Nov 26   money

About me


My name is Oleg Andreev. I was born in St. Petersburg, lived many years in Paris and recently moved to Bay Area.

I am into UI design, software architecture, information security and crypto-anarchy.



  • Protocol architect at Chain.
  • Author of Gitbox, a 5-star version control app for OS X.
  • Author of CoreBitcoin, a Bitcoin toolkit for Objective-C and Swift.
  • Author of BTCRuby, a Bitcoin toolkit for Ruby.
  • Designer and developer of Mycelium iOS wallet (2014).
  • Co-designer and developer of FunGolf GPS, the best assistant app for golfers (2012-2014).
  • Initial designer and developer of VK video service (2007–2008).



Andrey Andreev @aandr314