Blockchain Decentralized Applications (DAPPS): Ethereum

FREE Online Courses: Elevate Your Skills, Zero Cost Attached - Enroll Now!

Decentralised applications (dApps) are digital applications or programs that exist and run on a blockchain or a peer-to-peer network of computers instead of a single computer. DApps (also called “dapps”) are outside the control of a single authority and follow a decentralised decision making system. DApps are often built on the Ethereum platform—can be developed for a variety of purposes including gaming, finance, and social media.

Key Takeaways

  • Decentralised applications are digital applications that run on a blockchain network of computers instead of relying on a single computer.
  • Because dApps are decentralised, they are free from the control and interference of a single authority.
  • Benefits of dApps include the safeguarding of user privacy, the lack of censorship, and the flexibility of development.
  • Drawbacks include the potential inability to scale, challenges in developing a user interface, and difficulties in making code modifications.

Understanding Decentralised Applications (dApps)

Web apps today operate on a computer system that is owned and operated by an organisation, giving it full authority over the app and its workings. There may be multiple users on one side, but the backend is controlled by a single organisation. However, DApps can run on a P2P or a blockchain network.

For example, BitTorrent, and Popcorn Time are applications that run on computers that are part of a P2P network, where multiple participants are consuming content, feeding or seeding content, or simultaneously performing both functions.

In the context of cryptocurrencies, dApps run on a blockchain network in a public, open source, decentralised environment and are free from control and interference by any single authority. For example, a developer can create a Twitter-like dApp and put it on a blockchain where any user can publish messages. Once posted, no one—including the app creators—can delete the messages.

Advantages and Disadvantages of dApps

Advantages of dApps

Many of the advantages of dApps focus on the program’s ability to safeguard user privacy. With decentralised apps, users do not need to submit their personal information to use the function the app provides. DApps employ smart contracts to execute transactions between two anonymous parties without relying on any central authority.

DApps can also be developed as alternative social media platforms but with more free speech. A decentralised social media platform would be better to deal with censorship because no single participant on the blockchain can delete messages or block messages from being posted.

Ethereum is a flexible platform for creating new dApps, providing the infrastructure needed for developers to focus their efforts on finding innovative uses for digital applications. This could enable rapid deployment of dApps in a variety of industries including banking and finance, gaming, social media, and online shopping.

Disadvantages of dApps

The major disadvantage of dApss right now is that it is still in a pretty novice stage and thus, a lot of experimentation is needed to correctly exploit its potential and prevent any misuse. There are doubts regarding effective scalability, particularly in the event that an app requires significant computations and overloads a network, causing network congestion.

Developing a user-friendly interface also seems like a herculean task right now simply because most users of apps developed by traditional centralised institutions have an ease-of-use expectation that encourages them to use and interact with the app. Getting people to transition to dApps will require developers to create an end-user experience and level of performance that rivals already popular and established programs.

Code modifications is another limitation of dApps because once deployed, a dApp will likely need ongoing changes for the purposes of making enhancements or to correct bugs or security risks. According to Ethereum, it can be challenging for developers to make needed updates to dApps because the data and code published to the blockchain are hard to modify.

Pros

  • Enhances user privacy
  • Resists censorship
  • Flexible platform enables dApp development

Cons

  • May lack effective scalability
  • Difficult to develop user-friendly interface
  • Code modifications is tough

Smart Contracts

The term smart contracts was coined by Nick Szabo in 1994 and refer to automatically executing digital contracts that run on a blockchain and make it even more useful for the real world.

The primary feature of a smart contract is that once deployed on a blockchain, the contract is immutable (cannot be altered), and it cannot be edited in any form whatsoever. Hence, once the mentioned conditions are met the contract(or prgram) is executed automatically. Thus, Blockchain Smart Contracts unleash the facility of the blockchain and therefore it’s told to develop good contracts on the blockchain.

What Are Ethereum dApps?

Ethereum: Localised Applications

These are simply the decentralised applications that are powered and developed using the Ethereum platform. Ethereum dApps use smart contracts for their logic and are deployed on the Ethereum network and use the platform’s blockchain for data storage. Today, ethereum is the most common platform to deploy a dApp.

Ethereum includes a public blockchain that lets users run code on and is one of the best for newbie blockchain programmers.

Gas and Gas prices:

Ethereum blockchain includes a construct of Gas, it is the quantity of fuel that you need to pay to execute a transaction. The group action might deploy your contract on the blockchain or may run an operation that already exists. To incentivize nodes to share their machine power and execute the group action, every operation charges some gas reckoning on the quality of the group action. The Gas in an Ethereum smart contract varies depending on the nature of the transaction. The gas that your group action desires increases by the gas value to induce the gas value.

What Is the Difference Between a Centralised and Decentralised App?

Like the name suggests, a centralised app is owned by a single company. The application software for such an app resides on one or more servers controlled by the company. All users interact with the app by downloading a copy of the app and then sending and receiving data back and forth from the company’s server.

A decentralised app (also known as a dApp or dapp) operates on a blockchain or peer-to-peer network of computers which enables users to engage in transactions directly with one another as opposed to relying on a central authority. The user of a dApp will pay the developer an amount of cryptocurrency to download and use the program’s source code which is known as a smart contract, this allows users to complete transactions without revealing personal information.

What Are Examples of Centralised and Decentralised Apps?

Popular examples of centralised apps are Twitter, Facebook, Instagram, and Netflix. Banks and other financial institutions use centralised apps to allow their customers online access to their accounts.

Peepeth, a social network alternative to Twitter, is an example of a decentralised social media app. Cryptokitties is a dApp game which allows users to buy and sell virtual cats. MakerDAO is a decentralised credit service supporting the stablecoin Dai and allows users to open a collateralized debt position (CDP).

Conclusion

In this article, we learnt about decentralised applications from scratch. We tried to understand the basics of blockchain followed by the basics of dApps. Then we discussed the advantages, disadvantages, pros and cons of dApps to get a better idea about them. We also learnt the major differences between centralised and decentralised apps and learnt some examples of each.

If you are Happy with DataFlair, do not forget to make us happy with your positive feedback on Google

follow dataflair on YouTube

Leave a Reply

Your email address will not be published. Required fields are marked *