Before .NET, developing applications for "the Web" was cumbersome and boring. And with good reason: The World Wide Web was not designed as a programming or logic-processing platform. It was originally all about sending specially formatted text files from one computer to another. No programming languages to learn. No custom logic. Just plain text, and maybe a binary graphic image or two.
Early web browsers were really just glorified file-copy programs. When you started up the Mosaic browser (pretty much all there was back then) and requested a Web page from another computer, here is what would happen.
Much of this process is hidden from view, but you can actually see it happen. If you're interested, open the Windows command prompt, and type the following command.
telnet www.google.com 80
This runs the telnet program, a terminal emulation program that lets you connect to remote systems through a text interface. Telnet usually connects to TCP/IP port 23, but you can specify any port you want, as we did here with the default WWW port of 80.
Your screen may go blank, or it may just sit there, looking dead. If you're lucky, you'll see a "connected" message, but perhaps not. And that's okay. Your system is connected to Google's web server. Type the following command.
GET / HTTP/1.0
Don't miss the spaces surrounded the first slash. Follow this command with two light taps on the Enter key. This command asks the remote system to send the default web page at the top of that server's Web hierarchy. And because you asked, it will.
Of course, you do not normally see all this. The web browser carries on this dialog for you, and nicely formats the response as a web page. This is actually all there is to the World Wide Web. You have just experienced the major features involved: the transfer of basic data through a TCP/IP port. So where does programming come in?