The complete guide to dApps
Decentralized applications (dApps) are changing the way we interact with the world.
They make interactions with apps, games, and services cheaper, faster, and more reliable.
But, how do they work and what do they do?
CryptoMeister is here to uncover the mysteries of dApps and how they burst into existence.
From the early days of Ethereum to where we are now, the dApp scene has changed dramatically.
Ready to learn everything there is to know about dApps?
What are dApps?
Decentralized applications (dApps) are applications and smart contracts running on a blockchain network.
The whole idea behind dApps is that they function just like a regular app, game, or website, but run on blockchains.
This means that they’re highly available and don’t rely on a single data center to keep them running.
This means that if the developer gets hacked or has an issue with their servers, the dApp carries on like normal.
Ethereum was the first blockchain to launch smart contracts, opening up the wonderful world of dApps.
Since then, we’ve seen an incredible range of dApps come to life, ranging from games that let you create and sell cats to decentralized finance (DeFi).
That’s right, DeFi is a type of dApp – how cool is that!
Virtually anything running on top of Ethereum, or other smart contracting blockchains, is a dApp.
In fact, dApps can be just about anything you can dream of, as long as they fit a few criteria points.
The criteria to be classed as a dApp is as follows:
- Data must be publicly stored on a blockchain
- Must be open source with no controlling entity
- Must have a cryptographic token
So, while a team can build and develop a dApp, the databases and code must be publicly available.
This doesn’t mean that use data is human readable, though.
It simply means that the data that would normally be stored on a company server is stored on the blockchain instead.
Code must also be made open source through a website of service like GitHub.
The cryptographic token is the in-game or currency used in the dApp.
For example, in the Uniswap dApp, the token is UNI.
More often than not, you won’t even realize you’re using a dApp.
There are quite a few drawbacks to using dApps, but that’s simply because the dApp world is just getting started.
We’re just at the beginning of the dApp era, and most dApps are still in development or are simply whitepapers.
This means that the coming years will be incredible for the dApp world and you as a user.
How do dApps work?
Decentralized applications (dApps) are fairly complex when you delve under the hood.
So, we’re going to dissect the world of dApps and try to make it more understandable for the average consumer.
Quite simply put, dApps are just like regular apps, websites, and software.
The whole idea of dApps is to make them indistinguishable from regular apps, websites, and software.
This is to give a seamless experience and help make blockchain technology become more mainstream.
For example, Uniswap is a dApp, but it feels like a simple website with a crypto swap feature!
The biggest difference is that the data associated with the app is not stored on servers.
Instead, it’s all stored on a blockchain.
In the case of dApps, think of the blockchain as a giant database that’s hosted on millions of computers around the world.
If one computer goes offline, there are still plenty to keep the database online and live.
This removes a single point of failure and corruption.
Validators and miners then process transactions that you make within the dApp, updating ledgers and records.
The more validators and miners that are working, the harder the blockchain is to hack and the more secure it will be.
However, due to the fact that dApps are still fairly new, there are bugs in the code used to write them.
This has led to numerous hacks and exploits that cost a lot of people a fair chunk of change.
It’s safe to say that with the boom of DeFi, developers are constantly abusing the open-source nature of dApps.
Code is taken, colors are changed, text is changed and then the code is reuploaded under a new name.
This unchecked “forking” of code means that there could be massive bugs and exploits available in every dApp.
Moreover, a developer could knowingly place backdoors into their code, waiting for a sloppy project to fork the code.
The initial developer could then abuse and damage that dApp if they wish.
OpenZeppelin is ground zero for the distribution of dApp smart contracts, and this is where developers head to grab code for their new forks.
It’s not all doom and gloom, however.
Some developers could just borrow certain libraries or repositories needed to add in a specific feature.
With the proper code reviews, this can be done safely to enhance a dApp.
Anyone can create a dApp either with their own code or by borrowing bits from other projects.
More often than not, they’ll use a tool called Truffle to help with developing, testing and deploying dApps.
Truffle is a powerful development and deployment tool.
It can be used in all stages of the dApp development cycle, and it greatly speeds up the average time to market
It’s a fairly simple process and within a few seconds, the dApp will be live and ready to use.
Most dApps will have been thoroughly tested on one of the various blockchain testnets.
These testnets are public, which allows for a more realistic testing environment.
Ethereum has 3 public testnets, which are:
There was a 4th testnet called Morden, but it was heavily attacked, and a lot of junk data accumulated in the database.
This made it incredibly large and unsustainable.
As a result, it was shut down and replaced with Ropsten.
Once the dApp is ready to go, developers will push it live to the mainnet blockchain.
They do this by burning a bunch of tokens on the blockchain.
The process takes a couple of minutes, and after it’s done, the dApp will be live and ready to use.
So, to summarize, a dApp is a bunch of code all smashed together like a regular app, website, or software, but stored and run on a blockchain.
What are the benefits of dApps?
Decentralized applications (dApps) are incredible bits of code that will change the way we interact with the digital world.
There are so many features, perks, and advantages that dApps give us over traditional apps, websites and software.
So, let’s dive into the benefits of using a dApp over a traditional app, website, or software.
- High availability thanks to blockchain
- Open-source code allows for vetting and testing
- Low cost of ownership for developers
- Data stored on the blockchain is secure
- Unlimited potential
Many people perceive dApps to be better for their privacy, seeing as their data is stored on the blockchain.
This makes it much harder for companies and developers to sell your data on to 3rd parties.
That being said, if you opt to use dApps using traditional credential methods, such as email addresses and cell numbers, this data could still be harvested and sold.
So, play it safe when using a dApp and use a wallet like MetaMask.
What are the drawbacks of dApps?
The decentralized application (dApp) world is still young, and as a result, there are still some teething problems.
This means that there will be bugs, there will be outages and there will be issues with transactions.
But that’s true with anything in the early days.
So, to make sure that you’re fully aware of the dangers and downsides of dApps, let’s check them out!
- Smaller blockchains can be more centralized
- There’s a learning curve to be able to use dApps
- Limited in terms of data that can be stored and used
- Fees can make using dApps unfeasible
- Unaudited code leads to rug pulls and scams
There are lots of blockchains out there that have the power to run dApps.
But, some are not as popular as others, and this means there are less validators and miners.
This in turn leads to a certain amount of centralization and opens up the potential for a 51% attack.
This could potentially harm your investments and usage of dApps on that network.
So, it’s advised that you stick to dApps on bigger and more prominent blockchains, like Ethereum and Binance Smart Chain.
Most dApps also require you to use a wallet, remembering seed phrases and passwords.
This needs a bit of time to set up and wrap your head around, especially if you’re new.
But, our guide to crypto wallets will help you with that and get you on the right path.
Finally, a lot of dApps use code forked from other projects.
This means that they simply “borrow” the open-source code used by other projects and pop it in their dApp.
This speeds up the development process, but it also introduces security issues.
If the code isn’t audited and verified, developers could be adding major bugs to the dApp unknowingly.
So just be careful when using a new dApp that hasn’t been vetted by a reputable group.
Which blockchain has the most dApps?
When it comes to picking a blockchain to use for decentralized applications (dApps) there are lots to go with.
But, without a doubt Ethereum is the current dApp king.
It’s where the whole dApp movement started and it’s spawned a whole new type of blockchain technology.
Will Ethereum be the king in the future?
It’s unlikely, but anything can happen.
Cardano is promising the world, but it’s still not fully developed, so we’ll have to wait and see.
Tron also has a fair few dApps on it, but we all know that Tron is a cheap Chinese knock-off of Ethereum.
There are currently 2,538 dApps registered with State of the dApps, which is the best dApp tracking site.
Think of it like Coin Market Cap, but for dApps.
More than half of those dApps are running on Ethereum.
EOS has a couple hundred dApps running on it, with the others spread out amongst a bunch of “shitcoin” blockchains such as Hive, Klaytn, Obyte and Loom.
Which is the most popular dApp?
When it comes to measuring the popularity of a decentralized application (dApp), there are a lot of factors that you need to consider.
You can measure it by 7-day volume of funds sent to dApp contracts, unique daily active users sending funds to the dApp or developer activity.
Generally speaking, the 7-day volume is the best way to measure this, as it accounts for fads and sudden surges in traffic.
So, we’re going to use this metric going forwards – it makes more sense and is harder to manipulate.
CryptoPunks stands atop the pile.
CryptoPunks is a marketplace that allow you to buy and sell 8-bit characters.
These are NFTs, and as you probably know, NFTs are the hottest thing in the crypto world at the moment.
Some have sold for millions, which is impressive for 8-bit digital art.
OpenSea is next up, and it’s another big one.
OpenSea is a peer-to-peer marketplace for scare digital goods, such as NFTs and other collectibles.
More than $217 million has made its way to OpenSea in the past 7 days, so you can see just how popular it is.
Can I make my own dApp?
If you want to know how to make your own decentralized application (dApp), then we’ve got some bad news for you.
dApps require a high level of programming knowledge to be able to develop.
So, if you’re not a skilled developer with a good understanding of either React, Solidity or Vyper then it’s going to be an uphill battle.
You can’t just download code from OpenZeppelin and launch it as your own, it requires additional work.
So, if you want to launch your own dApp, you’ll either need to do a blockchain programming course or hire a developer.
There are lots of good developers out there that are fantastic with dApps, so don’t be afraid.
If you are going to pay someone to build you a dApp, remember that it’s going to cost a bit more than a regular app.
This is because of the additional checks, verification and testing that dApps need to go through.
However, once the dApp is live, you’ll save on running costs when compared to a regular app.
But, if you’re a fast learner or already have some programming skills, then there’s no reason as to why you cannot create your own dApp.
It all depends on you and your skills.
dApps are here to stay!
The possibilities of dApps are boundless, limited only by data size and creativity.
Games are slowly being developed as dApps, which gives developers more resources and potential for their projects.
As time goes on and we see more developers entering the dApp space, it will boom.
In the next 5-10 years, virtually all apps that we use in our day to day lives will be a dApp in one way or another – it’s the future.
While they may be slow, clunky, and subject to network abuse, dApps will overcome these hurdles.
Once Ethereum 2.0 goes live and we see gas fees calm down, Ethereum will shine bright as a haven for dApps.
It’s just a matter of time before it happens!