Skip to content

How Software Works

Follow a click from your finger to a database and back.

client vs serverfrontend vs backenddatabaseAPIHTTPDNSIP addressesprocessesthreadsmemoryCPUdisknetwork

Lessons

  1. 0.1What happens when you open a website?You type a web address and a page appears in a blink. Here's the short journey your request takes, and why each stop exists. 30 min Follow the request Latency budget
  2. 0.2Frontend vs BackendEvery app has two halves: one on the user's phone, one on your servers. Here's what goes where, and why the line between them is about trust. 30 min Frontend or backend?
  3. 0.3What is a server?A server is just a program that waits for requests and answers them, running on a machine with limited power. Here's what that really means. 30 min Server under load
  4. 0.4What is a database?Why apps don't just save files, how a database keeps bookings correct, and why it's usually the first thing to struggle when you grow. 30 min Index visualizer Search race: O(n) vs O(log n)
  5. 0.5What is an API?An API is the menu one program offers another: what you can ask for, how to ask, and what comes back. Here's how it works and why it must stay stable. 30 min Booking API playground
  6. 0.6The internet, IP addresses and DNSHow a message crosses the planet in small pieces, and how a website name becomes an address a computer can reach. 30 min
  7. 0.7Operating systems, processes and threadsYour server program is never alone. Here's how the operating system keeps programs apart, shares a few CPU cores between many tasks, and where it gets risky. 30 min Server under load
  8. 0.8CPU, memory, disk and network: finding the bottleneckEvery request uses four resources, and they differ in speed enormously. Learn which one is really slowing you down before you try to fix anything. 30 min Server under load Latency budget

On the job: try it on your own project

Pick one everyday action in your own product, like saving a form. Ask Claude Code to trace it from the button click to the database and back, naming every file, server and service it touches. Turn the answer into a one-page map of how that request flows through your app, in your own words, and check it against the code with one colleague.

Can you do this now?

0/4. Anything you can't tick yet: reopen that lesson's practice ladder.