In this article we will analyze the power and impact the web has over our lives. We will describe the key technologies that sustain the Web and in conclusion discuss the emerging trends and new directions of Web related research and development.
Some ways we use the Web in our daily life:
- Send / receive e-mail, documents, pictures, music, video
- Get news - newspapers, newsgroups
- Buy / sell - almost anything
- Travel arrangements - airlines, hotels
- Fill prescriptions
- Banking - pay bills
- Play Games
History of the Internet
To understand the growth of the web it is useful to study the history of the internet, especially in terms of the societal causes and their technological effects. Nowadays, we use the terms the Internet and the Web interchangeably. But the Internet predates the Web by several decades.
We can divide the history of the Internet into three phases. In the first phase there was the development of the infrastructure of the Internet. This included the construction of the network of cables and routers and the establishment of protocols for the transmission of data across the network. In the second phase, there was a tremendous growth in the number of applications that made it easy to send, receive, and search for information. The second phase culminated in the creation of the World Wide Web and software (browsers) that allowed easy access to the Web. The third phase began with the commercialization of the Web and the continued improvement in the hardware infrastructure and the supporting software.
The key concept of transmitting data across a network is embodied in the packet switching theory. In essence, to send a document over the internet - the document is split into packets, labeled, and then sent with other packets from other documents through routers. Each router examines the destination code and decides which router to send the packet to next. There are many alternative routes for a packet and packets from the same document need not take the same path to reach the destination. At the destination end the packets are assembled together to reconstruct the document. There is no dedicated path to transmit data instead there is a redundancy of paths which safeguards the network from a single point of failure.
In the mid to late 80's most computers in universities and research labs in the US and Western Europe were on the internet. One could remotely login to computers using telnet or retrieve files from public servers through ftp. Several useful software infrastructure were developed to make access to the internet easier. Archie was a system that archived indexes of files available on public servers and which could be queried. A similar service was provided by Wais that allowed a user to find an article based on what it contained. This was a precursor of our search engines like Google. Another search tool that hit the scene was Gopher. Gopher was menu driven and retrieved and displayed text files.
The person most responsible for the World Wide Web is Tim Berners-Lee who was then working at CERN. He envisioned a global hypertext space where documents could be identified by a unique identifier (URL) and documents could link to other documents in this space using that identifier. Hypertext Markup Language (HTML) was developed that allowed these links to be embedded within documents. To read these documents and follow the links special software were developed. In 1993 Mosaic and Lynx were introduced to the internet community. Mosaic allowed graphical rendition of web pages whereas Lynx only rendered text. The following year saw the beginning of large scale commercialization of the web.
Brief Time Line of the History of the Web
- 1957: USSR launched the Sputnik and in response the USA created the Advanced Research Projects Agency (ARPA) to establish a lead in US science and technology.
- 1961: Leonard Kleinrock published the first paper on packet switching theory.
- 1969: Advanced Research Projects (ARPA) created the first version of the Internet. It connected four computers - UCLA, UC Santa Barbara, University of Utah, and Standford Research Institute.
- 1971: e-mail program invented
- 1972: First e-mail on ARPANET @ character used
- 1973: First international connections to ARPANET (Norway and UK)
- 1977: Apple II desktop computer introduced
- 1978: TCP/IP formalized
- 1980: First major virus brings ARPANET to its knees
- 1981: BITNET (Because It's Time or Because It's There Network) was a network of educational sites separate from the Internet, but e-mail was freely exchanged between BITNET and the Internet. Listservs, the most popular form of e-mail discussion groups originated on BITNET. BITNET machines were usually IBM mainframes running the VMS operating system.
- 1983: Domain names invented
- 1984: ARPANET connected around 1000 hosts but it required sponsorship of the US government.
- 1985: First .com and .edu domains registered
- 1986: NSFnet was established through funding from NSF.
- 1989: First commercial e-mail
- 1990: NSFnet became the predominant network of computers. World Wide Web invented
- 1992: Coordination of NSFnet was turned over to an international organization Internet Society (ISOC).
- 1993: Mosaic Web browser
- 1994: First major e-mail spam
- 1996: Netscape 2 and 3, Explorer 3
- 1997: Netscape 4, Explorer 4
- 1998: W3C standards for Web
Web as a Source of Information
The web is like an online library and more. It is a great source of information as well as disinformation. Newspapers, journals, and books can be accessed online. You can do your research on the web without actually visiting a library. For that you need to learn how to use search engines effectively. Since most web pages are not reviewed, it is your responsibility to check the credibility of the author and the veracity of the information. Here are some sources of information:
Web as a Means of Communication
Even before the Web, the Internet was a medium of communication. We had e-mail and newsgroups. But users were usually connected to universities or research laboratories. Now e-mail is accessible to all and is free and so is membership to newsgroups. What the Web has done is create global communities that are interest based. Not only can we send text over the Internet, we can send audio (Voice Over IP) or pictures (video conferencing).
E-mail: Most e-mail accounts are free. Hotmail and Yahoo were two primary providers of e-mail. Now Google is offering this service. Most internet providers also offer e-mail accounts that comes with the internet subscription. E-mail has given rise to new symbols like
Emoticons like :-)
Acronyms like LOL for Laughing Out Loud
Text Shortcuts like CU (see you) or L8R (later)
Dictonary of Net Related Terms
Mailing Lists are discussion lists where the content of the discussion is e-mailed to the recipients. There are several programs that allow one to maintain a mailing list like Majordomo or LISTSERV. One usually subscribes to a mailing list to join the discussion.
Newsgroups are the electronic version of community bulletin boards. This allows users to post and read messages. You will need a client program to read and post messages to a newsgroup.
Weblogs (Blogs) are personal journal articles that people post. The easiest way to create a blog is to use a blog service that provides a template for creating a blog and also host it on the Web.
Wikis are documents that people collaborate on and post. One of the most ambitious project is a community encyclopedia known as the Wikipedia.
Internet Chat: Even before the Web people could chat with others over the internet. The Web has made that easier by providing a graphical interface.
Instant Messaging: This is similar in concept to Internet Chat. The difference is that Internet Chat is a group conversation whereas Instant Messaging is a private one-to-one communication.
Video Conferencing: You can engage in real time conversations with others on the Web by sending both audio and video. You would obviously need sound cards, video cards, a webcam, and the appropriate software.
Voice over IP: You can make telephone calls over the internet. There are several ways of doing this. You can use a normal phone with a special analog telephone adapter (ATA) or a special IP phone plugged directly to an Internet connection. You can also use software provided by Skype to use your computer to make the call.
Web as a Source of Entertainment
The Web is a source of music and video. On the Web we use the term multimedia to encompass text, images, animated graphics, audio, and video. You can either download the music and video and create a CD or DVD of your own. The other option is to play the music or video directly on your computer. To do that you would need special plug-ins or ActiveX controls. These are programs that extend the capabilities of your browser. To make the experience more interactive web pages can have Java applets, or Macromedia Flash and Shockwave applications.
You can also play games online. Some games are downloadable whereas others can be played in real time with other players. There are some virtual reality games that involve many players online simultaneously. They are known as MMOGs (Massive Multiplayer Online Games).
The Web made it easy to share multimedia products often violating copyright restrictions. One of the first such file sharing programs was Napster which was shut down for copyright violations. Another way to distribute audio files on the Web is termed podcasting that allows users to listen to MP3 files on a subscription basis.
The Web is offering several alternatives to sources of entertainment. Microsoft is promoting a new technology called Internet Protocol Television (IPTV). IPTV will allow television programs to be sent over telephone lines using broadband xDSL technology. Viewers will have to install a set-up box running Windows CE. Another emerging trend is Video on Demand (VoD) that will allow viewers to stream video over the Internet. Netflix and TiVo have formed a partnership that will allow viewers to watch movies on demand.
Web as Venue for Commerce
Even before the Web businesses had private networks to share data - Electronic Data Interchange (EDI) and Electronic Funds Transfer (EFT). Several businesses now have a virtual store on the Web that customers can browse and purchase from. Auction houses, like eBay have appeared that allow people to directly sell their merchandise without maintaining a store. There are reverse auction agencies like Priceline that collect offers from customers and pass them on to sellers. Shopping agents have appeared on the scene like MySimon and PriceGrabber that assist shoppers find the best deal online. The services of these shopping agents are paid for by advertisements. These advertisements can be in the form of logos, links, banners, and pop-ups. To facilitate payment over the Web several options exist. One of the best known is PayPal now owned by eBay. PayPal allows users to make payments even if they do not have credit cards by getting information of their bank account.
Web Services is the underlying web application that allows a business to offer services over the internet. Read the latest news on web services at the W3C site or at a vendor neutral site.
Issues with Web Transaction
Security: As a first line of defence of information being tampered with over the Internet is encryption/decryption. Secure Sockets Layer (SSL) technology is used ensure secure Web transactions. One of the earliest algorithms used was called RSA.
Privacy & Trust: Merchants must provide a privacy statement that spells out how they make use of the information they collect about you. You should be able to find out what information the merchant collects, how is that information used, and what options you have over the use of that information.
Publishing on the Web - Core Technologies
One of the main reasons for the popularity of the Web is the ease with which you can access the Web or publish on the Web. The core technologies that are needed to create a web site are simple and easy to master. Moreover, existing browsers are extremely forgiving of syntax errors. Features that are deprecated are usually still supported in most browsers, so that you do not have to constantly update your pages. Here are some technologies that you must be familiar with to create a decent website.
XHTML is markup language. An XHTML document consists of content and control tags. The control tags are used by the browser to render the document on the client monitor. It is easy write the control tags by hand. But you can also use XHTML editors like Microsoft FrontPage, Macromedia Dreamweaver, and Adobe PageMill. The World Wide Web Consortium (W3C) has provided the specification for this language.
Cascading Style Sheets specifies how the content is to be displayed. The trend in web design has been to separate the content from the rendering instructions. The specifications for the style sheets are also determined by the W3C. Some amazing designs can be created using style sheets.
XML stands for eXtensible Markup Language. It allows users to create their own control tags. XHTML has a small set of predefined tags. With XML you can have any number of tags. These tags can be used to describe the content of the document not only for the human user but also for a machine that is capable of reading that document. This document specifies how to create and use control tags in XML.
Java is an object oriented language that is used for writing applets that can run on the client machine. A Java class called Servlets can be used for writing applications that run on the server side. A client program can invoke these applications on the server and obtain the results.
Perl is a systems programming language. This means that Perl can access operating system functions directly. Perl is used to process data that a user sends back in a form. It can also be used for accessing databases on the server side and returning that information to the client.
But this not enough. To be an effective web programmer you will also have to master some graphics package like PhotoShop to create your own graphics. You will also have to provide a database back end for your web page. There are several free database packages available like MySQL or PostgreSQL.
Current Trends in Web Programming
Semantic Web is a network of information linked in such a way that can be accessed by machines in a meaningful way. You can think of this as a global database that you can query and get intelligent results.