Teaching ML in the Age of AI Agents (3/3)

The long-promised third part of the series on AI in education.
Over the summer I vibe-coded myself an infrastructure that comes close to what I’d call ideal, one that should make my classes both more effective and more fun. But let me start not with the tool, but with why you’d still learn anything yourself when AI already knows it all.
1. People like hard things
Learning is hard, and plenty of people enjoy it anyway. People seem to enjoy overcoming difficulty in general: until 2014, for instance, the number of IRONMAN 140.6 finishers (3.8 km swim + 180 km bike + 42.2 km run) was growing by roughly 20% every year!
+20%
a year — that's how the number of IRONMAN 140.6 finishers grew all the way to 2014. Nothing outside these people required them to swim 3.8 km, ride 180, and then run a marathon.
2. You can’t fool yourself
On top of that, everyone knows perfectly well on the inside what they really know and can do, and what they can’t. Cheating for some external purpose is one thing (passing an exam so you don’t get expelled or told off, or getting through a job interview); the inner sense that you’ve figured something out and now you know it, where before you didn’t, is quite another.
The analogy with learning a new foreign language fits well here, and I think it’s clear to everyone: at first you know nothing at all, no sounds, no words, maybe not even a single letter of the alphabet. Meanwhile any modern language model “knows” more or less everything already, translates with ease, and even speaks any language present on the internet. We humans have to put a lot of time into a new language (say 5 weeks, 5 days a week, 5 hours a day to go from A2 to B1 :), and then, gradually, we start to remember and recognize words, read faster and read harder texts, split the continuous stream of speech into words and understand them, and eventually even start speaking ourselves.
You can cheat on almost any exam, sure, but you can't fool yourself — a person always knows very well roughly what their own level in a language is, and whether it sits above or below someone else's.
It’s the same in any other kind of education: AI now “knows” almost every field very well and hardly ever gets the basics wrong, but we humans still have to walk the path of mastering a skill ourselves. Only during and after that do we build up intuition, and then the professionalism without which, of course, you can’t prompt an LLM effectively.
3. The dream tool for ML classes
As for the teaching infrastructure itself, here’s a description of my version, which I plan to keep growing into the tool of my dreams.
Everything except teacher access is open — no sign-up, no SMS
Problems
A set of small, almost one-line tasks you have to code up and can check yourself right in the browser against local tests. Handy for practice sessions and for checking how well someone knows a language or a library.
Notebooks
Slightly larger tasks in the familiar Jupyter Notebook format.
Classes
The important part, with the courses. Each course is a set of sessions whose theory lives in slide decks right here in the browser, and in teacher mode you can add live handwriting to them — notes, explanations, conclusions — with a stylus from a tablet. The final version of the deck with all the annotations is saved as a PDF.
The sessions themselves can of course run in whatever format you can build in a browser =) You could launch a team game on solving problems or proving theorems against the clock, for instance.
Monitor
In teacher mode you can watch live, right as the practice session runs, which student is solving what and how fast.
Brainteasers
Just various beautiful math and programming puzzles from my personal collection. The section keeps growing.
Some material stayed in Google Colab, since far from every Python library has been ported to WebAssembly, but the system can obviously be extended and added to whenever I feel like it.
I will still ask students to register in order to take a course and have their homework checked. The test drive of the new system is next week already, August 17–21, at a mini ML course for high-school students.
I’ll stop here so as not to tire the dear reader, but if you’re interested in all the technical details — how and how long I prompted, which similar systems I used before — just leave a comment on LinkedIn or in the Telegram channel, and I’ll send the details over by DM.

Давненько обещанная третья часть постов про ИИ в образовании.
Как раз за лето навайбкодил себе близкую к идеальной в моём представлении инфраструктуру, которая поможет ещё эффективнее и веселее проводить занятия. Но начну не с неё, а с того, зачем вообще учиться самому, если ИИ и так всё знает.
1. Людям нравится преодолевать сложности
Несмотря на то, что учиться сложно, многим людям это нравится. Кажется, людям вообще нравится преодолевать различные сложности: например, до 2014 года количество финишёров IRONMAN 140.6 (3,8 км плавания + 180 км велосипеда + 42,2 км бега) росло примерно на 20% каждый год!
+20%
в год — так росло число финишёров IRONMAN 140.6 вплоть до 2014 года. Никакой внешней необходимости плыть 3,8 км, ехать 180 и бежать марафон у этих людей не было.
2. Себя не обманешь
Кроме этого, внутри себя любой отлично понимает, что он действительно знает и умеет, а что нет. Одно дело обманывать для каких-то внешних целей (сдать экзамен, чтобы не отчислили или не наругали, или успешно пройти интервью на работу), и совсем другое — внутреннее ощущение, что в чём-то разобрался и теперь знаешь, а раньше не знал.
Здесь очень уместна и, думаю, всем понятна аналогия с изучением нового иностранного языка: сначала вы вообще ничего не знаете, никаких звуков и слов, может быть даже ни одной буквы алфавита. При этом любая современная языковая модель «знает» уже более-менее всё, легко переводит и даже говорит на любом представленном в интернете языке. Нам же, людям, нужно вложить много времени в изучение нового языка (скажем, 5 недель, 5 дней в неделю, по 5 часов в день на переход A2 -> B1 :), и тогда, постепенно, мы начинаем помнить и узнавать слова, читать всё быстрее и всё более сложные тексты, разделять непрерывный поток устной речи на слова и понимать их, потом даже и говорить сами начинаем.
Понятно, что почти на любом экзамене можно считерить, но самого себя не обманешь — человек всегда очень хорошо знает, какой у него самого примерный уровень владения языком, насколько он выше или ниже уровня владения другого человека.
Так же и в любом другом образовании: сейчас ИИ очень хорошо «знает» почти любую науку и на базовом уровне уже практически никогда не ошибается, но нам, людям, нужно проходить путь овладения любым навыком самостоятельно. И только в процессе и после этого у нас нарабатывается интуиция и потом появляется профессионализм, без которого, конечно, невозможно эффективно промптить LLM-ки.
3. Инструмент мечты для занятий МЛ
Что касается непосредственно инфраструктуры для преподавания, то вот описание моего варианта, из которого планирую продолжать делать инструмент мечты.
Всё, кроме преподавательского доступа, открыто без регистрации и смс
Problems
Набор небольших, почти однострочных задач, которые нужно закодить и можно проверить себя прямо в браузере на локальных тестах. Полезно для практик и проверки знакомства с языком или библиотекой.
Notebooks
Задачи чуть бо́льшего объёма в аналоге привычных Jupyter Notebooks.
Classes
Важная часть с курсами. В каждом курсе набор занятий, теоретическая часть которых — это презентации со слайдами здесь же в браузере, которые в режиме преподавателя можно дополнять живыми записями, объяснениями и выводами стилусом с планшета. Финальная версия презентации со всеми написанными комментариями сохраняется в PDF.
При этом сами занятия и активность, конечно, могут быть вообще в любом формате, который вы можете реализовать в браузере =) Например, запустить командную игру по решению задачек или доказательству теорем на скорость.
Monitor
В режиме преподавателя видно вживую, непосредственно в процессе практики, кто из студентов, что и как быстро решает.
Brainteasers
Просто разные красивые задачки по математике и программированию из моей личной коллекции. Раздел дополняется.
Некоторые материалы остались в Google Colab, так как далеко не все библиотеки Питона портированы в WebAssembly, но понятно, что эту систему можно расширять и дополнять, если захочется.
Для прохождения курса и проверки домашек студентов всё же буду просить зарегистрироваться. Тест-драйв новой системы уже на следующей неделе, с 17 по 21 августа, на мини-курсе по МЛ для школьников старших классов.
На этом, пожалуй, остановлюсь, чтобы не утомлять уважаемого читателя, но если вам интересны все технические детали — как и сколько времени я промптил, какие похожие системы раньше использовал — то смело напишите комментарий в Линкедине или Телеграм канале, и я пришлю детали личным сообщением.