Skip to content
Happy Programming Guide
Start learning
Web Development

Web Development for Beginners: A Map of What to Learn

What HTML, CSS, JavaScript, the front end and the back end each do, how a page actually reaches your screen, and the order to learn things in.

Web development has a lot of words in it, and most beginner confusion comes from not knowing which word belongs where. This guide is a map, not a tutorial.

What happens when you visit a page#

  1. You type an address. Your browser asks DNS which computer that name belongs to.
  2. It sends a request to that computer — the server.
  3. The server sends back HTML, plus links to CSS, JavaScript and images.
  4. Your browser — the client — builds the page and runs the JavaScript.

Everything else in web development is a detail of one of those four steps.

The three languages of the front end#

Language Job Analogy
HTML Structure and content The walls and rooms
CSS Appearance and layout Paint and furniture
JavaScript Behaviour The lights and doorbell

You can build a real, useful website with only HTML and CSS. JavaScript is what makes it react.

Front end, back end, full stack#

  • Front end — everything running in the visitor’s browser. HTML, CSS, JavaScript, and frameworks like React.
  • Back end — everything running on the server. Handling requests, talking to a database, checking passwords. Python, Node.js, PHP and others live here.
  • Full stack — someone who works on both.

The dividing line is simple: if a visitor could see it by pressing “view source”, it is front end.

Where data lives#

A database stores information between visits — users, orders, posts. The front end never talks to it directly. It asks the back end, which checks who you are and answers with just the data you are allowed to see.

That middle layer is an API: a set of URLs the front end can call. See the Fetch API guide for the browser side of that conversation.

A learning order that works#

  1. HTML — a week. Structure, links, images, forms.
  2. CSS — two or three weeks. The box model, flexbox, grid.
  3. Responsive design — make it work on a phone.
  4. Build a real page. A portfolio page is ideal.
  5. JavaScript — the longest stretch. Take your time.
  6. The DOM and events — make pages respond.
  7. Fetching data — connect to a real API.
  8. Git and GitHub — and publish what you built.
  9. Only now, a framework like React if you want one.

Words you will keep hearing#

  • Responsive — the layout adapts to screen size
  • Framework — a big toolkit with opinions (React, Django)
  • Library — a smaller toolkit you call when you want it
  • API — a way for one program to ask another for data
  • Hosting — a computer that keeps your site online
  • Domain — the name people type
  • Deploy — putting your code where the public can reach it

What you do not need yet#

Ignore all of this until it solves a problem you actually have: TypeScript, Docker, Kubernetes, GraphQL, microservices, webpack configuration, server-side rendering. Every one of them exists to fix a problem you have not met.

Questions people ask#

How long before I can build a real website?

A simple multi-page site with HTML and CSS is achievable within a few weeks. Something interactive with saved data takes several months of consistent practice.

Do I need to learn design too?

Basic taste helps a lot: consistent spacing, two fonts at most, one accent colour, plenty of whitespace. You do not need to be a designer to avoid the things that make a page look amateur.

Is web development still worth learning?

The web is not going anywhere, and the fundamentals here transfer to almost every other kind of software. What changes is the tooling, not the model.

What about WordPress and site builders?

Excellent tools for getting a site online quickly, and they do not teach you to program. Both paths are valid — just be clear about which one you are on.

Where to go next#

Next lessonHTML basics explained

Keep reading

Keep going — pick your next guide

The fastest way to improve is to read one guide, then build the thing it describes. Start with the basics, or jump straight to a project.

Ask a question or share what worked

Your email address will not be published. Required fields are marked *