Learn AL the Way Developers Actually Learn — With Someone Guiding You
Reading time: ~5 minutes · Silviu Virlan
There’s no shortage of ways to learn AL development. YouTube videos, blog posts, Microsoft Learn, asking Copilot or Gemini or Grok to explain a concept. Most of them work — to a point.
The problem isn’t the content. It’s that learning is one-way. A video explains table relations the same way whether you understood enums or not. A blog post can’t tell when you’re confused. Claude will answer your question, but it doesn’t know what question you should be asking next.
What actually moves a developer forward is interaction — having someone explain something, check that you understood it, wait while you try it, and respond to what you actually did. That’s how experienced developers mentor juniors. It’s expensive, it doesn’t scale, and most people never get it.
So I built a course that does exactly that — with Claude as the instructor.
Teaching Format
There are no videos. No slides. The course lives inside VS Code as a set of lesson scripts — plain text files that Claude Code reads and teaches from, interactively, one step at a time.
Each script uses a simple marker system to control the flow:
- STOP: — Claude pauses and waits for you to respond before continuing
- USER: — the expected reply, but any phrasing works
- ACTION: — something Claude does, like creating a file in your project
- [Brackets] — conditional branches: stuck? the AI slows down. confident? it keeps pace.
You type /start-1-1 in the Claude Code terminal, and the lesson begins. The AI explains a concept, you ask it to create the code, and you see it appear in your file tree. You can ask follow-up questions, request a different explanation, or admit you have no idea what just happened — and the lesson continues from wherever you are.
Scenario: Nordic Outdoor Adventures
The course isn’t a series of isolated exercises. It has a single, continuous real-world scenario that runs through all 13 lessons.
You’re a new AL developer at Nordic Outdoor Adventures — a mid-sized outdoor equipment rental company with 12 locations across Norway, Sweden, and Denmark. They’ve been running Business Central for two years for their core financials, but their rental operations are still a mess of Excel sheets and paper forms. Equipment gets lost between locations. Maintenance is reactive. Nobody knows which gear is actually profitable.
Your job: build the Equipment Rental Management extension for Business Central from scratch.
By the time you finish Module 2, you’ll have a working extension with tables, pages, enums, a rental booking workflow, business logic, a report, and proper permission sets — all deployed to a BC sandbox.
Module 1 — AL Development Fundamentals
Module 1 builds your vocabulary. Module 2 uses it. Nothing is introduced in isolation — every concept in the fundamentals module is part of the equipment rental extension you’re building.
The entire course ships as a single folder that opens directly in VS Code:
Learn AL with Claude/ ├── .claude/ │ ├── commands/ ← /start-1-1, /start-1-2 … /start-2-5 │ └── SCRIPT_INSTRUCTIONS.md ← teaching rules for the AI │ ├── lesson-modules/ │ ├── 1.1-introduction/ │ │ └── CLAUDE.md ← the lesson script │ ├── 1.2-tables-and-pages/ │ │ └── CLAUDE.md │ └── … (13 lessons total) │ ├── company-context/ │ ├── SCENARIO.md ← Nordic Outdoor Adventures backstory │ ├── CODING-STANDARDS.md ← AL naming conventions for the project │ └── EXTENSION-REQUIREMENTS.md │ ├── reference-code/ ← complete working AL examples ├── starter-extension/ ← pre-configured app.json & launch.json ├── course-structure.json ← lesson index and metadata └── README.md
The .claude/commands/ folder is what makes the slash commands work. Each file like start-1-1.md tells Claude Code which lesson script to load and how to begin. The SCRIPT_INSTRUCTIONS.md file sets the teaching rules — how to handle STOP markers, how to respond if a student is stuck, when to branch.
The company-context/ folder is the course “world.” Claude reads these files at the start of each lesson so it always knows who Nordic Outdoor Adventures is, what the coding conventions are, and what the extension is supposed to do.
The starter-extension/ gives students a pre-configured app.json and launch.json pointing at their BC sandbox, so no time is wasted on setup. Students write AL files into this folder throughout the course.
Why It Works
You write every line. Claude explains a concept, then waits for you to ask it to create the file. You see it appear, you can read it, and you ask questions before moving on. Nothing gets copy-pasted from a solution folder.
Errors are part of the lesson. If your extension doesn’t compile, Claude helps you read the error message, understand what it means, and fix it. You leave the course knowing how to debug AL — not just how to write it.
It adapts to you. The STOP markers pause the lesson at every concept boundary. If you’re lost, you say so. If you’re ready, you say that. The same script teaches differently depending on who is sitting at the keyboard.
VS Code + AL Language extension (free) · Claude / Anthropic account · A Business Central sandbox (SaaS trial or Docker)
Get the Course
The full course — all 13 lessons, the Nordic Outdoor Adventures scenario, reference code, and pre-configured starter extension — is available as a single download. Open the folder in VS Code, type /start-1-1, and you’re good to start learning AL.
Get Learn AL with Claude →
Watch the Course Demo on YouTube!
Share this:
- Share on Facebook (Opens in new window) Facebook
- Share on Reddit (Opens in new window) Reddit
- Share on X (Opens in new window) X
- Email a link to a friend (Opens in new window) Email
- Share on LinkedIn (Opens in new window) LinkedIn
- Share on Tumblr (Opens in new window) Tumblr
- Share on Pinterest (Opens in new window) Pinterest

