Applied AI engineering program

Stop demoing. Ship an AI system a business will trust with its customers.

Most AI courses stop at the demo. Keel starts with a real kind of problem: Lantern Home, a fictional online shop, gets about three thousand messages a month about parcels that never arrived, damaged kettles and refunds, and each customer waits two to three days for an answer. Across 13 phases you build the system that reads those messages, applies the shop's rulebook, settles the clear cases and sends the hard ones to a person, from your first line of Python to a deployed, audited service. Every submission runs against automated checks, and it passes only when the work holds up.

One payment opens Phase 0 and Phase 1. Nothing renews. Unit 0.1 is free to read before you pay.

13

Phases, one system

889

Hours of real build work

1

Payment for Phase 0 and 1, nothing renews

0.1

Unit free to read before you pay

How a unit works

Five steps. Same loop, every unit: you will know it by heart by week two.

Each unit is a small build with the same heartbeat: learn the concept, practice on a parallel task, ship the deliverable, get it graded, move on. No surprises after unit one, because the surprise budget goes to the ideas, where it belongs.

  1. STEP 01

    Learn

    One written lesson, read start to finish. It opens with the concept, grounds it in the client's numbers, then shows exactly what you are about to produce, with checkpoints you answer before you peek. (Peeking is allowed. Peeking first is noticeable.)

  2. STEP 02

    Practice

    Every chapter builds the program in front of you, a few explained lines at a time. Then you finish it yourself on the client's files, and automated checks tell you exactly which step is missing.

  3. STEP 03

    Build

    Upload the deliverable on the unit's page. The deliverable and the submission contract are published up front, so you will never have to guess what 'done' means.

  4. STEP 04

    Verify

    Submit, and automated checks run your code. Each check says what it looked for, so a Not yet tells you what to fix.

  5. STEP 05

    Move on

    Pass a unit and move to the next one. Only verified work counts, and your dashboard keeps the record.

Graded for real

A pass means your program did the job. Here is exactly how we check.

Every result comes from automated checks you can read before you start. What happens when you upload:

1

Automated checks

Your program runs on our server, in an isolated container with the unit's own files, so the result does not depend on your computer. Each check reports Passed or Not yet and says what it looked for, so a Not yet tells you what to fix.

2

A message you have not seen

Where a unit's program reads customer messages, one check runs it on a message you have never seen. A program that prints answers it remembers, instead of finding them, does not pass.

3

No model's opinion

No language model grades a unit today: the checks decide. Before any unit is graded by one, we will test that grading against work people have graded by hand.

Support on every unit

Help that shows up at 2am, scoped to the exact lesson.

Stuck is normal. The lessons show you what goes wrong on purpose, and every unit has a tutor that has read its lesson.

  • A tutor on every unit

    Ask why something works, ask for another example, or paste the error that has been on your screen since midnight. It has read the whole lesson, explains basic Python the lesson leaves out and tells you so, and will not write the program you hand in.

  • Errors shown on purpose

    Where a lesson teaches code, it breaks it on purpose: you see the traceback, learn to read it from the bottom up, and fix it before you meet it on your own.

Curriculum units

Start here. These units are open today.

Unit 0.1 is free to read in full. Every other unit's page shows its outline and how many checks it runs before you pay.

All 13 phases
  • Unit 0.1Phase 0

    Meet the client: Lantern Home

    none

    Open the unit
  • Unit 0.2Phase 0

    Phases, time-boxes, and how your work is graded

    none

    Open the unit
  • Unit 1.1.1Phase 1

    A program that reads a customer's message

    read_message.py, which opens messages/M-1041.txt and prints the customer's email address and the order number found in the message.

    Open the unit

Your first submission is one upload away. Seriously.

Create an account, take the 20-minute placement check or skip it, and open your first unit in the same session.