🚦 Continuous Delivery
Getting a change from your machine into production, repeatably — configuration management, the deployment pipeline, migrations that ship with the code, and why deployment and release are not the same event. Principles rather than products, with the data nuance added and every project built on a pipeline.
No lessons published yet — this is the roadmap, so you can see exactly what the course will cover before it lands.
Before you start: Data Ops — Series 1 · 43, and Series 3. You need git to be a tool you already use rather than a topic, because this track assumes version control from its first episode. Data Ops Series 3 is also where a reader meets the failures this track exists to prevent, and an argument about release safety lands better after you have been paged once.
Short on time? The 13 episodes marked core are the shortest path to being productive at work. Start there and pick up the rest whenever a job asks for them.
Series 1 · Before a Pipeline Can Exist
version control, a green build, and knowing which tests buy what
- 01
Release Day — the Three Habits That Make It Frightening
coreintermediate#humble-farleycoming soon - 02
Everything You Need to Rebuild It — What Belongs in Version Control
coreintermediate#humble-farleycoming soon - 03
Integrating Every Day — Why a Green Build Is the Whole Team's Job
coreintermediate#humble-farleycoming soon - 04
Which Tests Buy What — Four Quadrants, and Why a Quality Check Is Not a Test
coreintermediate#humble-farley#marickcoming soon - 05
Project — Bring an Existing ETL Pipeline Under Configuration Management
coreintermediate#projectcoming soon
Series 2 · From Commit to Production
the stages a change passes through, and the rules that make them mean anything
- 01
The Route a Change Takes — One Artifact, Every Stage, No Side Doors
coreadvanced#humble-farleycoming soon - 02
The Deploy Script — the Only Way Anything Ships, Including by Hand
coreadvanced#humble-farleycoming soon - 03
Ten Minutes — What Earns a Place in the First Gate
coreadvanced#humble-farleycoming soon - 04
Acceptance Tests — What It Should Do, Not How It Does It
advanced#humble-farleycoming soon - 05
Will It Still Finish in the Window — Capacity as a Stage of Its Own
advanced#humble-farleycoming soon - 06
Shipping Is Not Switching On — Two Events People Treat as One
coreadvanced#humble-farleycoming soon - 07
Project — Take a Nightly ETL Job From Commit to Production
coreadvanced#projectcoming soon
Series 3 · Everything Around the Pipeline
environments, migrations, dependencies, branching, and whoever has to approve it
- 01
If the Server Died — Is Rebuilding It a Command or a Memory?
advanced#humble-farleycoming soon - 02
The Migration Ships With the Code — Putting a Database Under Version Control
coreadvanced#humble-farley#amblercoming soon - 03
Expand and Contract — Changing a Schema While Both Versions Are Running
coreadvanced#humble-farley#amblercoming soon - 04
When to Split Something Out — and What It Costs the Pipeline
advanced#humble-farleycoming soon - 05
Long Branches Defer the Pain — Working on Trunk, and Branch by Abstraction
advanced#humble-farleycoming soon - 06
Getting Permission — Why a Pipeline Audits Better Than a Signature
advanced#humble-farleycoming soon - 07
Project — Ship a Schema Change to a Live Warehouse With Nothing Going Down
coreadvanced#projectcoming soon
Not here, on purpose
- The tools themselves — a build tool, a CI server, a configuration-management product — not covered, deliberately. Data Ops, Series 3 · 04 shows what a CI server is; this track teaches what to do with one, in terms that survive replacing it
- Provisioning and describing infrastructure — covered in Terraform & Pulumi. In this course, Series 3 · 00 teaches the principles any such tool has to satisfy, without naming one
- Running workloads on a cluster — covered in Kubernetes for Data Workloads
- Writing the pipeline's transformations, and testing them — covered in ETL & Data Pipelines, Series 2 · 12. This track decides what runs those tests, when, and what happens when they fail
- One product's implementation of all of this — covered in Analytics Engineering with dbt, Series 3 · 45. A tool track shows the buttons; this one is why they exist