Новое поколение программистов выходит из «Берлоги»

Новое поколение программистов выходит из «Берлоги»

Сегодня снова поговорим о будущем, но не абстрактном «светлом завтра», а конкретно — о нашем биологическом будущем, о детях. Кто они, следующее поколение айтишников, которые почти с пеленок знают, как использовать нейросети и написали первый код раньше, чем научились кататься на велосипеде? Те, кто играют в игры, которые сами же программировали.

Драмкружок, кружок по фото

Что за берлога, из которой выходит новое поколение программистов? Это компьютерная игра, где участник сам дописывает код, которого ему не хватает, чтобы достичь результата.

Подобно кружкам судо-, авиа- и прочего моделирования, которые были популярны у детей и родителей в сравнительно недалеком прошлом, платформа открывает подросткам доступ к инженерии и ИТ.

Официальное название проекта: «Национальная киберфизическая платформа “Берлога”», разработчик: Кружковое движение НТИ.

По словам Алексея Федосеева, президента Ассоциации участников технологических кружков и лидера «Берлоги», игровую сагу разработали для двух категорий старшеклассников:

  • увлеченных математикой, физикой, IT, робототехникой отличников по этим предметам;
  • школьников, которые интересуются компьютерными играми, прекрасно в них разбираются, но не знают, как этот интерес трансформировать в профессию.

Активные участники и призеры соревнований улучшают портфолио и получают баллы на платформе Кружкового движения НТИ для школьников «Талант». Портфолио пригодится в их будущей карьере и поможет при поступлении в вуз, так как победители чемпионатов получают до 10 баллов к ЕГЭ.

Школьники активно выкладывают свои первые программные наработки на облачные платформы для конкурсов и совместной работы: GitHub, Kaggle, Gitlab.

Участники Всероссийского киберспортивного турнира по программированию  
Участники Всероссийского киберспортивного турнира по программированию  

«Защита Пасеки»: канва и особенности игры

Мир «Берлоги» состоит из серии эпизодов, где персонажи — технологически продвинутые медведи: программисты, инженеры, биотехнологи. За них и играет школьник.

Их цивилизация более развита, чем человеческая, давно освоила дальний космос, способна на трансгалактические перелеты через «кротовые норы» и другие научно-фантастические возможности.

Жизненный источник энергии для медвежьей цивилизации — энергетический мёд. По сценарию игры один из медведей-программистов допустил оплошность в описании задачи для искусственного интеллекта. Он поручил нейросети создать ос-роботов для сбора энергомёда, но компьютерный разум понял задачу слишком буквально, и придуманные им насекомые стали не только собирать мёд, но и отбирать его у медведей.

Фрагмент комикса по мотивам игры 
Фрагмент комикса по мотивам игры 

Чтобы решить проблему, игрок программирует модули — это автономные дроны, которыми медведи защищают свою пасеку.

Зачем это игроку? Медведи всегда были мирной расой, и у них отродясь не было боевых роботов. Поэтому их устройства придется переделывать. Геймеру нужно переписать код роботов, которые умеют только чинить ульи, — теперь их нужно переучивать, чтобы противостоять рою киберос.

Событийное программирование игры

Автономные дроны, по задумке создателей «Берлоги», — это метафора любых «умных вещей». Навыки в их программировании пригодятся в будущей профессии. Школьник может кодировать прямо в игре на языке событийного программирования, получая преимущества, недоступные другим геймерам.

В этом виде кода системе не указывают, что ей делать, а проектируют ее поведение, исходя из разных состояний и событий. С данным алгоритмом хорошо знакомы те, кто работает с моделями конечных автоматов. Для описания их поведения используют международный стандарт UML (Unified Modeling Language) Statecharts как визуальный инструмент планирования и проектирования кода. Его очень просто можно продемонстрировать на примере работы бытовых электрических устройств.

Скажем, стиральная машина включается в тот или иной режим при наступлении определенных состояний. Например, «в барабан поступила вода» — машинка включила функцию «стирка», при условии, что дверца закрыта. Эти промежуточные состояния — триггеры дальнейшего действия.

UML Statecharts — широко распространенная система в промышленных, бытовых и других сложных механизмах и процессах. Автокодирование диаграммы состояний UML применяет, например, NASA для миссии марсоходов в проекте Mars Science Lab.

Создатели «Берлоги» адаптировали международный стандарт UML для русского языка и оформили как ГОСТ: способ Программирования расширенных иерархических машин состояний (ПРИМС). «Иерархические» означает, что одно состояние содержит другие — подчиненные. Например, состояние «включен» у компьютера может означать «работает», ожидание», «спящий режим». И эти подчиненные состояния позволяют уточнить, что именно происходит, когда компьютер находится в режиме «включен».

Пример программирования с помощью ПРИМС-диаграммы в «Берлоге», при котором изменяется модуль «Автобортник», это один из дронов-пчеловодов 
Пример программирования с помощью ПРИМС-диаграммы в «Берлоге», при котором изменяется модуль «Автобортник», это один из дронов-пчеловодов 

По клику игрок раскрывает диаграмму и видит код под капотом. Выйдя из игры, школьники в ходе программирования контроллеров осваивают расшифровку собранных ими конструкций на диалекте языка Си.

ПРИМС используют индустриальные разработчики, а создатели «Берлоги» довели его до школьников. В качестве дополнительного бонуса они учат самых продвинутых подростков управлять более сложным поведением, например, персонажей, а не модулей. Так закладывается на перспективу навык работы с автономными системами, оснащенными алгоритмами.

«Мы живем в мире, где нас окружают автономные системы, и мы ими должны научиться управлять. Мы начинаем работать с ребятами сразу с промышленного подхода к программированию автономных систем, а не с пошагового, императивного, с которого обычно начинают обучение программированию».

Алексей Федосеев

Для тех, кто хочет глубже разобраться в методе, разработчики подробно описали процесс работы. В «Инструкции редактора по программированию в “Берлоге”» есть все: помощь с меню, виды модулей, работа с командами, создание связей.

Молодые защитники медведей

За год с небольшим у «Берлоги» появились свои звезды — школьники, которые демонстрируют стабильно высокие результаты, побеждают в эпизодах «Берлоги» с помощью своих модифицированных модулей и периодически встречаются на турнирах.

С 17 по 19 октября в Уфе прошел Всероссийский киберспортивный турнир по программированию в игре «Берлога: Защита Пасеки». В турнире приняли участие 372 школьника и студента вузов и колледжей из 33 регионов Российской Федерации. По итогам отборочного этапа в финал вышли 20 команд — 60 участников из 14 регионов.

Финалисты Всероссийского киберчемпионата «Берлога» в Уфе, фото Кружкового движения НТИ 
Финалисты Всероссийского киберчемпионата «Берлога» в Уфе, фото Кружкового движения НТИ 

Тамерлан Газизов, восьмиклассник из Уфы, узнал о «Берлоге» еще на этапе зарождения проекта. С релиза игры в июне 2023 года он помогал искать баги, а также не пропустил ни одного мероприятия в своем родном городе, ставшем столицей игры.

«Программировать в «Берлоге» легко — все подводки на русском языке написаны, и есть понятные обучалки. Я быстро освоился, и, научившись, всегда затем занимал призовые места».

Тамерлан Газизов
Тамерлан Газизов проектирует этапы развития игры на киберчемпионате в Уфе, фото из личного архива  
Тамерлан Газизов проектирует этапы развития игры на киберчемпионате в Уфе, фото из личного архива  

Одиннадцатиклассника из Кирова Алексея Тимонова в «Берлогу» позвал учитель информатики, написав в чат об этом турнире.

«Сначала «Защита Пасеки» завлекла меня интеграцией программирования в игровой процесс, что достаточно непросто сделать. После мне уже стало интересно само программирование. Первые попытки сделать что-то стоящее ожидаемо провалились, но это лишь раззадорило меня».

Алексей Тимонов

А дальше Алексей заметил, что некоторые виды роботов очень похожи на стандартные классы в играх жанра RPG.

«Я начал отталкиваться от особенностей юнитов. Например, дрон «Автобортник». У него много здоровья, и есть способность самопочинки, чем я и воспользовался, сделав его «танком» — юнитом, принимающим на себя основной урон. Немного кода, и — вуаля! Теперь он самостоятельно может отбить волну дронов противника».

Алексей Тимонов
Алексей Тимонов пишет код на турнире, фото Кружкового движения НТИ 
Алексей Тимонов пишет код на турнире, фото Кружкового движения НТИ 

Как вселенная медведей-программистов будет развиваться дальше?

«Берлога: Защита Пасеки» вышла в июне 2023-го, а в октябре того же года состоялся релиз игры «Берлога: Академия». Совсем недавно разработчики выпустили еще две: браузерную новеллу «Журнал капитана Тундры» и симулятор полетов «Академия дронов: Медвежий патруль».

В этом году «Берлога» стала развиваться в направлении киберспорта, поэтому сейчас в работе игра «Защита Пасеки. Арена». Она, по мнению создателей, будет способствовать нетворкингу и развитию «берложьего сообщества» по всей стране. Перед основателями проекта стоит задача расширить его, сделать массовым и доступным международным проектом.

Стартовым полигоном была Башкирия. Сегодня там работает 90 кружков «Берлоги» по киберфизике, программированию, робототехнике, 3D-моделированию.

На Петербургском международном экономическом форуме «Берлога» подписала меморандумы о сотрудничестве с 21 регионом России.

«Вместе с регионами будем брать материалы, игры и встраивать их в учебный процесс. Педагоги могут организовывать турниры, мероприятия, а мы поможем им выстроить лесенку, наши дети от игр переходят к более сложным задачам — узнают, как программировать контроллеры, умные дома».

Алексей Федосеев

Разработчики «Берлоги» собираются создать моду на научно-технологическое творчество. А в будущем хотят делать игры для развития конкретных отраслей, например биотеха.

1313
2 комментария

Спасибо за публикацию, прочитал с удовольствием)

2

Это поколение еще всем даст жару

1