If the Blockchains were Excel, then smart contracts would be Word.

Cyril Lapinte
Dec 11, 2017 · 3 min read

Last week, I was talking at Geneva Devchain about ICOs.
I found there the usual awesome crowd that I love to hang with.

Most of the attendees had a pretty good understanding of blockchain and its most prominient use case: bitcoin
However, if many had already heard about ICOs or Initial Coin Offering, they were not familiar with its underlying beast: smart contracts.

So, let’s dig into it a bit deeper!
To simplify it, if the blockchain were an excel sheet then a smart contract would be a word document.
To complexify it, smart contracts are contained within the blockchain.

Common document formats

How, can it be possible ?
In a blockchain, each rows of the sheet is a transaction.
There are some trivial columns such as ‘from’, ‘to’, ‘amount’ but you also have some more columns.
To find someone balances, it is needed to look at all that persons transactions and calculate the remainings.

A Smart Contract is like a document template with the some empty fields.
Often, you will use or extend an existing template and fill the fields.
You also might want to make the document signed by the different participants.

So now, how does a word document can be stored in an excel sheets ?
The initial state of the smart contract is stored in the first transaction.
And all the subsequent changes are stored in separate transactions.
The state of the document can be obtained by applying all the changes.

It sounds a bit like macros, doesn’t it ? ;-)

Now let’s go back to what is an ICO contract.
An ICO contract is just a word template describing an investment scheme:
- How investors can participate: when, how much,
- What are investors entitled to: shares, voting rights, benefits, services (or utilities), …
- How the contracts can be updated or revoked

Most of ICO contracts will tokenize some elements of the contracts: shares, utilities, … The advantage of tokenization is that it does quantify precisely the element and allow it to be traded versus other tokens.

1- The document describes how many tokens there are and who owns them. This is similar as an Excel sheet within a word document.

2- The document can describe how tokens are associated with a specific element.

3- This is not usual, but the document could contain the description of several tokens and the interactions between themselves. In this case, you would have multiple Excel sheets within the same documents.

4- The document may also rely on other documents already written or to be written in the future to describe some behavior. The last is a very tricky condition that you should really be careful about as it relies on undefined behavior. You also have this very issue if multiple word documents are needed to describe a contract.

It should now be a bit clearer what are ICOs or Smart Contracts.