“Software development” sounds like a single skill, but it’s really a stack of them — a bit of history, a working model of how languages differ, a handful of durable principles and patterns, the systems teams use to ship, and the judgement to pick the right tool for a job. This path builds that stack one short lesson at a time, starting from absolute zero and ending with you shipping your own program.
Who this is for. Complete newcomers are welcome — no prior coding required. If you already write code, use the module list to jump to the parts you’re missing: language internals, design patterns, choosing a language, or going solo. Every lesson is self-contained and cross-linked, so you can read straight through or hop around.
How the path works. Seven modules move from story to practice. We open with how computing got here — the hardware, the languages, and the people. Then we dig into what actually separates modern languages, the principles and patterns that keep code alive, and the systems teams use to ship. Module 6 is a complete toolkit for choosing the right language for a project, and Module 7 walks you through assembling your own solo development stack, workflow, and distribution strategy. Examples lean gently on real-time and radio software — the streaming, signal-crunching kind of code behind GopherTrunk — so abstract ideas stay concrete. Mark lessons complete as you go; your progress is saved in your browser. New here? Start with lesson 1: What is software?