Программирование и боевое искусство: что общего?

Написание кода — ремесло, которое требует постоянного развития — считают участники инициативы Coding Dojo в EPAM. Лидер движения Александр из Киева рассказал, как «додзё»-практики повышают настроение у инженеров и почему игра помогает преуспеть в работе.

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

Итак, разработчики собираются в определенном месте и начинают выполнять «каты» — несложные задания, повторяя которые, прокачивают свое инженерное мастерство. У Coding Dojo могут быть различные формы. Одна из них — Codenjoy, или кодинг ради приятных эмоций. Участники создают свой бот, который затем в режиме реального времени соревнуется в какой-нибудь несложной игре — например, Tetris, Battlecity, Snake, Sudoku, Minesweeper, Moebius и других. Побеждает та команда или участник, чей бот набрал наибольшее количество очков.

Проектный менеджер Александр уже около года занимается продвижением инициативы Codenjoy в EPAM на глобальном уровне:

«Я начинал как обычный инженер на проекте в другой компании. Как-то на одной из конференций узнал о новом инструменте — Coding Dojo, который еще недавно был заморской диковинкой. На этом ивенте Johannes Brodwall продемонстрировал участникам одну из его реализаций. Затем вместе с коллегой мы решили написать что-то свое.

Так появился Tetris, а чуть позже мы дали этой игре наше собственное название — Codenjoy (от Code + Enjoy). Получилась активность интересного формата, которую мы регулярно проводили, везде, куда нас приглашали. Позже комьюнити Codenjoy поделилось на сэнсэев, или организаторов, подливающих масла в огонь;  участников — программистов, которые пишут код; и контрибьюторов — тех, кто начал писать свои собственные игры. В зависимости от результатов игры, участники получают обратную связь — почему лидер захватил инициативу, а соперники проиграли.

Таким образом, в прошлой компании Codenjoy развивался в качестве инициативы выходного дня, пока я не познакомился с руководителем программы Engineering Excellence в EPAM Сергеем Сергиенко. Он обратил внимание на Codenjoy и через несколько лет пригласил меня в компанию развивать эту инициативу. Таким вот образом я стал заниматься проектом выходного дня, но уже в качестве основной работы.

Во-первых, собираю, анализирую все наработки по этой теме, а также помогаю использовать их в разных локациях. Как правило, ИТ-специалисты всегда полны идей о том, как скрасить свои рабочие будни различными интеллектуальными встречами.

Во-вторых, ищу активных ребят, которые готовы заразиться идеей EPAM Dojo и сделать свой вклад в ее развитие. Например, готовы провести такую встречу в своей локации, улучшить формат, предложить его на своем проекте, в том числе заказчикам.

В-третьих, каждый день рассказываю и показываю EPAMерам, что такое Coding Dojo и как это работает, помогаю с материалами и организацией встреч в таком формате. Радует, что сейчас их проводится все больше и больше — это может быть тимбилдинг для участников производственного проекта либо тренинг в рамках внешней конференции для Talent Acquisition. Также мы работаем с тренерами, которые хотят разнообразить свои тренинги с помощью игровых элементов.

Coding Dojo — это инструмент геймификации для разных профессионалов. Мы умеем работать не только с Software-инженерами, но и с инженерами по автоматизированному тестированию (для  них у нас есть программа Coding Automated Testing Dojo). Кроме того, сотрудничаем с нетехническими специалистами (на базе игры I Can Code помогаем им получить базовые представления о программировании). Приятно, когда через два часа такой игры под присмотром фасилитатора HR-специалист говорит: «Здорово! Все не так сложно, как представлялось».

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

Когда тебе говорят: «Вот тебе песочница, вот лопаточка, пошли делать!», — в тебе пробуждается детский азарт к работе, продуктивность растет. Даже если накануне ты просто поиграл в Codenjoy с напарниками, а код ушел в утиль — настроение, которым ты зарядился, еще долго будет тебя подпитывать на боевом проекте. Лично мне Coding Dojo помогает получить тот фан, ту магию, которую я получал, когда только-только прикасался к программированию. Я рад, что в любой день недели можно зарядиться этим драйвом.

Играя в Coding Dojo, ребята становятся на путь изменений: видят, что их код недостаточно качественный и им нужно расти, ведь кто-то же победил их по очкам в 10 или 100 раз. Или же просто отвлекаются от основных проектных активностей и находят вдохновение в игре. Получается своеобразная кодинг-терапия «лекарством» для энтузиазма».

Присоединяйcя к инициативе Coding Dojo в качестве волонтера. На https://github.com/codenjoyme вы можете сделать fork проекта и работать с ним. С вопросами обращайтесь к Александру через контактную форму на нашем сайте.