The web. We use it everyday. It makes this very presentation possible. The Internet. The Web. So few people even know the distinction. That’s okay. Today the distinction is largely irrelevant to our everyday lives even as our lives are embedded in the network.
How did we get here? How did the web get to this point? More importantly, where are we going? Where is the Web, the Internet, going. The 21st century Internet is really dependent upon the people born in the 21st century: a generation already in college. For them to define the Internet of the next 30 years, they need to understand the last 50 years of the Internet. Everything we use today on the net has a direct connection to events 50 years ago. This is not merely a history lesson. This is a lesson about today and the future.
The desktop computer: all alone
If we go back a bit more than 30 years, to the 1980s, when I was in college, there were no computers in the classroom. A few students had an Apple computer but most had just a typewriter. I remember the business office for the college had a desktop computer, sitting all alone on an assistant’s desk. The math department in the science building had a minicomputer, a much larger system, with a series of terminals with monochrome screens.
The 1980s battle between Microsoft and Apple over the desktop computer was handily won by Microsoft, though now that’s a bit hard to imagine to a generation who have grown up using mostly Macs. The desktop computer, quite a bulky device, was a machine isolated in the home or office. It didn’t connect to anything else. Everything was installed by floppy disks, but the computer was a work horse for its time. Imagine it, sitting there on a desk doing its thing, with no other computer to talk to. Everything was stored on a series of floppy disks or on the quite small internal hard drive. The capabilities of the desktop computer in the 1980s was limited by the capacity of the hardware.
Computers talking to each other
In the 1980s, businesses increasingly took advantage of the ability to physically connect office computers into local area network (LAN). A cable would plug into the back of a computer. Originally, these cables were strung across the rooms, over the floors, and daisy-chained to each computer. Eventually, the cables were installed in the walls and computers were plugged directly into an outlet on a wall. You still see that today (look around the university for those Ethernet outlets), though the speed running through those cables are much greater than before.
The LAN was a great benefit to office productivity in the workplace. But you were still very limited to your local office environment in those days and even into the early 1990s.
Big computers talking to each other
But let’s go back to the 1960s and 1970s and see what was happening in the research laboratories of universities and government. That’s often where the innovation starts before it gets commercialized on a large scale to the public. The remarkable achievement in telecommunications that makes the Internet possible is a process called packet switching. Watch the following video that discusses how packet switching was developed. Pay particularly close to attention to the opening when the scientist explains the example of sending every page of a Bible to someone. His description is the core mechanism that transmits everything over the Internet today.
While the video is quite dated, from the early 2000s it seems, everything they talk about is still highly relevant today. These are core technologies that enable everything you do today on the Internet.
As you watch that video, note also around the 7 minute mark when he briefly describes how messaging and email evolved from a networked system sharing documents.
The video has a primarily British perspective but the experience of the time was largely the same in the USA. Around the 10-minute mark, they discuss the difficulties of deploying a packet switching network over a broad area. The telephone companies used an entirely different form of networking (circuit switching) to transmit voice calls from telephone to telephone. Telephone lines were everywhere, but those lines were low speed since that’s all that was required for voice. The phone companies were very resistant to changing their network infrastructure. Indeed, that change took decades, even into the early 2000s. And in the 1990s, connecting homes to the Internet became a battle between phone companies and cable companies. The cable companies found themselves in a better position since large cables had to be installed in the homes to deliver cable TV.
In the USA, the government had an initiative called Defense Advanced Research Projects Agency (DARPA), being operated out of the Department of Defense. DARPA worked with research universities in the US that were developing their own networks so that scientists could communicate with each other and perform scientific analysis on large, expensive mainframe computers.
So, think about all the individual local networks existing in isolation, not connected to each other.
Internet: a network of networks
An internet is defined as a network of networks, i.e., one network connected to another network forms an internet (lowercase ‘i’). When networks started connecting to other networks all over the world and using the same technology of packet switching, then that initiative became known as the Internet (uppercase “I”). This is why the word Internet usually starts with a capital letter since it’s referring to a proper noun and not the generic term for networks connected to each other. In reality, it doesn’t really matter whether you use uppercase or lowercase these days. Most people don’t know what the term internet even means other than that big network that spans the globe. (Think about the similarities of the word internet with the word interstate, particularly the interstate highways. How often do you just say the word, Interstate, without any further designation other than perhaps the specific route, I-81. The prefix “inter” in internet is used in the same conceptual way as “inter” is used in interstate.)
Remember the example from the video above about sending a Bible page by page? Breaking down content into packets and then sending each individual packet separately over the network to its destination, all of which now happens in milliseconds, is a bit of a difficult concept to wrap your minds around. Fortunately, the detailed aspects are not needed for most web programming. Primarily, you need to understand the concept and know that the details are handled through software and hardware developed by engineers who are working at an entirely different level of abstraction.
Indeed, an abstract model actually exists that helps us understand the concepts of how the Internet works.
Let’s take a look at the protocols that make the Internet actually work. Again, you use these everyday without realizing it. You even see some of these terms everyday, like HTTP, but you may have no idea as to what it signifies. Internet protocols define how the Internet works. In the earlier video above, you viewed the British discussion on the development of packet switching. In that video, they touched upon corresponding developments in the USA. Two Americans most involved in developing the early Internet were Vinton Cerf and Bob Kahn. In 2004, Cerf and Kahn received the Turing Award from the Association for Computing Machinery. The Turing Award is often described as the Nobel Prize for computing. When they accepted the award, they held an insightful discussion on the evolution of the Internet. W
The video starts at the 13 minute mark, after the introductions. You can stop watching when the Q&A starts at the end of their discussion.
As you watch the Cerf/Kahn video, listen for key concepts, such as
Always be thinking that what they are explaining is how to approach the complexity of understanding how the Internet works. By modeling that complexity, they were able to build mechanisms that took concepts from ideas to implementations in the real-world. With tremendous foresight, they created an open system that anyone can build on top of to create new systems. Kahn describes the open network as a cafeteria model where you pick, from a large variety of services, what you want to use.
In contrast, a closed model is a service that is self-contained. Think about Facebook, which exists on the open network. But within Facebook, everything you do is controlled by Facebook. The possibilities of what you can create within FB is not open to you, those possibilities are closed to you except in the way that FB wants you to do something. Notice the distinction between open and closed systems?
Cerf talks about layers, like a staircase where each step (each layer) leads to another step (layer). In the early days of network development in the USA, these guys (Cerf & Kahn) could make the decisions just among themselves as to how things worked. But, again, with foresight, they wanted to get the community of people who used the Internet involved in planning, decision-making, and implementing how the Internet would evolve. The Internet Engineering Task Force (IETF) emerged as the primary force behind protocol development for the Internet. The IETF is still very active today.
For decades now, the IETF has conducted most of its work online via email and shared documents. Occasional meetings throughout the world solidifies the work of the IETF. The accomplishments of the IETF, through this distributed work model, is really phenomenal. And it has demonstrated, for decades now, that location independent work is entirely feasible and highly productive.
Then there’s the Web …
This post focuses on the Internet. Remember, the Web rides on top of the Internet layers. I’ll describe more about the evolution of the Web and development of Web standards in another post.