The Evolution of Word Wide Web – WWW

Introduction

World Wide Web (WWW) is the system of interlinked hypertext documents containing text, images, audio, videos, animation and more. User can view and navigate through these documents using hyperlinks or navigation elements which have references to another document or to the section of the same document. In a broader sense “The World Wide Web is the universe of network-accessible information, an embodiment of human knowledge.”

History of World Wide Web

WWW was first proposed in 1990 by Tim Berners-Lee and Robert Cailliau while working at the CERN, the European Council for Nuclear Research. Both of them came out with their individual proposal for Hypertext systems and later on they united and offered joint proposal. The term “Word Wide Web” was first introduced in that joint proposal. The history of every invention has lot of pre-history. Similarly the World Wide Web has also lot of pre-historical gradual development of hypertext system and internet protocols which made the WWW possible. The gradual development started in the early 1945, with the development of Memex, a device based on microfilms for storing huge amount of documents and facilitating organizing those documents. Later in 1968 “Hypertext” was introduced, which made linking and organization of documents fairly easy. In 1972 DARPA (Defense Advance Research Project Agency), started project that connect all research centers to facilitate data exchange which later adopted for military information exchange. In 1979 SGML (Standard Generalized Markup Language) was invented to enable sharing of documents for large government project by separating content from the presentation and thereby enabling same document to be rendered in different ways. In 1989 Tim Berners-lee came out with Networked Hypertext system form CERN Laboratory. In 1990, joint proposal for hyper text system was presented and the term “World Wide Web” first introduced. In 1992 first portable browser was released by CERN, and that had picked up industry interest in internet development. Today web is so much popularized and has grown to be so invaded in to our lives; it becomes almost impossible to imagine the World without web.

Web Evolution – What and How?

Each technology has certain distinguished characteristics and features. Similarly web has certain features such as data, services, mess-up, APIs, social platform and more. These features are continuously and progressively evolving in distinct stages with qualitative improvements over the existing. Web evolution is categorized and hyped with some fancy marketing terms like “Web 1.0”, “Web 2.0”, “Social Web”, “Web 3.0”, “Pragmatic Semantic Web”, “Pragmatic Web” and many more.

Yihong Ding, PHD candidate at Brigham Young University, in his article on “Evolution of Web” explained the development of Web by analogically comparing it with the human growth. Yihong Ding stated “The relationship between web pages and their webmasters is similar to the relationship between children and their parents. As well as parents raise their children, webmasters maintain and update their web pages. Human children have their normal stages of development, such as the newborn stage, pre-school stage, elementary-school stage, teenage stage, and so on. Analogically, web has its generations, such as Web 1.0, Web 2.0, and so on.”

Along with technological advancement web design also changed over the period of time. Initial design was simple hypertext read only system which allowed users to read the information. User was just a viewer of what is presented on the web. Gradually images and tables added with evolution of HTML and web browsers, which allowed making better design. Development of photo-editing tools, web authoring tools and content management tools enabled designer to begin creating visually appealing website design layouts. In the next phase of development, web design changed with the change in usability and the focus is diverted on the users rather than the content of the website. User interaction and social touch is applied to the web design. Now user is not just a viewer. User can drive the web with feedback, information sharing, rating and personalization. Gradually we got the mature blend of function, form, content and interaction, called Read/Write Web. Continuing this evolution, meaning is added to the information presented on the web so that online virtual representatives of human can able to read and interprets the presented information. This kind of web where user agent imitating human behavior, can read and understand the information using artificial intelligence is called semantic web.

Web 1. 0 (Read Only Web)

World Wide Web is evolved in stages. First stage was the basic “Read Only” hypertext system also termed as Web 1.0 since the hype of Web 2.0. In fact in the original proposed web model, Tim Berners-Lee envisioned web as the Read/Write Model with HTTP PUT and HTTP DELETE method. These methods were almost never used just because of security reasons.

Some of the Characteristics of Web 1.0

1. In Web 1.0 web master is constantly engaged with responsibility of managing the content and keeps user updating. Majority of hyperlinks to the contents are manually assigned by the web master.

2. Web 1.0 does not support mass-publishing. The content on the website is published by the web master and thereby does not leverage the collective intelligence of users.

3. Web 1.0 uses basic hyper text mark up language for publishing content on the internet.

4. Web 1.0 pages do not support machine readable content. Only human who are web readers can understand the content.

5. Web 1.0 provides contact information (email, phone number, fax or address) for communication. Users have to use the off-line world for further communication with this contact information.

6. In Web 1.0, web pages are designed to react instinctively based on the programmed condition. Specific result or response is generated when the programmed condition is satisfied. Web 1.0 model does not understand remote request and can not prepare response for potential request in advance. To clearly understand above characteristics of web 1.0, Yihong Ding in his article on “Evolution of World Wide Web” has analogically correlated World of Web 1.0 with the world of a Newborn baby.

Newborn Baby : I have parents

Web-1.0 Page : Webmasters

Newborn Baby : Watch me, but I won’t explain

Web-1.0 Page : Humans understand, machines don’t

Newborn Baby : Talk to my parents if you want to discuss about me

Web-1.0 Page : Contact information (email, phone number, fax, address, …)

Newborn Baby : My parents decide who my friends are. Actually, I don’t care

Web-1.0 Page : Manually specified web links

Newborn Baby : Hug me, I smile; hit me, I cry (conditional reflex)

Web-1.0 Page : Reactive functions on web pages

Source: Analogy from the Article by Yihong Ding from http://www.deg.byu.edu/ding/WebEvolution/evolution-review.html#w1:1 “The web 1.0 pages are only babies.

Web 2. 0 (Read Write Web)

“Web 2.0 is the understanding that the network is the platform and on the network is platform roles for the business is different. And the cardinal role is user adds value. And figuring out how to built database and things to get better so that more people use that and it’s the secret of web 2.0.

Web 2.0 is the business revolution in the computer industry caused by the move to the internet as platform, and an attempt to understand the rules for success on that new platform.”[4]

In Web 2.0 the idea of Consumer (Users) and Producer (Web Master) is dissolving. Web 2.o is more about communications and user interactions. Web 2.0 is all about participation. “Content is the King” often cited quote during early web 1.0 days, is now turned in to “User is the King” in Web 2.0. In web 2.0 users communicates through blogging, wikis and social networking websites. Everything on the web is tagged, to facilitate easy and quick navigation. Web 2.0 is also about combining it all in one single page by means of tagging and AJAX with better usability via lots of white space, and a cleaner layout. The API ability makes it possible for programmers to mash up data feeds and databases to cross reference information from multiple sources in one page. In contrast with web 1.0, web 2.0 has collective intelligence of millions of users.

Web 2.0 is all about improved version of World Wide Web with changing role and evolving business model where users learned to communicate with the other users instead of just communicating with the publisher of the content.

Some of the Characteristics of Web 2.0

1. Web 2.0 is the second version of Web providing RIA (Rich Internet Application) by bringing in the desktop experience such as “Drag and Drop” on the webpage in browser.

2. SOA (Service Oriented Architecture) is the key piece in Web 2.0. Buzzwords around SOA are Feeds, RSS, web services and mash up, which defines how Web 2.0 application exposes functionality so that other applications can leverage and integrate those functionalities providing much richer set of applications.

3. Web 2.0 is the Social web. Web 2.0 Application tends to interact much more with the end user. End users are not only the users of the application but also the participants whether by tagging the content, whether he is contributing to the wiki or doing podcast for blogging. Due to the Social nature of application end user is the interval part of the data for the application, proving feedbacks and allowing application to leverage that user going to use it.

4. In Web 2.0 philosophy and strategy is that “The Web is open”. Content is available to be moved and changed by any user. Web site content is not controlled by the people who made the web site but by the user who are using the web site.

5. In Web 2.0 Data is the driving force. Users are spending much more time online and started generating content in their passive time. Web 2.0 requires some of the key technologies to be used in the development of web pages. One of the important technologies is the AJAX which supports development of rich user experience.

6. Web 2.0 websites typically include some of the following key technologies.

– RSS (Really Simple Syndication), which allows users to syndicate, aggregate and to set up the notification of the data using feeds.

– Mashups, which makes it possible to merge the content from different sources, allowing new form of reusing of the information via public interface or APIs.

– Wikis and Forums to support user generated content.

– Tagging, which allows users to specify and attach human readable keyword to web resource.

– AJAX – Asynchronous Java Script and XML, which is the web development technique, allowing exchange of interactive data behind the scene without reloading the web page.

To clearly understand above characteristics of web 2.0, Yihong Ding in his article on “Evolution of World Wide Web” has analogically correlated World of Web 2.0 with the world of a Pre-School Kid.

Pre-School Kid : I have parents

Web-2.0 Page : Webmasters (blog owners)

Pre-School Kid : Parents teach me knowledge (though often not well organized)

Web-2.0 Page : Tagging

Pre-School Kid : I understand but maybe imprecise and incorrect

Web-2.0 Page : Folksonomy

Pre-School Kid : I can deliver and distribute messages, especially for my parents

Web-2.0 Page : Blogging technology

Pre-School Kid : Who my friends are is primarily determined by my parents’ social activities and their teaching

Web-2.0 Page : Social network

Pre-School Kid : Multiple of us can be coordinated to do something beyond individual’s capabilities

Web-2.0 Page : Web widget, mashup

Pre-School Kid : I can do suggestion based on my communication with friends

Web-2.0 Page : Collective intelligence

Following table distinguish the difference between Web 1.0 and Web 2.0

Web 1.0 is about : Reading

Web 2.0 is about : Reading /Writing

Web 1.0 is about : Publishing

Web 2.0 is about : Feedbacks, Reviews, Personalization

Web 1.0 is about : Linking Content using Hyperlinks

Web 2.0 is about : mashup

Web 1.0 is about : Companies

Web 2.0 is about : CommunityCommunity

Web 1.0 is about : Client-Server

Web 2.0 is about : Peer to Peer

Web 1.0 is about : HTML

Web 2.0 is about : XML

Web 1.0 is about : Home Pages

Web 2.0 is about : Blogs and Wikis

Web 1.0 is about : Portals

Web 2.0 is about : RSS

Web 1.0 is about : Taxonomy

Web 2.0 is about : Tags

Web 1.0 is about : Owning

Web 2.0 is about : Sharing

Web 1.0 is about : Web form

Web 2.0 is about : Web Application

Web 1.0 is about : Hardware Cost

Web 2.0 is about : Bandwidth Cost

Web 3. 0 (Semantic Web)

Web is no longer linking and tagging of information and resources. With the advent of semantic web concept, special information is attached to the resources or information so that machine can understand and read just like human.

Timer Berner Lee envisioned

“I have a dream for the Web [in which computers] become capable of analyzing all the data on the Web – the content, links, and transactions between people and computers. A ‘Semantic Web’, which should make this possible, has yet to emerge, but when it does, the day-to-day mechanisms of trade, bureaucracy and our daily lives will be handled by machines talking to machines. The ‘intelligent agents’ people have touted for ages will finally materialize.”

Semantic Web has derived from his vision of web as the universal medium for exchange of data, information and knowledge. Web 3.0 or Semantic Web is an Executable Phase of Web Development where dynamic applications provides interactive services and facilitates machine to machine interaction. Tim Berner Lee has further stated

“People keep asking what Web 3.0 is. I think maybe when you’ve got an overlay of scalable vector graphics – everything rippling and folding and looking misty – on Web 2.0 and access to a semantic Web integrated across a huge space of data, you’ll have access to an unbelievable data resource.” Semantic web is the an extension of World Wide Web in which web content is expressed in machine readable language, not just in nature language, so that user agents can read, process and understand the content using artificial intelligence imitating human behavior. In other words Semantic Web is an extension of the web where content expressed can be processed independently by intelligent software agents.

There can be several agents one can program within the context of vocabulary of the vertical domain.

For example

“Travel Agent”, who keep searching chipset air tickets based on your criteria and notify you when it gets the perfect one.

“Personal Shopper Agent”, who keeps looking for the specific product on the eBay and get it for you once it finds the one that match with all of your criterions.

Similarly we can have “Real Estate Agent”, “Personal Financial Advisor Agent” and many more.

All user is doing is just creating their personal agent which talks with the web services which are exposed publicly and there by taking care of lots of repetitive tasks.

Precisely Web 3.0 = Every human + Every device + Every Information

Characteristics of Semantic Web

1. Unlike database driven websites, In Semantic Web database is not centralized.

2. Semantic Web is the Open System where schema is not fixed as it may take any arbitrary source of data.

3. Semantic Web requires using Meta description languages such as Web Ontology Language and the Resource Description Framework (RDF). Annotation requires lot of time and effort.

Web n.0 – a Glimpse of the Future

Let me add one more element to the previous formula

Web 3.0 = Every human + Every device + Every Information = Everything in the context of current technology advancement.

Web 3.0 is still evolving and it is going to encompass everything. One can not envision anything beyond web 3.0 in the current technology advancement.

Breaking all current technological capabilities Raymond Kurzweil, the inventor of OCR (Optical Character Reader) envisioned Web 4.0 as the Web OS with intelligent user agents acting parallel to human brain. Following figure illustrate the evolution of Web along with technology advancement and the semantics of social connections. Source: Nova Spivack and Radar Networks

Conclusion

The evolution of web has gone through phases as mentioned in this article and that has introduced numerous technologies and concepts in various areas; software, communication, hardware, marketing, advertising, content sharing, publicity, finance and many more.

In a way the World Wide Web has changed the way people were used to look at things earlier. I believe this evolution is never ending and moving towards excellence.

References:

Do You Need to Know Everything About Hybrid App Development?

Hybrid mobile applications are like any other applications you will see on your mobile. They get easily installed on your mobile device. You can look for these apps in the App stores. By using these apps, you can engage your friends via social media, play games, track your health, take photos and much more.

Hybrid mobile applications are developed using a combination of web technologies like CSS, HTML, and JS as same as websites on the internet. The major difference is that hybrid applications are hosted inside a native app which further uses a mobile platform’s WebView. Here, WebView is a chromeless browser window which is typically configured to run fullscreen.

In fact, hybrid mobile apps enable you to access various device capabilities viz. camera, accelerometer, contacts, and much more. However, inside mobile browsers don’t allow you to access these capabilities from it. Furthermore, hybrid mobile applications include native UI elements in those situations where it is necessarily required, as proved by Basecamp’s approach towards hybrid mobile application development.

It is not easy to answer the question how a mobile app is built. Similarly, hybrid mobile apps are no different. A well-written hybrid application should not behave or look any different than its native equivalent. However, users don’t care about it as they only want an app that works well. It is what actually matters to them. If you are trying to figure out whether a mobile application is hybrid or native, it would be like you are trying to differentiate rare grape varieties of wine.

Unless you are the one who really cares about this, it is not terribly important. What all matters are how your hybrid mobile application development is going to work in the long run as no one will care about how it was built. A hybrid mobile application is said to be good if it performs well for its users.

How are hybrid mobile applications built?

Like other websites are built, hybrid mobile apps follow the same manner. Both are built with a combination of technologies like CSS, HTML, and JS. Generally, a hybrid app targets a Web View which is hosted inside a native container rather than targeting a mobile browser. This allows its users to access various hardware capabilities of the mobile device.

Many hybrid mobile apps today leverage Apache Cordova, a simple platform that consists of a set of JavaScript APIs for accessing mobile device capabilities through plug-ins that are built with native code. These plug-ins include APIs in order to access the device capabilities like contacts, accelerometer, camera, and more. In fact, a huge number of plugins are built and maintained by mobile app developers community-at-large which is can be found in the Apache Cordova Plugins Registry. A group of plugins that have been properly tested, documented, and extended can be found at the Telerik Verified Plugins Marketplace.

If we talk about Apache Cordova, it was actually started as a project named PhoneGap. But nowadays, PhoneGap is considered as a distribution of Apache Cordova which includes additional tools. To know more about its history, you can check out Cordova, PhoneGap and what’s in a name?

Various application assets like CSS, HTML, JS are packaged via tooling through Apache Cordova for targeting platform SDKs. Once a hybrid app is built, it can be run just like any other app on the mobile device. Apache Cordova provides the tooling that is highly driven by a command line interface. However, mobile app developers can still leverage IDEs such as Visual Studio and effective solutions like the Telerik Platform to further increase productivity.

Since mobile app developers don’t want to be getting locked into proprietary platforms, so hybrid mobile apps give a way to mobile app developers for re-using their existing skills in web development. This mainly includes SDKs provided by platform vendors and the programming languages.

Hybrid mobile app development somehow looks appealing to a company’s bottom line such as Why hire a developer for each platform when you can hire one developer and target all of them through CSS, HTML, and JavaScript? But, the reality is actually a bit more complicated to accept.

Obviously, it’s true that mobile app developers become able to target multiple platforms with hybrid mobile app development. But when it comes to WebView or web runtime, each platform comes with a set of caveats. This is more true for Android and not consistent between OS versions.

Furthermore, there must be some unique capabilities of platforms to which a mobile app developer may wish to target. In such cases, a combination of platform-specific code and plugins must be utilized which will take advantages of those capabilities. Optionally, mobile app developers can take advantage of 3rd party web runtimes such as Crosswalk which can be further embedded into your hybrid applications.

When should you build a hybrid mobile application?

It is the foremost concern of every mobile app developer who wants to build a hybrid mobile app. The first thing you should do is to check your mobile application’s requirements. Before committing to a platform strategy must evaluate the technical merits as well as non-technical merits of hybrid mobile apps over the web and native mobile apps. You should first consider the following questions before developing a hybrid app:

– What are the technical abilities of your mobile development team?
– Which mobile app platforms do you wish to target?
– Are you looking to use the multiple capabilities of the mobile device?
– Do you want to distribute your apps through the app stores?
– Does the hybrid approach really live up to its promise in the coming years?

The above questions are needed to be answered properly before the development of mobile apps. You may further evaluate more questions in detail.

WHICH MOBILE APP PLATFORMS DO YOU WISH TO TARGET?

You may have a number of choices if you want to target more than one platform. This is because the web offers a highly interactive solution for this purpose. However, the mobile browser is your target. HYbrid apps lend itself to this due to its reliance upon the WebView.

On the other hand, Native apps find a unique space among this. In fact, you are essentially coupled to this platform if you rely upon platform-specific programming languages and vendor SDKs. For this case, Objective-C or Swift is used for iOS, Java is used for Android and C# is used for Windows phone.

DO YOU WANT TO DISTRIBUTE YOUR MOBILE APP VIA APP STORES?

If you want to distribute your app via an app store, you must build a native or hybrid app. You can not distribute sites through app stores. Hence, browser’s address bar is provided for this. Despite this limitation, whether you build a hybrid or native app, it is strongly recommended that you must have a website available for your mobile app. You need to create this because this will be the first place your app users might expect to go in case if they stuck with any problem.

ARE YOU LOOKING TO USE THE CAPABILITIES OF THE MOBILE DEVICE?

As compared to native and hybrid apps, websites have a limited set of abilities. These limitations are put up by a browser that effectively sandboxing it from mobile OS. A lot more device capabilities are exposed through HTML5 with the help recent developments with mobile browsers which include geolocation, camera, and others.

In spite of these advancements, support for advanced functionality is still limited. For an instance, streaming and media capture are still unsupported in various mobile browsers. Due to these limitations with mobile browsers, there are many mobile app developers who are compelled to evaluate native and hybrid apps as alternatives. These platforms enable mobile app developers to access device APIs. While in case of hybrid apps, plugins support this capability.

It is often said that native app development is best suited for apps where graphics performance is paramount. The best example is the mobile games which completely rely on complex visual interactions on the screen. No matter, how wonderful game app you have developed for your users and how flawlessly it operates from a functional perspective, you can expect this game app to have a very low app store rating if it is lacking energy. Due to these reasons, mobile app developers have long argued for using a hybrid approach to build their game applications.

However, there exist a number of solutions for hybrid mobile apps. This includes WebGL and HTML5 Canvas that are well-suited to build game applications. In fact, these technologies are most preferred and approachable for mobile app developers due to the presence of libraries like EaselJS, Paper.js, and others. This is not limited to game development only. Developers build more traditional, line-of-business apps by using frameworks like Kendo UI and Famo.us.

WHAT ARE THE TECHNICAL ABILITIES OF YOUR APP DEVELOPMENT TEAM?

The team’s technical abilities is another major factor when it is about to evaluate development options for mobile. To build native applications, you need to hire developers who are proficient and experienced with the programming languages of every platform that you wish to target and platform SDKs. But for building web and hybrid apps, you need to hire developers who use web technologies like CSS, HTML, and JS. You may also have a team that can target more than one platform with a single set of technologies. So, this is a worth considering when you have to evaluate your opinions.

DOES THE HYBRID APPROACH REALLY LIVE UP TO ITS PROMISE?

Lastly, it is important to know that hybrid is not the be-all and end-all approach for mobile app development. At the initiation of this article, I have thrown light upon the challenges of overcoming the inconsistencies between WebViews. While other challenges still remain. With hybrid app development, you can target the various features of a mobile platform in order to discover if they are inaccessible. This is because plugins used for them can be unreliable, out-dated or missing altogether. This takes you to the dilemma whether to remove an application feature or to write the plug-in by yourself.

You may find hybrid app development model restricted when you have to develop an app that requires numerous native features or an app where performance is critically required for the success of the app. With this situation, you may found yourself to forcefully choose native development technologies. However, these are considered as alternative approaches which let you build performant native apps without having core knowledge of tools like Android Studio and Xcode.

Furthermore, the JavaScript-based NativeScript framework allows developers to build Android and iOS apps that forego the WebView for interactive and enhanced performance. NativeScript provides 100% access to Android APIs and iOS, removing the reliance on plugins which prove limitations while developing hybrid apps. But it is also not the be-all-end-all approach for developing native applications. However, this approach to application development is powerful which become more powerful with a higher learning curve. With NativeScript, you would not be using HTML to build UI. So, NativeScript is seriously considered by app developers if they have to develop an application with non-trivial performance requirements

Mobile Web App Development Platforms

The problem with mobile app development is that most companies are building from the ground up because the present development systems in the marketplace do not provide adequate flexibility in design and as a result, fall below webmaster design standards. The drawback is the intense time and skilled knowledge needed to write the correct code to complete an efficient operation from scratch which crosses all platforms with ease. Time required in writing that amount of code is prohibitive for many web design companies. Web developers see the huge benefit of a “code free” platform environment which allows the less skilled code writers to complete an app for the company’s clients. Normally, custom features require detailed programming in order to work properly on all different types of mobile devices.

Many web developers are adding the mobile web services for their customers, but as a result, many are creating their own cookie cutter platforms. These platforms are limited in their branding capabilities. What that does is dramatically limit what the end client will receive in relation to branding. Find a platform which allows a simple ability to design in a custom manner with adequate branding capabilities and custom layout implementation within the environment. Most platforms for mobile web apps are limited and very restricted in design capabilities. Templates are offered to create cookie-cutter type apps for different types businesses with limited flexibility for customization within their own development platform. Find the most flexible platform to satisfy the branding needs of your clients

Mobile Web App Development Platforms are proprietary software that is housed on proprietary servers to protect the copy-written platforms. Customization capabilities of code free features and applications within the development platform itself are critical for branding purposes. This allows a webmaster to fine-tune that platform to produce a one of a kind mobile web app for the customer.
The industry currently seems to use the “Mobile Friendly” conversion when a mobile device is attempting to make a connection with the main website. In today’s world, this is inadequate due to the fact that the conversions do not allow the layout to be easily viewed by users and many systems do not seem to convert things in the proper format for that particular mobile device. Good platforms provide a seamless, user-friendly experience without glitches, without hang-ups, and without improper layout. These systems allow the mobile web app to be comparable to just about every advantage a native app may possess. Native Apps are downloaded from the App Store for Google Play or one of the other services that requires downloading a program onto your mobile device. This differs from a mobile web app which is seamless displays on over 5000 different mobile device devices in the world, without a download. With the advent of 4G technology, mobile internet access is available 24/7 from just about anywhere in the world. Users are able to go to a main website and it will convert to a mobile web app knowing that you are on a one of over 5000 different types of mobile phones or tablets and other mobile devices.. If a customer is on a desktop or laptop when attempting to connect to the main website, the normal website will display.

Pricing is all over the spectrum. The cost of service ranges from less than $4.00+ per mobile web app per month up to over $120/mo. That is the market rate for various platforms. The amount of platform flexibility, user-friendly development tools, and service/training provided will dictate what webmasters and in-house “do-it-yourself” individuals will actually use to develop mobile web apps and mobile websites for themselves and their customers.

James Alan Hughbanks