The Boot.dev Beat. November 2026
Learn AI Coding (with OpenCode) is live! We built it in collaboration with Dax Raad, one of the co-founders of OpenCode. In it, you'll use a coding agent to build an interpreter for a little language called SlopLang. October also brought a light mode (sorry) and a new lesson page with rearrangeable sections.
Non-sloppily,
Lane
Patch notes
1. Learn AI Coding
As I mentioned, our Learn AI Coding course is live, built with input from Dax Raad, co-founder of OpenCode.
It's about 20 hours long, and you'll use a coding agent to build a tree-walking interpreter for SlopLang. Along the way you'll learn how models, tools, context, skills, MCP servers, and plugins work, and you'll set up the tests, formatters, and type checkers that catch your agent's mistakes.
Now, you do need to know the basics of coding first, because this is not a vibe coding course. And we do use OpenCode, our favorite agent, but all the same concepts carry over to Claude Code, Codex, and the rest of em.
You do not need a paid AI subscription either. You can finish the course with free models through OpenCode Console, or use any existing paid ChatGPT, Claude, Gemini, etc account if you have one.
The course is also now part of the Backend, DevOps, and Data Analyst paths, right before the capstone. Notice that it comes at the end of the paths!!! That's because, while AI is amazing for productivity, it's not amazing for learning coding fundamentals, and will become a major crutch if you use it too often and too early.
2. Light Mode
Boot.dev now has a light mode. Click the theme button in the top nav or the footer to choose between Dark, System, and the option we (appropriately) labeled "Masochist".
3. Arrange Your Lesson Layout
You can now rearrange the lesson page! Click the "Arrange layout" button, move the panes where you want them, and save.
Your arrangement is stored on your account, and there's a reset button just in case you make a mess of it.
If you move the "tools" section (Boots and Spellbook) into its own column, the lesson can stay on screen while you scroll the tools. This is really nice if it bothers you to have to be constantly scrolling back and forth between the lesson and the tools.
4. A New Solution Viewer
Lesson solutions now have one continuous diff, so you can scroll through every file instead of clicking through them one at a time. You can collapse individual files and copy from them, and you can switch between the before, changes, and after views.
Changed files are listed above the full file tree, with previous and next buttons to jump between them.
5. Training Grounds Improvements
Training Grounds challenges are now edited automatically based on your feedback. Once a challenge has enough ratings, notes, and skip reasons, that context feeds into a new version of it. If the new version's ratings come in worse than the previous version, we just roll it back.
- Challenge search now has a toggle to show challenges you've already completed
- Rating a challenge no longer immediately navigates you away from it
- Generated challenges are less likely to include files we can't support
Importantly, this "automated editing and generation" ONLY applies to Training Grounds challenges, never to course lessons. Course lessons are meticulously hand-crafted by humans.
6. Boots Improvements
- Boots now sees your latest console output when you rerun your code, even if the code didn't change
- On mobile, there's now a send button for Boots chats, and Enter just adds a new line (fixed a Safari issue)
- Boots' Claude Opus model is now Opus 5.5
- When an AI provider fails, the error message now tells you which one (so we can
blame themfix it faster)
7. Course Updates
- Learn Python has a new lesson on early returns, and we simplified the game statistics lesson that was tripping people up early on
- The SQL normalization chapter now covers functional dependencies and candidate keys, and no longer implies that adding an
idcolumn fixes your 2NF and 3NF problems - Refresh tokens are now split into two lessons in HTTP Servers in Go (adding them, then refreshing and revoking them) and HTTP Servers in TypeScript (adding them, then refreshing and revoking them)
- HTTP Servers in TypeScript also has a new bearer tokens lesson
- The RabbitMQ Go and TypeScript courses have a new widget for visualizing vertical and horizontal scaling
- CI/CD in TypeScript now authenticates to Google Cloud with Workload Identity Federation instead of JSON keys
- AWS assignments no longer hardcode
us-east-1
8. Miscellaneous Improvements
- We refreshed the spellbooks across the whole catalog to fix examples and links, and to keep them from giving away lesson solutions.
- Lessons with generic repository checks now accept any public HTTPS Git clone URL, so you don't have to host your project on GitHub. Lessons with GitHub-specific checks still need GitHub.
- After finishing a course, you can now leave a short video review from your webcam or phone, instead of or alongside a text review (this would really help us out if you're willing to leave one!)
- CLI lessons now show a plain-English description for each step, and long commands and checks stay trimmed until you expand them
- The course catalog now shows the technologies each course uses
- New syntax highlighting across the site, including proper support for Markdown and JSONC code blocks
- Fixed stale salmon counts
- Fixed XP breakdowns that didn't add up when a reward included fractional XP
- Terminal output in shell lessons, along with the mobile Reset and solution buttons, now works with screen readers
- Runaway SQL queries now fail cleanly with memory and time limits
- The Asteroids window size check now allows a small margin of error
What Is Yet to Come
- Terraform course
- Bash scripting course
- Lua course
- A split of the "Memory Management in C" course into separate "C" and "Memory Management in C" courses
