[Екатеринбург, анонс] Botters of the Galaxy CodingHub в офисе Контура +8


Пора отвлечься от рабочих задач и попрограммировать что-нибудь необычное.
3 марта, в субботу, с 12:00 до 16:00 будем вместе писать ботов для игры.


Что случилось?


В ночь на 3 марта на платформе CodinGame.com стартует 10-дневное соревнование по созданию ботов для мультиплеерной игры. Какой именно игры — пока секрет, узнаем после начала соревнования. Пока известно только название — Botters of the galaxy — и тематика оформления:



Похоже, Звёздный Лорд пользуется Linux.


Что ещё за CodinGame?


CodinGame — платформа для обучения программированию в игровой форме. 10-дневные соревнования по программированию ботов — это один из форматов. Они провели больше десятка таких соревнований и знают в них толк. В частности, заботятся, чтобы входной барьер был невысокий — сносно работающего бота сможет сделать даже новичок.


С другой стороны, каждое соревнование собирает несколько тысяч участников и даёт возможность потягаться силами с крайне сильными соперниками. Битва в топе обычно идёт не на жизнь, а на смерть. Другими словами, интересно должно быть всем.



В недавнем соревновании Mean Max было 1033 участника со всего мира и 58 из России.


Ну так что за игра?


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


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



Стоп-кадр визуализатора из Mean Max.


Впрочем, повторяться никому не хочется, и авторы соревнований изо-всех сил стараются каждый раз придумать что-то существенно новое. Вот и в этот раз в анонсе пишут: However, I can tell you that they chose a type of game without precedent on CodinGame. Так что ждём сюрприза!


А мне-то это зачем?


Скажу прямо, умение писать ботов для игр мало кому нужно с практической целью. Но есть и другие причины этим заниматься.


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


Первая версия бота будет основана на простых эвристиках. Такой бот обыграет простых соперников, но высоких результатов не достичь без генетических алгоритмов, перебора с отсечениями и подобного. Соревнование даёт повод почитать про них, разобраться и применить.


Впрочем, главное другое — программировать ботов весело и драйвово :)


Ладно, а что ещё за Coding Hub?


CodinGame предлагает всем желающим создавать площадки в оффлайне, где местные кодингеймеры могли бы встретиться, познакомиться, обсудить соревнование, поделиться идеями и начать программировать ботов. Такие мероприятия называются CodingHubs.


Вот так выглядит Trello-доска для координации хабов:



Есть хабы в Антверпене, Каунасе, Кишинёве, Лионе, Медельине, Париже и Хожуве.


Мы решили сделать хаб в Екатеринбурге. Начнём на следующий день после ночного старта соревнования. Площадкой будет конференц-зал в офисе разработки Контура в Екатеринбурге.



Фотка с предыдущего хакатона на той же площадке.


Всё, что нужно — это зарегистрироваться и приехать 3 марта, в субботу, к 12:00 на площадку со своим ноутбуком.


В программе: пицца, обсуждение правил и стратегий, а также просмотр боёв наших ботов на большом экране. Должно быть весело :)


А чтобы было ещё веселее, ко встрече мы подготовим стартовые наборы — готовые репозитории со скучным и рутинным кодом: проект с зависимостями, классы объектной модели, ввод-вывод. Всё ради того, чтобы как можно проще было написать своего первого бота. За ночь мы планируем сделать стартовые репозитории для двух популярных у нас в компании языков программирования — C# и JavaScript. Впрочем, если вы любите другой язык — мы тоже будем вам рады. Просто вам будет чуточку сложнее.


В общем, если вы ещё ни разу не участвовали в чём-то подобном — это подходящий момент, чтобы попробовать. А там и до ICFP Contest не далеко. Если участвовали — удачный способ найти единомышленников в Екатеринбурге.


Регистрируйтесь на CodingHub в Екатеринбурге




К сожалению, не доступен сервер mySQL