Skip to main content
CFDLAcademy
For teaching and offline work

The course kit

Every exercise in the course as plain files. The same models you can run in the browser, packaged to hand to a class, mark up in an editor, or run from the command line — rebuilt from the course sources on every deploy, so a bundle is never out of step with the chapter it belongs to.

Two bundles

Same 23 exercises, drawn from 28 chapters. They differ in one respect: whether the answers are in the box.

Exercises only

Starters, prompts, and run configurations — no solutions, no expected metrics. The set to hand a class before the answers are discussed.

cfdl-exercises.zip

Full kit

Everything above plus solution.cfdl and the expected metrics for each exercise — the instructor's copy, and the answer key for self-study.

cfdl-course-kit.zip

What is inside

One directory per exercise, named for the chapter it belongs to:

exercises/
  04-streams-and-schedules/
    billing-terms/
      README.md        the prompt, and what to check before running
      model.cfdl       the starter — the exercise is to finish it
      run.json         the run configuration the chapter uses
      solution.cfdl    one solution        (full kit only)
      expected.json    the metrics it produces  (full kit only)

Running one

Every exercise is an ordinary model directory, so the command-line tools take it as-is — compile it, then run the result against the exercise's own configuration:

cfdl compile exercises/04-streams-and-schedules/billing-terms --out /tmp/ir.json
cfdl run /tmp/ir.json --out /tmp/results.json \
  --config exercises/04-streams-and-schedules/billing-terms/run.json

Nothing is required beyond the CLI — installing it takes a minute. An exercise that uses a domain pack says so in its model header, and needs --packs pointed at a pack directory. If you would rather not install anything, every exercise also runs in the page it belongs to.

Teaching it

The full kit's expected metrics make marking mechanical: an exercise is right when its solution compiles, runs, and reproduces them. What that cannot tell you is whether a model says what the deal means, which is the course's real subject — so the instructor notes carry rubrics for that, alongside session plans, per-chapter discussion prompts and two ways to run the capstone.

Read the instructor notes