What we will discover in this blog post are some practical examples of how the social economics of any organisation can benefit with more auditable democracy and decentralised processes using blockchain technology. I’m writing this post in the context of the Iron Blogger (IB) organisation, but these concepts can of course scale to almost any type and size of organisation.
Ever since I got interested in Bitcoin and the cryptocurrency movement around 2012, I’ve been fascinated by blockchain as a technology and all that it promises (read my previous post about what a blockchain is). Since then the Bitcoin community’s focus has been mostly financial, with the currency primarily turning into a speculative store of value. Like a more volatile version of gold. The full promise and application of the blockchain never really took off with Bitcoin. The Bitcoin blockchain is as capable as any other blockchain, but the community, governance and the tooling around it never got there.
But the landscape recently changed with a new community coming to life — say hello to Ethereum! If Bitcoin is gold, then Ethereum is gas — a digital kind of fuel that you can use for productive and useful things. Ether is the currency (or fuel) in the Ethereum ecosystem. You can buy Ether with traditional fiat money (e.g. Euros) or with Bitcoin on an exchange like Coinbase or CEX. But the real strength of Ethereum lay in the governance and the tooling around its blockchain. One central concept on this blockchain are programmable contracts, or smart contracts as they are called. These contracts are written with the Solidity programming language.
Before we dive into how Iron Blogger (IB) can benefit from the Ethereum blockchain and so called smart contracts we need to clarify a few things… What’s a contract? And more importantly, what’s Iron Blogger?
What’s a contract?
When most people hear the term “contract” they think of civil contract law, i.e. a piece of paper that you sign. But Ethereum’s smart contracts refer to the wider definition of contract theory in general economics:
In economics, contract theory studies how economic actors can and do construct contractual arrangements […] A standard practice in the microeconomics of contract theory is to represent the behaviour of a decision maker under certain numerical utility structures, and then apply an optimization algorithm to identify optimal decisions.
That sounds complicated! After a bit more research I came up with this simplified definition of “contract theory”:
Contract theory is about arrangements between economic actors where a contract represent the behaviour and decisions that must be taken under certain structures and conditions.
That makes more sense. Leave a comment if you disagree with the definition 😉
What’s Iron Blogger?
IB is a network of bloggers who are incentivised to publish at least one blog post per week. But more precisely IB is three interrelated things:
- A group of bloggers that are organised by a central authority, i.e. Hagen Graf our IB trustee.
- A list of rules and incentives, e.g. a penalty fee for those who don’t blog weekly.
- A central bank (PayPal account) storing income from penalty fees and paying out anything else IB needs.
There are many things we currently have to trust our IB trustee with. On a weekly basis the trustee is keeping track of who blogged and collecting the penalty fee for those who haven’t. This trustee is also collecting votes from us bloggers for how to spend our money (the income from penalty fees). The IB trustee is also managing the actual transactions for spending that money. That’s a lot of trust!
Before we go further I must state that I love IB! The current system is set up well and run responsibly. What I’m writing about here is not a critisism, but a constructive analysis of how we could utilise the Ethereum blockchain to make IB even better.
Things to improve with Iron Blogger
It would be nice, if IB was governed in a more democratic way instead of managed by someone who was not elected by the IB community. Imagine if we could elect our trustee on a periodic basis. We could also vote on rule book changes etc. A voting system built with traditional software could theoretically handle this. The problem, however, is that even though the voting system and its software might be open source it’s still difficult (or even impossible) to audit since it has to run on a central computer that we still would have to trust with executing the software correctly (this is a very important point and how, f.ex., Google Android is deceiving users by being “open source” but not providing any proof of how the software is actually executed on the phone).
Further, it would be nice if we could remove humans or third-party organisations to handle the central bank so that we don’t have to (a) trust Paypal to keep our money safe and (b) trust our IB trustee to responsibly manage the transactions.
How the blockchain can help
If IB were to exist on the Ethereum blockchain we could define a smart contract for each of the three things that make up IB (1) the organisation (2) the rule book and (3) the bank.
But how can an organisation logically be defined by a contract, you ask? Isn’t a contract a piece of paper you sign, you ask?
Well, if we go back to the definition of contract theory we learned that a contract is an arragement between people where there are expectations on behaviours and structures. When you think about it, that way it makes sense, an organisation is a kind of contract! The same reasoning goes for the rule book.
Contract #1 – the organisation
So we can start our new organisation by defining a smart contract for what’s called a Democratic Autonomous Organisation (DAO) in blockchain terminology. A DAO is an organisation driven by processes and rules that are programmed into the blockchain. For example, we can build the aforementioned voting system in a way that’s completely auditable. We don’t need to trust any central computer to execute our processes correctly because this smart contract is independently and cryptographically verified by “those who run the blockchain” (more on this in another blog post). Here are further features of this smart contract:
- A function for adding members to the organisation (only executable by the trustee)
- A function for leaving the organisation (only executable by members)
- A function for electing members to become the trustee (only executable by members)
- A function for electing rule book contract (only executable by members)
- A function for electing bank contract (only executable by members)
- A reference to the currently elected rule book contract
- A reference to the currently elected central bank contract
This first smart contract would be what Ethereum calls an “upgradable” contract, meaning the organisation always stay the same and a developer can make changes to the contract code in order to fix bugs etc.
Contract #2 – the rule book
This second smart contract will define the expectations and (importantly) incentives for all IB bloggers. We can be very creative here, but a simple system could be:
- Once a year IB bloggers must pay a 0.52 Ether deposit (for 52 weekly blogs) to the organisation’s bank account
- In exchange, IB bloggers get an “IB token” that from week one is credited with 0 Ether
- For every weekly blog your IB token is credited with 0.1 Ether from your annual deposit. This is your incentive to blog.
- If you didn’t blog one week, IB will keep that 0.1 Ether for something else
- If you decide to leave IB, your token would be credited with your remaining Ether deposit
Here are further features of this smart contract:
- A reference to the organisation this contract belongs to
- A function for making the annual deposit in exchange for the aforementioned token (only executable by members)
- A function to submit weekly blogs (only executable by members)
- A function to check who followed the aforementioned rules (referring to the deposit on the bank contract and the submitted blogs)
Since we don’t want any one to tamper or otherwise be fraudulent with this rule book, we would make it “non-upgradable” meaning no developer can ever make changes to it. However, a new rule book could be created on which the organisation can vote to use instead.
Contract #3 – the bank
We still don’t have a replacement for the Paypal account. So this will be our third smart contract. We can design this contract in a way that no human or other third-party need to manage any transactions. This contract would periodically ask the organisation contract (which would refer to the current rule book contract) what IB tokens to credit and with how many Ether. Here are further features of this smart contract:
- A reference to the organisation this contract belongs to
- A function for paying Ether into the bank (only executable by members)
- A function for paying out Ether from the bank (only executable by the rule book contract)
- A function for retriving info about who payed, how much and when (only executable by the rule book contract)
As with the rule book, we would make this bank contract “non-upgradable” to remove any way of tampering with the bank.
What does all of this mean?
With the above three smart contracts, running on the Ethereum blockchain, we have essentially brought the following benefits to IB:
- Decreased the amount of trust we must give the trustee (now only needed for adding members to the organisation contract).
- A more democatic organisation with an auditable election system running on the blockchain
- The rule book and the bank contracts are designed to execute tasks automatically by themselves, in an auditable way on the blockchain without human or third-party interaction. The contracts can’t be changed (or “upgraded”) by a developer either. A curruption free system!
Now, take these ideas and apply them to something bigger, like large corporations or even governments. It then becomes clear how society can benefit from blockchain technology. In my opinion, it’s on the same scale as society benefitted from the Internet itself!
What’s the catch?
There was a lot of information to take in from this blog post. Here are some good questions that you might ask yourself after reading this post:
- How can software be fully and independently auditable?
- “Those who run the blockchain” was mentioned earlier, who are they?
- If blockchain is so great, why does not all software work like this already?
And lastly, in social economics everything has a cost and you won’t get benefits for free. There ain’t no such thing as a free lunch. And that’s true even for blockchains that indeed come with some great costs. But I will try to answer this and the aforementioned questions in a later blog posts.
Let me know in the comments below if you have any other questions, concerns or feedback that I should try to answer as well!