DORA Metrics, Twelve-Factor Apps, Platform Engineering & SRE
8 modules, 39 lessons: Measurement And Outcomes: DORA; The Twelve-Factor App; Collaboration and Continuous Integration; Continuous Delivery and Deployment; Service Level Objectives (SRE); Incident Response and Postmortems; Platform Engineering and IDPs; The Modern DevOps Toolchain Handoff. Advanced level, about 2 hours.
This repository holds the labs of the free lessons of the LearnSome.tech course DevOps & Site Reliability Engineering: each lab's starter files, a README with the goal, the steps and the expected output, and ./check, which tests your work the way the site does.
-
Codespaces: the badge opens this repository in a dev container with Python 3.14.7 and Git 2.34 (Ubuntu 22.04's), as in the site's lab sandbox.
-
On your machine:
git clone https://github.com/learnsome-tech/devops-free-labs.git cd devops-free-labs ./check m01l01-04You need Python 3 for
./check, and for the labs themselves Python 3.14.7 and Git 2.34 (Ubuntu 22.04's). Other versions mostly work, but only the sandbox's versions are sure to print what the site prints. VS Code's Dev Containers extension builds the same container as Codespaces (x86-64).
- Open the lesson on LearnSome.tech and the lab folder beside it:
labs/<lesson>/<lab>/. The lab README has the goal, the steps and the expected output. - Work in the lab's
starter/folder. - From the repository root, run
./check <lab>(for example./check m01l01-04), or./check <lesson>for all labs of a lesson, or./check --all../check --listshows every lab and how it is checked.
./check runs your starter the way the site's lab sandbox does: in a scratch copy that is its working directory and HOME, with LANG=C.UTF-8, TZ=UTC, input.txt on standard input, 10 seconds and 256 KiB of output per stream. It then compares the output with the site's own rules, so a pass here is a pass on the site.
| Check | What ./check does |
Labs |
|---|---|---|
| Graded | Runs the program and compares its output with expected.txt. |
5 |
| Runs, not graded | Runs the program and shows its output; the site gives no pass or fail, and the lab README says why. | 1 |
| Read along | Nothing to run here: the site shows the listing read-only, and the lab README says honestly what it needs (Docker, a cluster, a cloud account...). | 9 |
This is the free edition: the labs of the course's free lessons, the ones anyone with a free LearnSome.tech account can watch. Each lab's starter is the code the lesson shows on screen. There are no reference solutions, no Pro lessons' labs or expected outputs, no narration and no quiz or exercise answers.
The labs of the Pro lessons are on the course page, where LearnSome.tech runs and grades them in its sandbox with a Pro membership. The full labs repository is private and stays private.
| # | Lesson | Labs | Access |
|---|---|---|---|
| 1.1 | What DevOps Actually Is | 2 labs | Free |
| 1.2 | Throughput: Change Lead Time And Deployment Frequency | 4 labs | Free |
| 1.3 | Instability: Change Fail Rate And Deployment Rework Rate | 3 labs | Free |
| 1.4 | Restoration: Failed Deployment Recovery Time | 3 labs | Free |
| 1.5 | The Four Keys History And Retiring MTTR | 2 labs | Free |
Free lessons are open to anyone with a free LearnSome.tech account. The rest of the course is on LearnSome.tech with Pro.
- Code (starter files,
checkand.learnsome/, the dev container and the workflows) is under the MIT licence. - Written text (the READMEs and lab instructions) is under CC BY-NC-SA 4.0: share and adapt it with attribution to LearnSome.tech, not commercially, under the same licence.
- The LearnSome.tech name and logo are not covered by either licence.
This repository is generated from the course. Report a broken lab or a content error as an issue; see CONTRIBUTING.md. Security reports go to SECURITY.md.
© 2026 LearnSome.tech