WEB 3.0 AND DAPPS DEVELOPMENT: WHAT ARE THEY AND WHY SHOULD YOU CARE?Everything you need to know about Web 3.0 and developing decentralized (blockchain) applications in one place.I am interested in web3.0
What will you learn?
- What is web3
- Web x.0 or web development in a nutshell
- Web 2.0 vs. web3
- How web 3.0 works
- Advantages and disadvantages of web 3.0
- What are dApps and how do they work
- Architecture of decentralized applications
- Developing web applications vs. creating dApps
Web3 and decentralised applications have generated a lot of buzz lately. Some see them as just another buzzword, while others see them as the future of the Internet and digital products.
Dive into the world of these modern technologies with us and see for yourself. We'll tell you everything you need to know about web3 technology and why you should think about developing dApps.
What is web 3.0?
Web 3.0 (sometimes also web3) is a decentralized network built on decentralized technologies. Its main goal is to transform the internet into a more democratic and secure place where no one will control traffic or censor information just because the web runs on its servers.
For example, the use of decentralised social networks cannot be conditional on consent to the processing of personal data, and everyone must follow the same rules, regardless of the user or corporation involved.
Web3 thus responds to the need for increased control over user data and privacy that has grown with the rise of social networking and other platforms typical of Web 2.0.
Despite the fact that Web3 is a relatively new concept and no one has yet defined a comprehensive solution for this technology, it symbolizes for many the future of the Internet. A future built on a new architecture, the next generation of web applications (dApps) and a business model independent of corporations.I am interested in web3.0
Web x.0 or web development in a nutshell
- the beginning of the Internet
- the first websites
- the prevalence of static websites
- content created mainly by programmers
- the Internet used mainly for content consumption
Web 2.0 vs. web3
The Web 2.0 architecture is built on the communication of the web browser with the web server, where the frontend, backend and database of the website or web application are located:
- The user enters a request through the browser.
- The browser delivers the request to the server using logs.
- The server processes the request.
- The server sends the result to the browser via logs.
The key elements are the server and the protocols - over which the user does not have 100% control. This is where web3 comes in, replacing the centralised, authority-dependent elements with decentralised ones.
Architecture web 2.0 - client-serverI am interested in web3.0
How web 3.0 works
Web architecture3 can be implemented in several ways. It is most commonly associated with the Ethereum blockchain today, and therefore all further content focuses on describing this model:
- The user connects to the frontend of the decentralized application via a private key stored in a crypto-wallet (e.g. Metamask).
- The frontend of the dApp connects to the provider (e.g. Metamask again).
- The provider communicates with smart contracts residing in the blockchain.
- The blockchain nodes verify the transaction.
- After successful verification, a new block is added to the blockchain.
So everyone controls the data that is added to the database and everyone has a copy of the database - a peer-to-peer architecture. Communication with the blockchain is funded by cryptocurrency tokens and ownership is held in NFT.
web 3.0 architectureI am interested in web3.0
Advantages and disadvantages of web3
The user has much more control over their data. In addition, the identity is protected through a private key.
Web3 is built on decentralization. No one can condition the use of dApps, censor content or break the rules.
The blockchain principle reduces the risk of cybercrime.
The value of tokens depends on the interest of users. If interest drops, so does the value.
Improved security and trustworthiness of the Internet and transactions is paid for by slower network and application response.
The absence of an authority that controls network traffic can lead to abuse of this freedom. There is therefore a risk of an increase in cases of harassment or hate speech.
What are dApps and how do they work?
Decentralized applications (abbreviated as dApps) look just like traditional web applications. The controls and focus of the individual tools remain the same.
However, the difference is in the architecture and the backend. The original client-server architecture is replaced by a peer-to-peer model, which stores data on decentralized storage (IPFS/SWARM) instead of on a centralized server.
The logic of the application itself is stored in Smart Contracts, which are located in the blockchain - hence the name blockchain application.
Data is written to the blockchain through transactions. The form of these transactions is defined by the aforementioned smart contracts, with the user paying cryptocurrency tokens for each transaction.
The blockchain makes dApps more secure, as its principle prevents the application from being overwritten or hacked. Similarly, no one can just shut down a dApp, as there is no central entity that can determine the direction of the app by itself.I am interested in web3.0
Architecture of dApps
- verifies user identity and payment
- signs transactions
- communicates with the frontend
- creates user requests
- communicates with smart contracts
- code residing in the blockchain
- interact with the user via transactions defined in the code
Ethereum Virtual Machine (EVM)
- executes the login defined in smart contracts
- handles all changes
Interest in web 3.0 and the development of dApps over time
Developing web applications vs. creating dApps
- frontend technologies for web applications: React, Angular, Vue.js, BootStrap, ...
- frontend technologies for developing dApps: same as for web applications
- backend technologies for web applications: Node.js, Gatsby, Next.js, PHP, ...
- backend technologies for developing dApps: Truffle, Brownie, Hardhat,
- web 2.0 and traditional web applications are controlled by authorities, so users may be blocked or censored
- the basic idea of the web3 and blockchain applications is the democratization of the Internet - all users should have equal rights
- the use of classic applications leaves a digital footprint - e.g. the internet provider sees the websites visited
- decentralized applications put user privacy first
- traditional web applications are built on a backend and frontend that are deployed on centralized servers
- dApps use decentralized elements and data is not stored on third-party servers
- corporations behind the development of web applications can abuse user data
- with dApps, user data, including identity, is in the hands of users
- web apps face MITM and other attacks
- dApps are built on a blockchain that prevents content tampering
Web 3.0 and dApps development: faq
What are decentralized applications?
Thus, at first glance, they are indistinguishable from traditional web applications and can have the same uses - such as task management applications.
Which programming languages are used to create dApps?
Solidity - a programming language designed for the creation of smart contracts, developed by Vitalik Buterin (the founder of the Ethereum blockchain).
Java - a language typical for the development of mobile applications can also be used to create smart contracts and develop dApps.
Simplicity - a language with a friendly syntax that makes coding easier and more efficient. It allows you to create smart contracts and other blockchain solutions not only for Bitcoin, but also for Ethereum.
Is Bitcoin a decentralized application?
Bitcoin is an open-source platform that allows its users to conduct transparent transactions without the supervision of any central authority. Thanks to this, Bitcoin can be called not only the first cryptocurrency in the world, but also a decentralized application.
Is it possible to make money on a dApp?
Just like traditional web applications or websites, dApps can be monetized using various monetization techniques. One of the most used options is the so-called crowdsale, which is based on crowdsale, that is, on finding investors and dividing costs.
The second option is fees for completed transactions. Thanks to this, you have a profit from using the application itself. However, well-established models such as payments in applications using cryptocurrencies can also be used.
What are examples of dApps?
Uniswap - decentralized exchange
Aave - Cryptocurrency Lending
Upland - a game that combines the Metaverse with the real world
Steemit - Blogging Platform and Social Network
OpenSea - an exchange for trading with NFTs
Audios - Music Streaming Platform
Do decentralized applications belong to websites?
dApps are the same as any other online product. It can be a website, a web app or a mobile app. The difference is that decentralized apps run on a decentralized foundation, like Ethereum.
Do dApps need a backend?
Decentralized applications, like traditional web projects, consist of two parts - backend and frontend. The difference is that currently most digital products run the backend on centralized servers. dApps use decentralized technologies, typically the Ethereum blockchain.
What are the advantages of decentralized applications?
Thanks to the fact that the backend of dApps runs on the blockchain, decentralized applications have a high level of security, maximum transparency and much higher control over user data.
There is no central authority that can limit or control the data transferred and the blockchain ensures the operation of the application without downtime.
What are dApps for?
Decentralized applications can be used for the same purposes as centralized web applications. It can be an information website, a company website, an e-shop, a streaming platform, a game, a payment portal, and the like.
What is the difference between an application and a decentralized application?
The difference between a web app and a decentralized app lies in their architecture. While web apps use centralized servers and databases, dApps only use decentralized platforms.
The advantage of centralized web applications is faster operation. The advantage of dApps is greater transparency, freedom and independence from authorities.