Advantages of Blockchain
4 minutes of reading
Now you understand a little bit what a smart contract is, before understanding the inner working mechanism of a blockchain, it is a good idea to know the advantages of using a blockchain first.
The advantages of blockchain all add up to two major pieces - freedom and trustlessness, trustlessness means that you don't have to trust a third party: a bank, a person, or any intermediary that could operate between you and your cryptocurrency transactions. Therefore, building Blockchain and Solidity applications (Solidity is one of the programming languages for writing smart contracts in the blockchain world) is building a world of more trust and accountability.
It gives us freedom to engage with other people how we wish because there's no centralized controlling body influencing every action that we make, all the rules are the same and nobody's getting special treatment, this brings out this new world of economic opportunity as well and as our lives become more and more digital, we're constantly being bombarded with centralized services that want us to use their interface so they can profit on how we interact and force us or push us to make the decisions that they're motivated for us to make. Smart contracts, decentralized applications and blockchain allows us to be free of these oppressors and live in a world that's truly free and trustless.
Decentralization
There's no centralized entity that controls the blockchain, it is run by a network of independent users. The individuals that make up blockchain are known as node operators (miners and validators, more about that later) and they are running the software that connects the whole blockchain together. It's all these different independent individuals that form the decentralized network.
Transparency and Flexibility
Everything that's done on a blockchain and all the rules that are made can be seen by everyone, there's no backdoor deals and no funny business happenings. Everything that happens on chain you can see means that there's no special information that only a few have, everyone has to play by the same rules and everyone can see exactly what those rules are.
Additionally this doesn't mean that everything you do is tracked, the blockchain is pseudo-anonymous as you can create different accounts to interact with the blockchain in many ways. Other people cannot recognize you from your account as long as you don’t tell other people you own the account.
Speed and Efficiency
Have you ever tried to make a withdrawal from the bank and it took three to five days? All the bank is doing is adding and subtracting numbers, so why does it take so long? That’s because sometimes they need human verifications.
Since transactions on the blockchains are verified by a decentralized collective (miners or validators), the settlement period in this case is substantially faster and depending on the blockchain that you're using it can be from 10 minutes all the way down to just a couple of seconds.
Security and Immutability
Blockchains are immutable which means they can't be changed without other peers noticing and because of that, they can't be tampered with or corrupted in any way, this introduces massive security on our data, our transactions and anything like that. Blockchains are incredibly incredibly secure. Hacking the blockchain is nearly impossible and substantially harder than hacking a centralized entity.
In the regular world if your computer goes down and all of your backup computers go down, all your data is gone. On a blockchain, if several nodes go down it doesn't matter because as long as one node is running, the data is safe.
Instead of having gold stored in a locker or contract written on a piece of paper or on your computer you have asset that is locked on the blockchain forever and all you need to do to access it is to have a private key which is essentially a password so you don't have to lug your gold around or lug your contracts around with you. It is always stored in the blockchain’s smart contracts.
Removal of Counterparty Party
In the traditional world when we engage with individuals they don't always have our best interests at heart, a lot of them are usually self-motivated in some sense and there's nothing wrong with that, however when we make an agreement with them, this agreement can have a massive conflict of interest with the user who's supposed to execute that agreement.
Let's take insurance for example, if I pay an insurance provider $100 a month and in the event that I get hit by a bus we've made a contract that they're going to pay my medical bills. However they have this massive conflict of interest, insurance companies aren't in the business of giving out money, they're in the business of making money so even though they've signed this agreement, when this event occurs they still don't want to pay this money out to me and if they can find a loophole in the contract they will, because that is what they are motivated to do so, so they have this massive conflict of interest and this is native in all of the agreements that we make today, they are the ones who decides whether or not they're going to execute their agreement.
Giving execution power to the party that doesn't want to execute something has often led to frustration, now the follow-up is you can always sue them and go through this process but now you're wasting all this time going through this long process to get something that you should have originally gotten in the first place.
Trust Minimized Agreements
Smart contracts allow us to engage in trustless and trust minimized agreements. We currently live in a world of brand-based agreements. If I engage in some agreement and I don't like the service that I'm provided, my alternative to this is to look for another service who's going to make the exact same set of promises to me and then I have to trust them that they're going to execute faithfully.
Smart contracts allow us to move from brand-based agreements to math-based agreements. With smart contracts we don't even have to trust that they're going to do the right thing, because one plus one is always going to equal two in the math world. Whatever the code determines is the input output that's exactly what's gonna happen every single time.