Introduction

When I was a kid, I had a good friend who usually had fairly different interests from me. I spent my free time writing stories, crocheting coasters, and trying to make marionettes. He liked to build things in his room out of blocks, wire together homemade radios, and build contraptions outside in his yard. In my family, a special occasion meant going to the ballet or the opera. One time his family invited me to join them at a monster truck derby.

As we got a little older, he started to get into video and computer games, and would sometimes try to get me to play with him. I’d usually give it a go, but nothing really ever stuck. Maybe I would play with him a few times, and that would be that.

A couple of years after we got our first computer at my house, I was almost exclusively using it to write reports for school on. We were connected to the internet, and I had maybe sent a few emails, but I hadn’t really used a proper web browser.

One day my friend decided to show me something new on my computer while he was over visiting. He opened up Notepad and typed in something like the following:

<HTML>
  <HEAD>
    <TITLE>Hello World</TITLE>
  </HEAD>
  <BODY>
    <H1>A Heading</H1>
    <P>This is a paragraph.</P>
  </BODY>
</HTML>

He went to File > Save As..., named the file index.html, and saved it to the Desktop. I could tell right away that something exciting was happening, because the icon for the document didn’t look like a Notepad file. He double-clicked on the newly-saved index file, which opened in a web browser. In the window was a regular-looking document with the words “A Heading” in big bold text followed by “This is a paragraph.” in regular 12-point text beneath it. Most amazingly of all, above the toolbar in the window itself appeared the words “Hello World.”

It didn’t take much additional explanation to become awed by how powerful this all was. He told me that this is how people make web sites, and that it’s meant to be something you can learn easily and write by hand. I didn’t understand how to make what we’d made available on the internet, but the potential was there. Anyone, he told me, could publish something like this on the internet.

For me, this kicked off a long love affair with the web. I searched endlessly for small websites with interesting writing, searched for tutorials on how to write and publish your own web pages, played around with text, colors, images, even a little bit of interaction. The web was so clearly a powerful publishing platform, but more importantly to me, it was fun.

20 years later, some things have changed. The web isn’t just mainstream, it’s a predominant part of the world’s economy. Professional practices have likewise been built up around web development. There seem to be more things to learn than ever, and it can be expensive and time-consuming to get started or to keep up.

Some things remain. That file my friend wrote for me two decades ago would still work as a web page today.

So I want to offer you this book as an introduction if you are starting out in web development, and as a reintroduction if you, like me, find yourself struggling to keep up with the constant changes in web development and want to rediscover the joys of this medium.

—Nevan