This season covers testing tools and how to write good tests. We switch between those topics frequently: first build a testing tool (like a test runner), then use it to talk about how to write good tests, then repeat!
We give the "from scratch" treatment to an entire web framework. It will do HTTP request routing, template rendering, database access, form validation, and more. Each piece of the design will be driven by the needs of an example application.
We rely on thousands of tools to do our work: compilers, editors, audio and video codecs, data compression formats, and so on. Many of these tools are clever or well-designed or both. By examining how they work, we can see the design insights behind them while simultaneously making them less mysterious.
All computing systems follow definite rules, both in theory and in practice, in the realms of both computer science and everyday programming. In an hour and a half of dense screencasts, we get a high-level view of major computational topics demonstrated using code, not mathematical notation.