What is a Smart Contract?
Smart Contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference.
Background & History
The first smart contract concept was actually introduced well before any blockchain technology was even in existence. Crazy right!? Smart contracts were first proposed by Nick Szabo in 1994. Szabo is a computer scientist, legal scholar, and cryptographer who is a well respected academic with research in digital contracts and digital currency. Many people in the cryptocurrency community even assert that he anonymously created Bitcoin. Szabo denies this claim.
Nick Szabo, in 1996, described a smart contract as “ a set of promises, specified in digital form, including protocols within which the parties perform on these promises…”
It’s only appropriate to give credit where credit is due. Ethereum has global media attention and we should review where the concept of smart contracts actually began before diving into what a smart contract is today.
Below, you can find the definitions from Wikipedia & Investopedia.
Smart contracts are computer protocols intended to facilitate, verify, or enforce the negotiation or performance of a contract.
Smart contracts are self-executing contracts with the terms of the agreement between buyer and seller being directly written into lines of code. The code and the agreements contained therein exist across a distributed, decentralized blockchain network. Smart contracts permit trusted transactions and agreements to be carried out among disparate, anonymous parties without the need for a central authority, legal system, or external enforcement mechanism. They render transactions traceable, transparent, and irreversible.
So, what does this all mean?
In short, you can setup a digital, binding agreement between a stranger and yourself. You do not care to trust this stranger. And that’s okay! Because with smart contracts, they require no trust, as in a trustless agreement. The agreement is public knowledge (via the public ledger) and is fully transparent so both parties know what they are agreeing to.
It’s all programming logic at the end of the day. The outcomes are predefined in the contract which are dependent on the actions of the parties involved in the smart contract. When both parties fulfill their obligations, the smart contract will know which action to take. For example, releasing funds to the seller once the buyer confirms the delivery of the package. Take it a step further and have the funds release automatically by means of tracking the shipment via the tracking number. Want more security or peace of mind? One can require this smart contract to hold escrows by both parties to ensure no foul play is involved or they risk losing their escrow deposit.
Smart contracts have the power to automate processes and streamline operations. Currently, most use cases deal with financial services, but smart contracts can also extend into many business activities, such as, but not limited to: share holdings, voting, audit trails, document of records, auctions, etc…
The best part about smart contracts is that it doesn’t require the need to pay a middle man to handle your agreements. You save time and money! Also, with it being on the public ledger, you don’t have to go through a 3rd party to look up records. You have direct access to any and all records of your choosing.
Here are some example use cases:
- Auto Title Registrations
- Land Title Records
- Digital Identities
- Investment Strategies
- Prediction Markets
- Scheduled payments
- Payments on delivery
- Internet of Things
- DAO — Decentralized Autonomous Organization
By now, you should have a general-to-good understanding of what a smart contract is. But how does one leverage the power of smart contracts?
Answer: Scripting languages that can operate on a blockchain, the most well known being Ethereum.
More specifically, Solidity, a programming language used to develop smart contracts on the EVM: Ethereum Virtual Machine.
Fun fact: a sub-unit of Ether (the Ethereum token) value is named after Nick Szabo!
Oh you’re not a programmer? And you don’t want to spend months, if not years, learning computer science and the Solidity language? Can’t blame you there. It’s not for everyone.
But smart contracts ARE for everyone and by relation so is Ethereum!
So how does one create a smart contract without developing code…
Answer: Pactum. That’s us! :)
Smart Contracts fronted by a great UX and GUI to enable the power of CSCs. (Configurable Smart Contracts)
Pactum is a DApp that will allow users to choose from a “library” of Smart Contract Templates that fits their general use case. Furthermore, a user can customize the variables and conditions to fit their use case exactly as they see fit. This entails filling out an easy to use web form to customize said Smart Contract, along with automated verification and deployment to the EVM on their behalf.
No Solidity experience required!
Enabling P2P Pacts World Wide.
Encouraging mass adoption of Ethereum.
Stay tuned, more to come…