Все началось 3 года назад. Первое апреля 2017, субботнее утро. Первый урок по Java-разработке единственного на тот момент курса в OTUS. 60 пар глаз внимательно следят за преподавателем Виталием Чибриковым. Он автор программы и сооснователь OTUS, за плечами которого 12 лет разработки и опыт преподавания в Технопарке Mail.ru.
Преподавательская машина времени
Мы просим Виталия мысленно перенестись в момент работы над программой.
OTUS: Как ты решал, какие знания дать?
— Мы хотели заинтересовать людей, которые серьезнее погружены в сферу программирования. Не новичков, а специалистов с некоторым опытом. До нас этим никто не занимался, поэтому не у кого было подсмотреть, как делать.
Тогда я старался строить программу так, как будто хочу научить самого себя пять лет назад. Подход оправдал себя и стал основой методики OTUS. Мы всех преподавателей готовим так:
«Вспомните, каким вы были 5 лет назад. Вспомните, какой путь вы прошли. Помогите своим студентам пройти этот путь быстрее».
Именно так в курс по Java вошел большой, на 2 недели, блок по архитектуре, а также алгоритмы и многопоточность. Потому что в этих знаниях я нуждался на профессиональном пути, и в них 100% будут нуждаться те, кого мы собираемся учить.
Хронологический трюк на уроках
В проведении занятий тоже была своя хитрость. В начале урока преподаватель анонсирует список тем. Прежде чем приступить к теории, он показывает текст домашнего задания и проводит опрос, сколько студентов его поняли. Обычно сразу готовы идти делать 1-5 человек. После урока преподаватель повторяет опрос и по его результатам можно понять, на сколько хорошо прошел урок. Подход заметно улучшает концентрацию: когда студенты слышат в лекции ключевые слова или определения из домашнего задания, они понимают, что на этом моменте надо сфокусироваться.
OTUS: Есть еще какие-то особенности в построении уроков?
— Есть. Например, сложность растет к концу занятия. Преподаватель постепенно углубляется в тему так, что под конец разбирает частные ситуации и нюансы. Когда последние материалы поняли и обсуждают 2-3 человека в чате, а остальные сидят и пытаются осмыслить информацию — это, как говорится, не баг, а фича. Ее смысл в том, что скачок в росте происходит, когда есть за кем тянуться, когда знания бросают тебе вызов, а не подаются на блюдечке.
Тоже самое и с домашними заданиями. Мы не прописываем, что нужно делать, а ставим приближенную к производственным задачу и студент сам думает, каким путем ее решить. Проверяя, преподаватель оценивает решение и, может дать совет, как его оптимизировать.
Самая первая группа была очень сильной. Студенты много спрашивали, и мы много дискутировали — очень похоже на платоновскую академию, где не было привычной вертикали ученик-учитель, а люди с разным опытом приходили делиться знаниями и совершать совместные открытия. В результате три студента с первого запуска вернулись к нам уже как преподаватели. Одному из них, Сергею Петрелевичу, я передал руководство курсом.
2 секрета вечной молодости онлайн-курсов
Сергей Петрелевич уже более 15 лет в профессиональном программировании, и сейчас работает в Raiffeisen Bank и руководит курсом по Java в OTUS. Мы позвонили ему и попросили рассказать о своем подходе к обучению.
OTUS: Ты сохранил те принципы, на которых строил курс Виталий Чибриков? Что изменилось?
— Подход и основная часть программы сохранились, но от запуска к запуску мы все равно довольно много составляющих обновляем. Во-первых, с методологической точки зрения. Мы все время думаем, как будет понятнее для студентов, учитываем сложности, с которыми они сталкиваются при выполнении домашек. Во-вторых, обязательно происходит обновление технической части. Я и другие преподаватели — практикующие специалисты, мы постоянно вовлечены в рабочие процессы, находим новые решения. Кроме того, Java обновляется раз в полгода, появляются новые фичи, новые веяния. Всем этим мы делимся со студентами. Если конкретнее пройтись по программе то вот, что я включил в нее, когда принял руководство курсом:
- В первом модуле больше погружаемся в байт код и class loader
- В третьем модуле добавили изучение Spring и технологических основ его работы
- В четвертом модуле сделали детализацию того, как работает Java с многопоточностью
- В целом по курсу актуализировали примеры, чтобы они соответствовали состоянию Java и тому, как на задачи в рамках изучаемых тем смотрят сами джависты
OTUS: Как ты добиваешься того, чтобы курс сохранял актуальность от запуска к запуску?
— У курса «Java-разработчик» есть два секрета вечной молодости. Первый — в адаптации знаний. Мы не привязываемся к конкретному релизу, а учим применять навыки в реальной жизни, даем долгосрочные тренды. Плохой подход — фокусироваться на конкретных новых фичах, правильнее — изучать философию и концептуальные основы языка. Тут все как в жизни: если научился закручивать гайки, то модель шуруповерта не имеет значения.
Второй секрет — формат живых вебинаров. Это самый естественный способ актуализировать информацию и включать в фундаментальные вещи какие-то ситуативные нюансы. Каждый запуск уникален: его определяют вышедшие обновления, изменившийся опыт преподавателей и бэкграунд людей в группе.
Было даже такое, что темы по запросам студентов становились частью программы. Например, как-то нас попросили рассказать про нормализацию данных в реляционных базах данных. Мы посмотрели и поняли, что действительно полезная для большинства информация, поэтому включили ее в курс.
В целом, когда речь идет о продвинутом уровне знаний, сообщество играет решающую роль. Даже самый экспертный эксперт всегда ограничен своим опытом, а значит, в стороне может остаться какой-то ценный нюанс. Очень хорошо, что сейчас у нас 6 преподавателей. Вместе нам проще делать программу более полной, разносторонней, распределять нагрузку и углубляться в каждую тему.
OTUS: Следующий запуск стартует уже 28 марта. Что-то кардинально новое в нем появится?
— Перед юбилейным 15-м запуском мы существенно переработали курс.
Первое изменение, которое повлияло на всю программу: с Maven мы перешли на более современный сборщик Gradle. Во-вторых, мы еще глубже погрузились в фреймворк Spring. Добавили вебинар и новое домашнее задание: разработать основной компонент Spring — контекст.
Приглашаем на курс «Java-разработчик» всех, кто ищет челленджа. Вас ждут задачи, приближенные к промышленным заданиям Middle-уровня, углубленные знания по Java, архитектуре, паттернам и многопоточности. И много-много переосмысленного личного опыта практикующих экспертов, которые учли и дадут именно те знания, которые пригодятся вам уже сейчас и останутся актуальны в будущем.
Если чувствуете в себе готовность и силы расти в мастерстве, проходите вступительный тест и записывайтесь на День открытых дверей 25 марта. Сергей Петрелевич подробно расскажет про обновленную программу курса и ответит на все вопросы об обучении. До встречи в OTUS!
gotoxy
Если курс по ЯП никогда не стареет, то у меня 3 варианта:
И ни в одном варианте повода для гордости не вижу.