By Mussie Legesse, Creative Lead at Xeddy
Smart contracts, at least conceptually, aren’t very difficult to understand. They branch off of a framework that, in general, people recognize. Contracts are a part of life in the modern world; in practice, they are as old as civilization. Essentially, a contract is an agreement between different entities. The notion of an agreement, a contract, was present in the time of the ancient Greeks and Romans and evolved into the middle ages, the industrial revolution, and now the modern era, where the idea of a contract is present in government and politics, marriage, and business. Smart contracts, in a sense, are the next stage in their evolution. Now, one may ask, what makes a smart contract, smart? The answer is simple; a smart contract is computer code, actual lines of code written in a programming language, designed to execute tasks automatically according to the agreed-upon terms.
Simply put, smart contracts operate using logic-based concepts like “If/when…then…” statements. The “If/when…then…” statements establish predetermined conditions and automatically execute the specified tasks upon meeting the predetermined conditions. The vending machine example proposed by computer scientist and cryptographer Nick Szabo is an excellent tool for understanding smart contracts. A vending machine receives money and a selection and automatically dispenses change and the selected product. Even though vending machines are a good way to conceptualize smart contracts, it is essential to point out they don’t appropriately capture the sophistication and complexity of smart contracts. Fun fact, Nick Szabo coined the term “smart contract’’.
In a paper he authored, Nick Szabo stated, “The general objectives of smart contract design are to satisfy common contractual conditions…, minimize exceptions both malicious and accidental, and minimize the need for trusted intermediaries.” From this sentence alone, the benefits of smart contracts can be outlined:
In addition to the three benefits listed above, smart contracts have a plethora of use cases, from finance to real estate to gaming. Considering all this, it is not foolish to imagine the future widespread adoption of smart contracts.
When thinking about smart contracts, aside from the programming aspect, the legal aspect should also be taken into consideration. The legal element is vital for the successful widespread adoption of smart contracts. Smart contracts are programming code, a set of clear commands and instructions. It is black and white. However, the legal system isn’t perfect; contract disputes occur all the time. The law can be unclear and too dependent on interpretation. It is gray. To thrive, smart contracts must reconcile the two. To accurately transcribe the terms of an agreement into self-executing code, the terms need to be defined clearly and fully understood by the parties involved. To successfully achieve this, the collaborative efforts of a programmer and legal person are necessary.