How to write secure smart contracts?


Or a short history of Solidity: why this language got written the way it was written, why it is horrible for writing smart contracts that handle real money, and how one can write safe smart contracts in Solidity despite these shortcomings.

This is a companion discussion topic for the original entry at