A common question I hear from customers is “What is a website and what is a web application?” or “What is the difference between a website and a web application?”. So I thought I’d take this opportunity to share my thoughts.
The most important point to highlight first of all is the difference between “The Internet” and “The Web”. Very simply, the Internet refers to a massive network of devices across the world that are connected and communicate with each other in some way or form. The Web on the other hand is one of the uses of the Internet.
For a better understanding think of the Internet as land. A piece of land can be used for multiple purposes like building a house, a corporate office, a theme park, a nature reserve and so on. In the same way, the Internet can be used for multiple purposes of which the Web is only one. Other examples are e-mail, transferring files (FTP), voice and video conversations (VOIP) to mention but a few.
The Web is made up firstly of a network of computers that are specifically designed to listen for devices requesting information and then serving that information to the device. Secondly, there are the devices requesting the information. These devices predominantly use Web browsers to request information from the Web server and upon receiving the response renders the information to the user in a readable format.
Now that we have a better understanding of the difference between the Internet and the Web, let’s get into the detail of the difference between Websites and Web Applications.
Upon it’s inception the Web was created, by the U.S. military, for the sole purpose of sharing information and to date this is still it’s greatest purpose. This information is represented by pages, or documents, made up of various types of content contained within tags, also known as HTML (Hyper Text Markup Language) elements. Each element provides information to the browser about how the content should be displayed. For example the tag “strong” will display the contents within the tag in bold. Group a number of these tags together, include text, tables, images, and more and the end result is a well formatted document such as one would find in popular word processors. Navigating from one document to the next is made possible through the use of hyperlinks, or just plain links. The links are simply pointers to other documents served by the web server.
The ability to delivery these documents via the internet to potentially millions of people opened a new world for organizations of all kinds. The marketing advantages of this medium are immediately and acutely evident and was adopted at an unbelievable rate.
So in essence a website is the online equivalent of a business brochure, or marketing material, made available via the internet in HTML formatted documents presented to users using web browsers.
HTML elements that I have not mentioned yet are the input type elements such as text input boxes, drop down lists, radio buttons, check boxes and the like. It is these elements that fueled the next stage in the evolution of the web. As I mentioned before, the document is delivered to the browser from a web server after the browser requests the document. Already we have the browser sending information to the web server telling the web server which document you require. So why not send more information to the server? Allow the user to input information into these new input elements and when the request is posted to the server, wrap the user’s input up inside the same request. It’s kind of like taking an existing envelope with a letter in it and putting extra letters inside it. If the server technology was redesigned to deal with data being sent to it, one could easily start to envisage an input/output type scenario and therefore the basis of any software application. The server could then take this information it receives and store it in databases, change it and send it back to the user.
So combining the original intentions of the web and adding user input elements resulted in a platform for standard software applications delivered via the web, aptly known as web applications.
A web application is a website that provides this kind of dynamic input/output service and can be as small as a feedback form or as advanced as an agricultural forecasting application involving many input screens and highly scientifically calculated reports forecasting production yield for years to come.
Hopefully I was able to relay my thoughts carefully without delving too much into the technical details. In the near future I will be writing about business processes that can potentially be web enabled providing your customer with a valuable service.