Курс по Erlang в Днепропетровске

21 октября 2013

Давеча ездил в Днепропетровск по приглашению ПриватБанка, чтобы провести курс по Erlang для их программистов.

У ПриватБанка есть проекты на Erlang, причем уже в продакшене. Свой опыт они оценили позитивно. По объёму кода, скорости разработки и простоте поддержки Erlang оказался лучше, чем Java. И теперь у ПриватБанка большие планы на него. Вплоть до переписывания основного проекта Приват24, изначально написанного на Java, и нынче уже плохо справляющегося с нагрузками. Веру ПриватБанка в Erlang символизирует флаг с логотипом Erlang, висящий у главного офиса, вместе с флагами стран, где есть филиалы и партнеры банка.

Флаг с логотипом  Erlang

Тут можно задаться вопросом: почему пригласили именно меня, никому неизвестного программиста из Минска? При том, что, скажем в Киеве есть более опытные Erlang программисты. И они тоже проводят обучающие курсы.

А все потому, что 2 года назад я выступал с рассказом про Erlang на встрече scala.by. После той встречи осталось видео:

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

И какой из этого вывод? Будьте активны, выступайте на конференциях, делитесь опытом :)

Подробности о курсе

Содержание курса подробно изложено здесь. Предполагалось, что слушатели уже знакомы с основами языка. Нужно было сделать упор на его практическое применение в реальных задачах. И рассказать-показать инструменты, библиотеки, хорошие практики и т.д. -- всю инфраструктуру вокруг Erlang-разработки.

Слушателями были программисты из разных отделов ПриватБанка, как оказалось, с самым разным уровнем владения Erlang, и они по-разному воспринимали материал. Мне пришлось выбирать, на какой уровень ориентироваться. Решил ориентироваться на средний и выше среднего, а слабо знакомым с языком было трудно.

Было 3 дня занятий по 6 часов. Около 30 слушателей в аудитории + онлайн трансляция куда-то, которую смотрели еще кто-то :)

В первый день было много теории, но поработать ручками всем пришлось -- и в консоли, и в редакторе. Запланированную программу выполнили всю. За 6 часов я изрядно вымотался, это трудно :)

Второй день говорил меньше, больше работали. Экран моего ноута выводился на телевизоры. Сперва я рассказывал, что будем делать. Потом писал код, и рассказывал, что делаю. Потом ходил по рядам и помогал тем, у кого не получалось. Тут и сказался разный уровень аудитории. Кто-то справлялся быстро, кого-то приходилось ждать, а кто-то вообще выпадал из процесса на разных этапах. 2 блока программы (про инструменты и про тестирование) выполнили, 3-й (про библиотеки) не успели. Второй день для меня был полегче.

Третий день делали с нуля полноценный проект по всем правилам -- key value storage. Процесс проходил примерно так же, как и во второй день. Но код уже был посложнее, нюансов больше. Все фичи сделать не успели, но получили storage с сохранением на диск, с HTTP API, и покрытый тестами. Треть аудитории, человек 10, справились с этим. Этот день тоже был для меня изматывающим. Особенно трудно было вылавливать ошибки на самым разных компах, с разными ОС, разными редакторами и т.д. Но совместными усилиями мы справлялись.

Это был мой первый серьезный опыт в роли учителя. Мне такая роль понравилась. Интерес к курсу и языку был большой -- масса вопросов и по ходу занятий, и в перерывах, и после. Надо полагать, слушателям тоже понравилось и пошло на пользу :)

Материалы курса здесь. Часть этого кода я написал заранее, часть по ходу занятий. Видеосъемка была, но для внутренних нужд. Как я понял, в публичный доступ это выкладываться не будет.

Впечатление от команды ПриватБанка

Надо сказать, что имидж ПриватБанка в инете не очень хороший. Можно нагуглить массу негативных отзывов о качестве их сервиса. Сам я, по понятным причинам, услугами банка не пользовался, и сказать об этом ничего не могу. Но могу сказать о людях, с которыми общался лично :)

В основном я общался с людьми из Центра Электронного Бизнеса. Это подразделение хоть и является частью ПриватБанка, но имеет некоторую свободу и больше похоже на продуктовую IT компанию. Возглавляет лабораторию Витязь Александр Павлович. Собственно, вся эта движуха с Erlang: проекты, обучающий курс, флаг возле офиса -- его инициатива. Он не похож на топ-менеджера банка. Нет скучной серьезности и пафоса, а есть энтузиазм и желание захватить мир своими проектами. Энтузиазм заразительный, каким он и должен быть :)

Разработчики во главе с тимлидом -- Сергеем Харитичем, зараженные этим энтузиазмом, страдают (или наслаждаются) трудоголизмом. С утра до позднего вечера на работе. Надо сказать, банк страдает от болезней роста, и работы действительно больше, чем разработчики могут осилить в нормальном режиме. Надеюсь, они с этим справятся. Возможно, с помощью Erlang.

Меня встретили гостеприимно, поселили в пафосном отеле, опекали и не давали скучать -- ужинал все время с разными интересными людьми. Спасибо Ольге Худик за заботу :)

А в Днепропетровск я еще раз съезжу в феврале, на конференцию ErlangDnipro.

comments powered by Disqus