New series of blog posts: learning web development

[2025-08-14] dev, javascript, learning web dev
(Ad, please don’t block)

This blog post provides an overview of my new series of blog posts called “Learning web development”.

What does this series teach me?  

There is no required knowledge apart from being familiar with web browsers.

This series teaches you everything you need to know in order to create all kinds of web sites and web apps. There is a lot to learn, but every time you learn something new, you immediately get to try it out in a small practical project – which should be a lot of fun!

The content progresses relatively quickly and you are expected to figure out some things on your own. Should you ever get stuck, you can find tips in the FAQ below.

Topics covered by this series:

  • Creating web sites by writing:
    • HTML code (for the content)
    • CSS code (to format the content)
  • Using the programming language JavaScript to make web sites interactive
  • Creating web servers (via Node.js) that serve web sites, store data, manage users, etc.
  • Deploying web sites to public servers so that everyone can access them

You’ll also learn:

  • The terminology/lingo required to understand other material on web development
  • How to use the most important software tools that help with web development: shells, native package managers, npm, git, GitHub and more

How to download the repository with the projects  

Go to the GitHub repository learning-web-dev-code and follow the instructions there.

Table of contents  

Getting started

  1. Getting started

HTML and CSS

  1. Creating web pages via HTML
  2. (Pending: first chapter on CSS)
  3. (Pending: second chapter on CSS)

JavaScript in web browsers

  1. Numbers, variables, functions in JavaScript
  2. Strings and methods in JavaScript
  3. Arrays in JavaScript
  4. Booleans, comparisons and if statements in JavaScript
  5. Loops in JavaScript
  6. Shells and Node.js
  7. Using web servers and npm
  8. Modules and testing in JavaScript
  9. Plain objects in JavaScript
  10. JavaScript exceptions
  11. JavaScript Maps
  12. JSON and processing files in Node.js
  13. Asynchronous JavaScript – Promises and async functions
  14. Installing npm packages and bundling
  15. Frontend frameworks

JavaScript in web servers

  1. Implementing web servers
  2. Authenticating users with plain Node.js

Deploying web apps

  1. Native package managers
  2. Markdown
  3. Version control via Git and GitHub

I’ll add more posts over time.

FAQ  

Where can I go if I want to know more about a given web feature?  

In this series, I try not to overwhelm readers with details. If you are interested in details, you can check out the following free resources:

What can I do if I get stuck?  

  • Keep in mind: You are learning an incredible amount of new things. So, take your time and don’t worry too much if, at first, there are many details you don’t completely understand.

  • Play with the code (of HTML, CSS, JavaScript): What happens if you change or something? Often it’s possible to answer questions via small experiments. The smaller you can make such an experiment, the better (because then it’s easier to understand).

  • Search the web for more material. The web is full of resources that help beginners with web development.

  • You can also leave a comment underneath a blog post but I don’t know how quickly I’ll be able to reply.