Comments 19
Со скалой трудно разобраться с наскоку, особенно после java. Там нужно очень много примеров и время подумать над каждым. Конечно однодневный формат такой возможности не дает.
6й слайд — фэспалм. 7й слайд — двойной фэйспалм. 9й — рук не хватило, вечерком попробую ещё раз.
В тот вечер не дошёл. Но всё-таки считаю что должен развёрнуто описать почему презентация произвела на меня столь удручающее впечатление.
1. Во-первых 6й слайд. Понятно что надо как-то отбивать расходы на помещение, но разлапистая бибилотека коллекций в принципе позволяет этим заняться попозже и с меньшим вредом для аудитории. Здесь же должно быть ровно 3 пункта, из низ 2 — код. «Install scala», "$ scala", "> println(«Hello, World!»)".
2. Слайд 7. Очень резкий старт. 3 неочевидные (хотя и модные) фичи. Люди ещё не умеют создавать замыкания но им уже показывают что у замыканий есть краткая форма…
3. 9й и далее. Всё ещё не создано ни одной функции, ни единого объекта… но уже пора знать что классов три вида (таки может типов:) ). Дальше куча слайдов об очень неблизких для новича проблемах. Статические члены, множественное наследование, свойства, обобщённые типы, вариантность? Зачем это всё людям которые не могут написать итерацию по списку?
4. Вторая часть. Продолжаются дебри типа implicits и TypeTag. При этом case class — 59й слайд. Пятьдесят, мать его, девятый слайд. Это простейшая и полезнайшая вещь, примерно 80% полезности всей этой функциональной движухи на 5м с конца слайде. Я даже достал Мартина с полки, у него это 15 глава из 35, до пропертей, до дженериков и до имплиситов.
1. Во-первых 6й слайд. Понятно что надо как-то отбивать расходы на помещение, но разлапистая бибилотека коллекций в принципе позволяет этим заняться попозже и с меньшим вредом для аудитории. Здесь же должно быть ровно 3 пункта, из низ 2 — код. «Install scala», "$ scala", "> println(«Hello, World!»)".
2. Слайд 7. Очень резкий старт. 3 неочевидные (хотя и модные) фичи. Люди ещё не умеют создавать замыкания но им уже показывают что у замыканий есть краткая форма…
3. 9й и далее. Всё ещё не создано ни одной функции, ни единого объекта… но уже пора знать что классов три вида (таки может типов:) ). Дальше куча слайдов об очень неблизких для новича проблемах. Статические члены, множественное наследование, свойства, обобщённые типы, вариантность? Зачем это всё людям которые не могут написать итерацию по списку?
4. Вторая часть. Продолжаются дебри типа implicits и TypeTag. При этом case class — 59й слайд. Пятьдесят, мать его, девятый слайд. Это простейшая и полезнайшая вещь, примерно 80% полезности всей этой функциональной движухи на 5м с конца слайде. Я даже достал Мартина с полки, у него это 15 глава из 35, до пропертей, до дженериков и до имплиситов.
Все верно. Цель была изначально неправильной, а именно рассказать как можно больше, сколько только возможно успеть. Цель достигнута, но ответ неоднозначный, насколько эффективным это окажется в итоге (зависит лишь от того, продолжат ли люди изучение Scala или нет).
Думаю, что если проведем что-то такое еще раз, то все переделаю, и расскажу в три раза меньше, но с введением в функциональное программирование.
Спасибо за замечание!
Думаю, что если проведем что-то такое еще раз, то все переделаю, и расскажу в три раза меньше, но с введением в функциональное программирование.
Спасибо за замечание!
трое пришедших с Хабра;
Полагаю события на Хабре — не лучший способ информирования.
А где еще вы распространяли информацию о мероприятии?
по рассылке людей, ранее говоривших нам, что им такое будет интересно, в комментарии к соответствующему вопросу, в событиях на timepad, в твиттере, в группе джавистов в ВКонтакте. В результате пришло даже больше людей, чем мы ожидали. Т.е. уровнем интереса мы полностью довольны. То, что не все они прочли о событии на Хабре — это нормально :)
implicits сначала взорвали мой мозг, но уже дома, отдохнув и еще раз переосмыслив, наконец смог поянть о чем говорил докладчик.
Спасибо вам за тренинг!
Спасибо вам за тренинг!
На coursera отличный вступительный курс есть. Кстати, насчёт конференции, а где вообще новости о ней были?
Кстати как раз сегодня начался, если Вы о Functional Programming Principles in Scala.
Он по второму кругу начался, я его ещё весной прошёл, но не нашёл, где знания применить и сейчас просто периодически пытаюсь олимпиадные задачки на ней решать для тренировки.
В ноябре продолжение будет.
Выскажу свое «фи». Иллюстрация scala-way на примере «быстрой» сортировки просто ужасна. Вы отдаете себе отчет, что в такой реализации на один вызов qsort происходит 4 раза создание и копирование массива? Конечно, это всего лишь пример, и он не обязан быть оптимальным, но зачем учить новичков наступать на самые большие грабли скалы — бездумное использование «красивых» методов, за которыми часто скрыты «лишние» операции.
На мой взгляд, лучше было бы придумать пример, который демонстрирует красивое рекурсивное решение, с использованием красивых фич скалы, при этом по перформансу не уступает императивному подходу. То есть, tail recursion, O(1) list prepending, List immutability, и т.д. Например, у Мартина Одерски в курсе все примеры были как раз такие.
На мой взгляд, лучше было бы придумать пример, который демонстрирует красивое рекурсивное решение, с использованием красивых фич скалы, при этом по перформансу не уступает императивному подходу. То есть, tail recursion, O(1) list prepending, List immutability, и т.д. Например, у Мартина Одерски в курсе все примеры были как раз такие.
А видео тренинга будет?
Sign up to leave a comment.
Тренинг по Scala в JetBrains: как это было