Computer Atlas

Building for Platforms

For intermediates 8 topics (5 required · 3 optional) · updated 2026-06-08

The landscape of modern software targets — web, mobile, embedded, and IoT — and the trade-offs that define each one.

Reading time
~41 min (+25 min optional)
Level mix
5 beginner · 3 intermediate

Not all software runs in a browser or on a server. This path surveys the full range of platforms that software runs on — from the web browser (the most ubiquitous runtime in history) through mobile devices, embedded hardware, and the internet of things.

Each platform imposes a different set of constraints: power budgets, network availability, display capabilities, input methods, and update cycles. Understanding those constraints is what distinguishes platform-aware software design from code that happens to compile.

Edit this path on GitHub

Roadmap

Loading progress...

  1. The web

  2. A program that fetches web pages over HTTP, parses HTML/CSS/JavaScript, and renders them as the interactive sites you see.

  3. The core decision in app development — build a native app installed per platform, a web app that runs in the browser, or a hybrid that blends the two — each trading reach against capability and performance.

  4. Mobile

  5. Software designed to run on a phone or tablet — distributed through an app store and sandboxed by the platform.

  6. Beyond the screen

  7. A small, special-purpose computer built into a larger product — a microwave, a car ECU, a smart thermostat, a satellite.

  8. The Internet of Things — everyday physical objects embedded with sensors and network connectivity, letting them collect data and be monitored or controlled remotely.

  9. Specialised platforms

  10. Game EngineOptional

    A reusable framework for building video games — rendering, physics, audio, input, scripting, scene tools — so game teams build worlds, not engines.

  11. Using computers to model, simulate, and analyze scientific and engineering problems — from weather forecasts to drug discovery — through numerical methods running on everything from laptops to supercomputers.

  12. SpreadsheetOptional

    A grid of cells holding data and formulas that recalculate automatically — the world's most widely used programming tool, even though most users don't think of it as programming.