(Extracts from two URLs) Tim Berners-Lee Source: http://www.w3.org/People/Berners-Lee/Kids.html General Questions, 1998 Q: I understand you invented the Internet.... Sorry, not me! I was lucky enough to invent the Web at the time when the Internet already existed - and had for a decade and a half. If you are looking for fathers of the Internet, try Vint Cerf and Bob Kahn who defined the "Internet Protocol" (IP) by which packets are sent on from one computer to another until they reach their destination. See: "Cerf's Up" : MCI WorldCom on technology" with profile and FAQs by Vint, who currently works for MCI. Vint explains the timing: "The DESIGN of Internet was done in 1973 and published in 1974. There ensued about 10 years of hard work, resulting in the roll out of Internet in 1983. Prior to that, a number of demonstrations were made of the technology - such as the first three-network interconnection demonstrated in November 1977 linking SATNET, PRNET and ARPANET in a path leading from Menlo Park, CA to University College London and back to USC/ISI in Marina del Rey, CA." David Clark, of MIT's LCS, is another one I can point to who put in the work in the 1970s which made the Web possible in the 1990s. Vint Cerf and Bob Kahn used, in making IP, the concept of packet switching which had been invented by Paul Barran. It is also good to mention the Domain Name Service upon which the web relies heavily. The protocols which make the DNS work were pioneered and standardized by Paul Mockapetris. Q: What is the difference between the Net and the Web? The Internet ('Net) is a network of networks. Basically it is made from computers and cables. What Vint Cerf and Bob Kahn did was to figure out how this could be used to send around little "packets" of information. As Vint points out, a packet is a bit like a postcard with a simple address on it. If you put the right address on a packet, and gave it to any computer which is connected as part of the Net, each computer would figure out which cable to send it down next so that it would get to its destination. That's what the Internet does. It delivers packets - anywhere in the world, normally well under a second. Lots of different sort of programs use the Internet: electronic mail, for example, was around long before the global hypertext system I invented and called the World Wide Web ('Web). Now, videoconferencing and streamed audio channels are among other things which, like the Web, encode information in different ways and use different languages between computers ("protocols") to do provide a service. The Web is an abstract (imaginary) space of information. On the Net, you find computers -- on the Web, you find document, sounds, videos,.... information. On the Net, the connections are cables between computers; on the Web, connections are hypertext links. The Web exists because of programs which communicate between computers on the Net. The Web could not be without the Net. The Web made the net useful because people are really interested in information (not to mention knowledge and wisdom!) and don't really want to have know about computers and cables. Questions below derived from those asked by Taiwan's Commonwealth magazine Q: What did you have in mind when you first developed the Web? From A Short Personal History of the Web: The dream behind the Web is of a common information space in which we communicate by sharing information. Its universality is essential: the fact that a hypertext link can point to anything, be it personal, local or global, be it draft or highly polished. There was a second part of the dream, too, dependent on the Web being so generally used that it became a realistic mirror (or in fact the primary embodiment) of the ways in which we work and play and socialize. That was that once the state of our interactions was on line, we could then use computers to help us analyze it, make sense of what we are doing, where we individually fit in, and how we can better work together. … Source: http://www.w3.org/People/Berners-Lee/Kids.html Answers for Young People Doing a report? Want to figure out how the web works? I have put here some answers to questions that children of various ages (6-96) have asked. If you need the answers for a school project or just because you're interested, then feel free to quote them from here. In your report, please say where you got them from. … Where were you when you invented the WWW? I was working in a physics laboratory called CERN. (CERN is in Geneva, Switzerland. Switzerland is near the middle of Europe.) At CERN, people study High Energy Physics. That is the physics of really really small particles - particles much smaller than atoms. It turns out that if you want to investigate really really small things, you need huge machines called accelerators to smash particles together really hard. Then you have huge gadgets (about the size of a house) which detect what happens, and what bits fly off, so you can figure out whether you managed to make any new types of particle. CERN is a big place - a few thousand people work there. Many of them are scientists whose jobs are at universities in different places in the world, and they come to CERN because they need to use the huge accelerators at CERN. What made you think of the WWW? Well, I found it frustrating that in those days, there was different information on different computers, but you had to log on to different computers to get at it. Also, sometimes you had to learn a different program on each computer. So finding out how things worked was really difficult. Often it was just easier to go and ask people when they were having coffee. Because people at CERN came from universities all over the world, they brought with them all types of computers. Not just Unix, Mac and PC: there were all kinds of big mainframe computer and medium sized computers running all sorts of software. I actually wrote some programs to take information from one system and convert it so it could be inserted into another system. More than once. And when you are a programmer, and you solve one problem and then you solve one that's very similar, you often think, "Isn't there a better way? Can't we just fix this problem for good?" That became "Can't we convert every information system so that it looks like part of some imaginary information system which everyone can read?" And that became the WWW. What happens when I click on a link? Actually, it was a grown up who asked this very reasonable question. When you understand this, then you will understand the difference between the Internet and the Web. And you will realize that it is all quite simple! :-) (You can skip the bits in small type) When you are reading a web page, the computer isn't showing you everything about the link. Behind the underlined or colored bit of text which you click on is an invisible thing like http://www.w3.org/. Its called a URL. This is the name of the web page to which the link goes. (The web page you are reading has this one: http://www.w3.org/People/Berners-Lee/kids). Behind each link, hidden from you, is the URL of the other web page, the one you'd get to if you followed the link. When you click on a link, your computer takes this URL. It wants to get a copy of the web page. There are a few different ways of doing this. The one I'm going to tell you about is just used for URLs which start http: . (This whole recipe I'm going to tell you, which your computer uses for getting web pages, is called the HyperText Transfer Protocol. That's what HTTP stands for. There are other protocols. But this is the most common one. ) If the URL starts with http:, then the computer takes the next bit of the URL, between the // and the /. It might be www.w3.org for example. This is the name of the web server. However, It can't communicate with the web server until it knows its computer number, because the Internet actually works with numbers. (A computer number is actually called its Internet Protocol Address, or IP Address. It is normally written as four numbers with dots, like 192.168.0.1) So there will two stages to this - first, finding out the number of the web server, and then asking the web for a copy of the web page. Your computer makes up a packet of information. An Internet packet is a message, a bit like a short email or a long text message. The packet starts off with the number of the computer the packet is going to, and then the number of the the computer which sent it, and then it has what the packet is about, and then whatever it is one computer is sending to the other. Now all over the Internet there are special computers whose job is to keep a list of computer names and numbers. When your computer is set up, it is set up to know the internet number of one of these. Your computer sends off the packet to it, saying it wants to know the number of www.w3.org. (A computer which can look up computer names -- domain names as they are called -- is called the Domain Name Service (DNS) server in the network preferences if you really want to know. When a DNS server looks up a computer name, it either knows it because it has it in a list, or it just asks another DNS server which knows more names.) How does the packet get there? Simple. Your computer sends it down the ethernet connection or phone line from your computer, or it transmits it by radio to a base station which sends it down some wire. Whatever that wire goes through, eventually it connects to some other computer (maybe one in the cable company, or phone company). The Internet is a net -- really shaped like real net like a fishing net -- of computers all connected together by various cables. Each computer, when it gets a packet, looks at it and sees what computer number it is being sent to. It then just passes it on to the next computer in the net, in the general direction toward its destination. Pretty simple? yes, well, it is simple. The packet gets passed on until it gets to its destination. Typically, a packet might be passed on by more than 10 computers before it arrives. (This way of getting a packet to its destination is called the Internet Protocol (IP)) In this case, the destination was the name server. The name server looks up the number of the computer www.w3.org from its name. Of course the name server knows the number of your computer, because that was in the packet too. So it sends a reply packet to tell you computer the number it needed. Ok. Your computer now knows the number of the web server, www.w3.org. So it goes back to the URL -remember the thing which started with http:? Lets say the URL behind the link was http://www.w3.org/People/Berners-Lee/FAQ . It has used the www.w3.org bit to find the number of the web server which has a copy of the page. Now it send off a request to that server asking it for the web page. It sends the whole URL, and the server sends back a copy. The only problem is that the web page won't fit in a packet. Packets can only be around 512 bytes - about long enough for a text message of 500 characters. Even the request that your computer sends off can be longer than will fit in a packet. So what happens is the computer just breaks the message into parts, and sends each part in a packet. I told you this isn't rocket science. It just like a television series coming in installments. It also puts in each packet a packet number so that the other computer can make sure its got all the parts and got them in right order. (This method of splitting message sup into packets and putting them back together again has a name, which you don't have to remember. It is Transmission Control Protocol, or TCP. So that's what people mean when they talk about TCP/IP.) So your computer gets back a bunch of packets with bits of the web page in them. It puts them in order and displays them on your screen. There are special codes (called HTML tags) which tell it when to do things like headings and bold and italics and ... oh, of course... links. Yes, every time it finds the HTML tag for a link, it displays the text specially (like blue and underlined) and makes a note of the URL of the linked page. Because at any time, you could click on the link, and it'll be doing this stuff all over again. @@@ This really needs lots of nice diagrams @@@ Did you invent the Internet? No, no, no! When I was doing the WWW, most of the bits I needed were already done. Vint Cerf and people he worked with had figured out the Internet Protocol, and also the Transmission Control Protocol. Paul Mockapetris and friends had figured out the Domain Name System. People had already used TCP/IP and DNS to make email, and other cool things. So I could email other people who maybe would like to help work on making the WWW. I didn't invent the hypertext link either. The idea of jumping from one document to another had been thought about lots of people, including Vanevar Bush in 1945, and by Ted Nelson (who actually invented the word hypertext). Bush did it before computers really existed. Ted thought of a system but didn't use the internet. Doug Engelbart in the 1960's made a great system just like WWW except that it just ran on one [big] computer, as the internet hadn't been invented yet. Lots of hypertext systems had been made which just worked on one computer, and didn't link all the way across the world. I just had to take the hypertext idea and connect it to the TCP and DNS ideas and -- ta-da! -- the World Wide Web. Just like that? No, actually the inventing it was easy. The amazing thing which makes it work is that so many people actually have made web servers, and that they all work the same way, on the Internet. They all use HTTP. So the difficult bit was persuading people to join in. And getting them to agree to all use the same sort of HTTP, and URLs, and HTML. I'm still doing that sort of thing. The World Wide Web Consortium (W3C) is like a club of people and companies who feel the Web is important, and keeping it working is important, and making it even better and even more powerful is important. I am the director of W3C (I started it) but thousands of people are now working on all kinds of wonderful things. Why do you keep saying everything is so simple? Well, because it is basically. No, honestly... I want you to know that you too can make new programs which create new fun ways of using computers and using the Internet. I want you to realize that, if you can imagine a computer doing something, you can program a computer to do that. Unbounded opportunity... limited only by your imagination. And a couple of laws of physics. Of course, what happens with computers is that you have a basic simple idea and then you have to add things on to it for practical reasons. So real-world computer programs can end up with a lot of stuff in them. If they are good, they are still simple inside. … So do you think the Web is basically been a good idea or a bad one? Some people point out that the Web can be used for all the wrong things. For downloading pictures of horrible, gruesome, violent or obscene things, or ways of making bombs which terrorists could use. Other people say how their lives have been saved because they found out about the disease they had on the Web, and figured out how to cure it. I think the main thing to remember is that any really powerful thing can be used for good or evil. Dynamite can be used to build tunnels or to make missiles. Engines can be put in ambulances or tanks. Nuclear power can be used for bombs or for electrical power. So the what is made of the Web is up to us. You, me, and everyone else. Here is my hope. The Web is a tool for communicating. With the Web, you can find out what other people mean. You can find out where they are coming from. The Web can help people understand each other. Think about most of the bad things that have happened between people in your life. Maybe most of them come down to one person not understanding another. Even wars. Let's use the web to create neat new exciting things. Let's use the Web to help people understand each other. TimBL