HTTP, or “House Techno Trance Pop…?”

Anthony Rubbo
4 min readDec 8, 2020

I remember being 11 years old when my family got our first Gateway 2000 computer. I was so excited just to be able to play Microsoft Flight Simulator (loaded from what I now know is the command line)! When the internet became widely accessible not too long after that and we finally signed up for AOL, I sat patiently, suffering through those crazy dial-up connecting noises to see what the fuss was all about. I learned, mostly through trial and error and the help of more tech-savvy pre-teen friends, how to actually access websites. I didn’t know what ANY of the website address meant, but I DID know that guitarworld.com took me to my favorite magazine’s site where I could drool over guitars I never thought I’d be able to afford and the players that I worshipped.

The man, the myth, the legend.

For the next 20+ years, I continued not caring to know what anything meant in that browser when I wanted to visit a website. All of the mumbo-jumbo before and after the web address of where I was going was meaningless — until I decided to become serious about the internet and pursue a career using it. Suddenly, all that mumbo-jumbo became much, much more important to my daily life.

One of the first things I learned when I began coding on a self-teaching basis, that I never knew about during those internet-formative years, was finally what those four(sometimes five) very important letters before a web address meant — HTTP.

According to the MDN Web Docs, HTTP, or Hypertext Transfer Protocol, is “is the underlying protocol of the World Wide Web. Developed by Tim Berners-Lee and his team between 1989–1991, HTTP has seen many changes, keeping most of the simplicity and further shaping its flexibility. HTTP has evolved from an early protocol to exchange files in a semi-trusted laboratory environment, to the modern maze of the Internet, now carrying images, videos in high resolution and 3D.”

Sir Tim Berners-Lee (yes, he was knighted by Queen Elizabeth II in 2004 and has a comically simple bio-site) is the person who invented the internet as we know it. That isn’t to say that he pulled the idea out of thin air after he fell and hit his head against the bathroom sink, a la “Doc” Emmett Brown in Back to the Future. Rather, Berners-Lee’s grand idea was to implement a system used to manage the sending of information. He built a prototype system, named ENQUIRE, in 1980.

Berners-Lee himself says that the individual pieces of what we know as the internet and the World Wide Web (W3) already existed. He merely saw the opportunity to join hypertext (actual clickable links that display information) with the internet:

“I just had to take the hypertext idea and connect it to the Transmission Control Protocol and domain name system ideas and — ta-da! — the World Wide Web[33] … Creating the web was really an act of desperation, because the situation without it was very difficult when I was working at CERN later. Most of the technology involved in the web, like the hypertext, like the Internet, multifont text objects, had all been designed already. I just had to put them together. It was a step of generalising, going to a higher level of abstraction, thinking about all the documentation systems out there as being possibly part of a larger imaginary documentation system.[34]

Again referring to the MDN Web Docs, his proposal to build a hypertext system over the internet was eventually named the World Wide Web in 1990 and consists of 4 main building blocks:

  • A textual format to represent hypertext documents, the HyperText Markup Language (HTML).
  • A simple protocol to exchange these documents, the HypertText Transfer Protocol (HTTP).
  • A client to display (and accidentally edit) these documents, the first Web browser called WorldWideWeb.
  • A server to give access to the document, an early version of httpd.

Essentially, a client (i.e. you at your computer) makes a request to a server (another computer holding information files), who then sends a response. Berners-Lee not only created the first website, but hosted the site on the world’s first server — his computer at CERN, or the European Organization for Nuclear Research, where he worked and was a fellow at for much of the 1980's.

Of true importance with HTTP are the methods with which clients make requests to a server. Over the course of the evolution of HTTP, there are now 9 verbs with which requests are made. The most important of which, arguably, are the following:

  • GET: requests a representation of the specified resource. Requests using GET should only be used to request data (they shouldn't incude data)
  • PUT: creates a new resource or replaces a representation of the target resource with the request payload
  • PATCH: is considered a set of instructions on how to modify a resource. Contrast this with PUT; which is a complete representation of a resource.
  • DELETE: deletes the specified resource.

As an early-teen guitarist experimenting with the web, I really only used GET requests to show me the various different ““views” on guitarworld.com that I was looking for. Whether that was tabs of a Jimi Hendrix, Stevie Ray Vaughan, or Jimmy Page solo, or an article about Eddie Van Halen’s “Frankenstein,” GET requests helped me to accomplish my musical goals. As a beginning web dev, however, the other 8 requests have definitely become increasingly more important in furthering my understanding of the Web that Tim Berners-Lee has helped to construct.

Learning about HTTP requests and responses helped me to not look at my computer the way that John Mayer looks at his guitar as if it were replaced with a slug.

--

--

Anthony Rubbo

Recent Flatiron School Grad, hopeful SE in search of a job!