Cardano Blockchain #2022
Tags: cardano, blockchain, programming, beginners
Published: 2022-02-18 07:13:17

At the beginning of 2022 Cardano is getting a lot of traction in the Blockchain world. This article is aimed to give the reader a better understanding of the Cardano blockchain and some steps to start developing in Cardano.
Cardano Blockchain is the third generation of Blockchain Technology aimed at scalability, Interoperability, and sustainability needed for real-world applications.



Cardano led the Way in Total Development Activity, In 2021

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4gw25c7hegq296v53xpy.jpg)

**Reasons**

**Level-3 Blockchain**
The first generation of Blockchain was Bitcoin which is based on Decentralized transfer of assets between the users irrespective of their location within a limited amount of time. Bitcoin is based on UTXO which is discussed in detail later in this article.


The second generation of Blockchain was introduced by Ethereum which included smart contract support with this the developer can code logic with the asset to build sophisticated dapps. The disadvantage is the lack of scalability of the system to be a global financial
 system and as of second-generation blockchain it is impossible to interoperate between each other without an intermediary which itself is a risk factor and transaction speed and cost is also a drawback as it is a Proof-Of-Work-based blockchain.

The third generation of blockchain is designed as a solution to the previous generation’s problems. It solves the problem of interoperability in Cardano is meant to be the internet of Blockchain. Scalability issues are solved with Cardano it has more transactions per second. Cardano uses Haskell as its programming language which is a functional language with about 40 years in existence which makes it a predictable language. Cardano dapps are FutureProof


**Transactions Per Second**
Cardano has 250 transactions per second which is much more than the traditional standards of transactions per second and it is aimed to improve it to a million transactions per second which makes the blockchain eligible to make it a global financial system.
As of now, 250 transactions per second is less in comparison with Bitgret and Solana which support 100,000 TPS and 65,000 TPS respectively but Cardano is aiming to improve TPS to 1,000,000 which will make it the fastest blockchain in the future.

**Trust Of Banks and Governments**
As in the previous generation of Blockchains banks and governments simply don’t like the Blockchain for Finance as it is anonymous Cardano solves this issue by having the option to add metadata to the transaction with the details hence improving the applications in Banks and Governments too it is important to mention that it is completely optional for the user to attach it.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ineo5i878x3q2833poqb.jpg)

**Upfront Estimation Of Transaction Cost**
The transaction gas fees are known to the developer upfront as there is no bidding involved for gas fees(Proof-Of-Stake is Used).

**Cost** 
The cost for a transaction is very less compared to other blockchains currently one ADA(token of Cardano) only cost around 1.07$ which makes it a cost-effective Blockchain for Cardano

**Proof-of-Stake** 
In Cardano, the time is divided into small parts called Epoch and it is further divided into slots and the slot leader is chosen randomly from the pool of stakeholders which makes Cardano efficient in the use of computation power and faster.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fmk1qvl8wh7o01tg204f.jpg)

**EUTXO Model**
In the UTXO model which is used in Bitcoin, a transaction has inputs and outputs, where the inputs are unspent outputs from previous transactions. Assets are stored on the ledger in unspent outputs, rather than in accounts. In EUTXO instead of using public keys and signatures only for locking a UTXO, it can contain arbitrary logic in the form of script which can determine whether a given transaction is allowed to consume the UTXO or not. In EUTXOS outputs can carry arbitrary data in addition to address and value.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gok2g8ih4vy65ojczl87.jpg)

**Security**
In solidity(Etherium) there is no proper mechanism for Integer Overflow which caused the loss of millions of dollars in the past. In Cardano there are proper mechanisms are implemented to solve this issue.

**On-chain Off-chain code in single Contract**
Cardano supports both off-chain code and on-chain code to be written in the same smart contract which helps in the reusability of code that requires less code to interact with smart contracts.




**Current Challenges**

Lack Of Resources(Learning language)
Currently, there is a lack of resources to learn the language and expertise in smart contract development.

**Plutus** 
Cardano uses Plutus programming language which is based on Haskell which is a functional language that is a little hard to adapt for developers currently in OOPS programming language.


**Suggested Learning approach for Developers**

    1. Learn basics of Cardano

    2. Learn Haskell

    3. Familiarize Plutus Playground 

    4. Follow Plutus Pioneer Program on Youtube for smart contracts using Plutus.








**References**

https://cardano.org

https://medium.com/@cardano.foundation/why-cardano-chose-haskell-and-why-you-should-care-why-cardano-chose-haskell-and-why-you-should-f97052db2951

https://www.nasdaq.com/articles/the-two-big-problems-facing-cardano-2021-03-17

https://www.youtube.com/watch?v=Do8rHvr65ZA&t=324s

https://www.haskell.org/