Introduction to D-Apps. Part #0

Various stages of the World Wide Web.

Ravi Vats
CryptoDigest
4 min readApr 4, 2018

--

If you have lived through the early 2000s, you remember seeing static webpages built out of plain HTML and CSS. Those were the times when to highlight a particular section of text, developers used the Italic or Bold tags, created headings using heading tags, and the coolest stuff you could do was to slide text to from one corner of the webpage to the other using <marquee> tag. These webpages loaded fully when switching between two webpages, or, refreshing a single webpage. That era is the 1st stage of World Wide Web known as WEB 1.0, and it underwent many changes through mid 2000s, a proof of which was <marquee> tag being deprecated in HTML5. The USP of WEB 1.0 was the use of hyperlinks, which allowed people to move from one webpage to another and a group of webpages under a domain, collectively being called a website.

Some characteristics of WEB 1.0:

1. Static webpages which weren’t interactive.

2. Use of hyperlinks to move from one page to another.

3. Websites essentially being used as an information portal.

Then came WEB 2.0, and it brought with itself dynamic webpages coded with JS scripts that were interactive. These websites loaded partially, to account for the essential changes needed to display new content requested by the user. These websites collected more user data instead of giving out information. To store this data persistently, these websites used structured and non-structured databases like MySQL and MongoDB.

Examples of such websites are:

a.) E-commerce sites, i.e. Amazon, E-Bay.

b.) Social media networks, i.e. Facebook, Twitter.

c.) Video/Audio Streaming services, i.e Netflix, Hotstar.

The webpages now are serving as live feeds of content published by other users, shaping up online communities, streaming live and non-live video and audio to users. Number of frameworks, and, technical stacks are used in developing such websites. This 2nd stage of World Wide Web began in mid 2000s and continues till date.

Some characteristics of WEB 2.0:

1. Websites are now dynamic and interactive.

2. Websites use databases to persistently store data in an organized manner.

3. Websites are now essentially being used as shopping carts, live feeds, audio/video streaming services with richer user experience(cleaner UI, faster load time due to partial loading of changes).

4. No. of frameworks like Angular, React and technical stacks like MEAN, LAMP came out to facilitate faster build of cleaner, robust websites.

Starting from late 2015, the recent development in new technologies like AI, Machine Learning, Deep Learning , Natural Language Processing, Blockchain has paved a path for stage 3 of World Wide Web, WEB 3.0, which would typically involve web/mobile apps which take intelligent decisions or give out precise suggestions based on the immense amount of data they have about users. This era could also see a surge in decentralized applications (also called D-Apps) which would distribute the immense amount of user data between all the users ensuring that too much data isn’t accumulated by individual people/firms/authorities (as data is the new most important resource) and the possibility of leakage or corruption of data is almost negligible.

Netflix.com is a website which started out in WEB 2.0, but with its new hyper-customization features for users, it could very well result in being a nice WEB 3.0 web/mobile app example. (Image Source: Netflix Blog)

Some sought-off characteristics of WEB 3.0:

1. Web/Mobile apps would be able to predict and proactively respond to user requirements based on huge amounts of user data and sophisticated ML/DL models running on top of them.

2. WEB 3.0 should be capable of encapsulating all IoT devices such as Voice Assistants like Alexa bringing in Voice searches.

3. Web/Mobile apps could now be decentralized, to make them more secure from attacks and prevent individual person/group/firm to have access to large amounts of data.

In this series, we would look at the basics of blockchain, the thing which powers decentralized applications and then walk through the basic definition of D-Apps, one of the big pillars on which WEB 3.0 rests. We would finally look at setup and the code needed to build our very own anonymous complaint registering D-App made using Solidity and JavaScript.

I am Ravi, a senior year CS Undergrad at MSRIT, Bangalore interested about ML, Deep Learning, Data Science, Algorithms and Blockchain in general but pretty much still a beginner in all these fields.

You can connect with me on my LinkedIn profile.

Alternatively, I am also available on Twitter, Facebook, Instagram and Quora.

The source code for the later parts in this series would be uploaded on this GitHub repository.

Hope you find this series interesting. I am always open to any edits or suggestions to enhance the info provided in this series.

Cheers to learning! :)

--

--

Ravi Vats
CryptoDigest

CS Grad | Interested in all things tech (i.e. Algorithms, Concurrent Systems, System Design, ML, DL etc.)