Pull to refresh
0
JetBrains
Делаем эффективные инструменты для разработчиков

Тренинг по Scala в JetBrains: как это было

Reading time 2 min
Views 6.6K
14 сентября 2013 года в петербургском офисе JetBrains состоялся бесплатный однодневный тренинг по языку Scala.

Вел тренинг Александр Alefas Подхалюзин, разработчик плагина поддержки Scala в IntelliJ IDEA. За день он провел вводный практический курс по Scala, занятия шли с 12:00 до 19:00. Курс был предназначен для начинающих (или желающих начать), однако все участники должны были иметь опыт разработки на Java.

Тренинг мы устроили для того, чтобы напомнить, что для Java есть альтернатива. Разработчику подсознательно хочется, чтобы его подтолкнули в новом направлении: развиваться-то надо, а времени нет, да и вообще спать хочется. Так что тренинг должен был стать катализатором желания развиваться у тех, кто пришел, а заодно помочь решить, годится ли Scala для решения их задач.


Пришли 27 человек (записались 40). Это — отличный результат для бесплатного мероприятия: в среднем по России приходит половина. До конца дошли 18.

Среди участников были:
трое пришедших с Хабра;
две девушки (кстати, drop rate среди девушек — 0%, т.е. все, кто записался, пришли);
не менее 7% студентов.

Тренинг состоял из трех частей. В конце первой и второй надо было решить практическое задание (на Scala, естественно). Первая — вводная — часть была самой большой — 2,5 часа.

С задачами народ справлялся по-разному. Например, одной из задач была реализация быстрой сортировки на Scala. В основном люди писали так же, как если бы они писала на Java. Один человек написал то, что ожидалось:

def qsort(m: Array[Int]): Array[Int] =   
     if (m.length < 2) m
     else {
         val pivot = m(m.length / 2)
         qsort(m.filter(pivot > _)) ++ 
              (m.filter(pivot == _)) ++
              qsort(m.filter(pivot < _))
        }


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

Во-первых, кровь, как ей и положено после обеда, отлила от мозга и прилила к желудку, а во-вторых (нам кажется, что это было главной причиной) материал был объективно сложнее: изучали implicits в Scala. Вопросов задавали еще меньше (хорошо, что вообще задавали).

Некоторые практические задания были на смекалку (см. слайды). С ними не справился никто. В следующий раз будем просить не выключать смекалку при входе в офис.



Больше половины тех, кто выдержал тренинг до конца, сказали, что заинтересовались Scala. На самом деле, если кто-то твердо решил, что Scala ему не годится, это — тоже хорошо, потому что осознанный выбор инструмента — это правильно.

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

Диалог в кулуарах:
— Я понял процентов 30.
— Ох ты, круто! Ты еще много понял!


Будем надеяться, день тренинга стал днем рождения новых проектов на Scala в Петербурге.
Tags:
Hubs:
+17
Comments 19
Comments Comments 19

Articles

Information

Website
jetbrains.com
Registered
Founded
Employees
1,001–5,000 employees
Location
Чехия