Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Привет! Я Юля, DevRel в Tinkoff.ru.
28 сентября Tinkoff вместе со Scala-сообществом России провели масштабную, но очень уютную встречу разработчиков, тестировщиков и всех неравнодушных к Scala. В статье я поделюсь впечатлениями, как все прошло.
Сначала — пара слов о том, для чего мы активно включаемся в такие мероприятия. Просто мы любим Scala, используем этот язык и очень хотим, чтобы сообщество развивалось и пополнялось интересными людьми.
Мы ушли от стандартного формата конференций и собрали ламповую встречу для близких по духу людей. Мы нашли самый уютный лофт в сердце Москвы — Deworkacy в «Красном Октябре» — и пригласили по-настоящему звездный состав спикеров.
Нам важно, чтобы конференция походила на встречу старых друзей, но при этом была на высоком уровне по содержательной части докладов и воркшопов. В итоге около 400 участников собрались послушать спикеров, поучаствовать в жарких дискуссиях и потусить на афтерпати.
Вопросы к спикерам и интерес к затронутым темам показали, что мы попали в самую цель и смогли угадать желания scala-сообщества.
Небольшой видео-пруф, передающий настроение: bit.ly/2IHtd02
Ссылки на видео докладов, фотоотчет и описание докладов под катом. Погнали!
Самый долгожданный гость программы — Джон Де Гуз. Джон открыл мероприятие вдохновляющим докладом про ZIO. Он начал с истории компьютеров, немного рассказал о законе Мура. Затем представил библиотеку ZIO, которая приводилась в сравнении с объектами future.
На основании доклада Джона можно сказать, что результат использования ZIO быстрее, оптимизированнее, прозрачнее… В общем, лучше, чем при использовании в аналогичной задаче future-объектов.
Ожидаемый вопрос зрителей: чем ZIO лучше cats.io или monix task? Спойлерить не будем, лучше посмотрите сам доклад :)
Видео доклада по ссылке.
Владимир Попов из Dins рассказал про типизированные саги. Под сагой подразумевается длительная транзакция, которая может быть представлена последовательностью подтранзакций. В своем докладе Владимир объясняет важность того, что все подтранзакции в последовательности должны быть выполнены успешно или компенсированы. Делает он это на очень понятном и интересном примере — процессе планирования отпуска.
Владимир показывает, как сложная система типов в Scala помогает легко решать трудные задачи описания и исполнения саг. Как говорится, лучше один раз посмотреть, чем сто раз описывать.
Добавим только, что уже в обсуждении слушатели с Вовой выяснили, что саги подходят под очень редкие кейсы. Но это скорее не универсальное, а нетривиальное решение.
Видео доклада по ссылке
Не могу не рассказать про эмоциональный и не отпускающий слушателя ни на секунду доклад Марины Морозовой.
Основной тезис доклада звучал так: «Говорят, что Scala задумывалась как лучшая версия Java. Но откуда же в ней тогда эти имплиситы и почему от них так болит?»
Марина детально и интересно рассказывает про имплиситы, про намерения dotty в отношении них, немного шутит, немного делится тем, о чем болит сердце каждого разработчика.
Видео доклада по ссылке.
Евгений Остапенко из Datahub рассказал про бесшовный доступ к данным в распределенных системах. Доклад может быть полезен тем, кто работает с распределенными системами, пилит микросервисы, да и всем, кто пишет на Scala.
Евгений описал реализацию системы доступа на примере использования несколькими микросервисами общей базы пользователей. Также Женя рассказал про то, какие были ожидания по характеристикам этой системы, и описал подробно каждую из них.
Видео доклада по ссылке
Виталий Гонта из Andersen поднял животрепещущую тему про автоматическую генерацию инстансов тайпклассов. Его доклад — о библиотеке magnolia и о том, какую боль она решает в сравнении со всем известной shapeless.
Видео доклада по ссылке
Михаил Муцянко из JetBrains поднял тему нюансов при сборке сложных артефактов, в частности scala-плагина для IJ. Для решения этой проблемы не зря написан плагин к SBT — он позволяет избавиться от императивного кода сборки.
Видео доклада по ссылке
У Александра Валентинова из Tinkoff.ru был доклад про XML.
Он написал новую библиотеку, которая делает из XML scala-кейсклассы и обратно. Саша рассказал, как она работает; сравнил производительность со scalaxb (это основная библиотека для XML в Scala сейчас).
Получилось, что она работает в несколько раз быстрее и потребляет в 2,5 раза меньше памяти!
Видео доклада по ссылке.
Много слушателей, много интересных вопросов и дискуссий было на докладе Никиты Мельникова.
Никита рассказал, как победить одну из болезней Scala — долгое время сборки. Бонусом затронули тему монорепозиториев, плюсы и минусы этого подхода.
Видео доклада по ссылке.
Александр Грызлов из Statebox в своем докладе рассказал про инженерию доказательств, модальные логики и их историю. Он показал способы реализации нескольких модальных логик в качестве систем типов для простейшего функционального языка. Доклад будет любопытен разработчикам, интересующимся формальной верификацией и устройством функциональных языков.
Александр Мыльцев в докладе поделился своим опытом работы с Dotty.
Он рассказал про работу над своей библиотекой на Dotty с открытым кодом для анализа инвестиционных инструментов, описал работу с этой библиотекой. Также Саша показал нюансы работы с Dotty и продемонстрировал готовый прототип.
Видео доклада по ссылке
Параллельно с докладами шли воркшопы.
Воркшоп Джона Де Гуза и Алексея Фомкина.
На воркшоп Джона мне не удалось протиснуться. А про Лешин я вам расскажу.
Леша представлял фреймворк Korolev, который позволяет рендерить веб-страницы и даже полноценные веб-приложения, задействуя только мощности серверной стороны. Выглядит это как scala-приложение, в котором, кроме серверной части, есть часть, отвечающая за генерацию страницы на сервере с использованием необычного доменного синтаксиса и всего 6-килобайтного Javascript на стороне пользователя.
В ходе работы с Korolev участники озвучили несколько идей и предположений, и все они были реализованы в прямом эфире.
Про Korolev был отдельный доклад от Василия Морковкина, в котором он описал опыт использования фреймворка для реализации административной панели на крупном проекте в Tinkoff.ru.
Видео доклада по ссылке.
Ниже будут фотографии, которые мы выложили в наши группы в ВК и ФБ. Фотки получились красивые — думаю, участникам будет приятно найти себя :)
Хоть я не пишу код на Scala, но по общению на конференции убедилась: доклады и воркшопы зашли. В хмурое осеннее утро мы наполнили лофт в центре Москвы довольными улыбками.
Очень горжусь, что нам с командой удалось стать частью комьюнити. Будем стараться, чтобы таких мероприятий стало больше :)
Юля
Ссылки на первую, вторую и третью часть фотоотчета в ВК
И первую, вторую и третью часть фотоотчета в ФБ.
28 сентября Tinkoff вместе со Scala-сообществом России провели масштабную, но очень уютную встречу разработчиков, тестировщиков и всех неравнодушных к Scala. В статье я поделюсь впечатлениями, как все прошло.
Сначала — пара слов о том, для чего мы активно включаемся в такие мероприятия. Просто мы любим Scala, используем этот язык и очень хотим, чтобы сообщество развивалось и пополнялось интересными людьми.
Мы ушли от стандартного формата конференций и собрали ламповую встречу для близких по духу людей. Мы нашли самый уютный лофт в сердце Москвы — Deworkacy в «Красном Октябре» — и пригласили по-настоящему звездный состав спикеров.
Нам важно, чтобы конференция походила на встречу старых друзей, но при этом была на высоком уровне по содержательной части докладов и воркшопов. В итоге около 400 участников собрались послушать спикеров, поучаствовать в жарких дискуссиях и потусить на афтерпати.
Вопросы к спикерам и интерес к затронутым темам показали, что мы попали в самую цель и смогли угадать желания scala-сообщества.
Небольшой видео-пруф, передающий настроение: bit.ly/2IHtd02
Ссылки на видео докладов, фотоотчет и описание докладов под катом. Погнали!
Самый долгожданный гость программы — Джон Де Гуз. Джон открыл мероприятие вдохновляющим докладом про ZIO. Он начал с истории компьютеров, немного рассказал о законе Мура. Затем представил библиотеку ZIO, которая приводилась в сравнении с объектами future.
На основании доклада Джона можно сказать, что результат использования ZIO быстрее, оптимизированнее, прозрачнее… В общем, лучше, чем при использовании в аналогичной задаче future-объектов.
Ожидаемый вопрос зрителей: чем ZIO лучше cats.io или monix task? Спойлерить не будем, лучше посмотрите сам доклад :)
Видео доклада по ссылке.
Владимир Попов из Dins рассказал про типизированные саги. Под сагой подразумевается длительная транзакция, которая может быть представлена последовательностью подтранзакций. В своем докладе Владимир объясняет важность того, что все подтранзакции в последовательности должны быть выполнены успешно или компенсированы. Делает он это на очень понятном и интересном примере — процессе планирования отпуска.
Владимир показывает, как сложная система типов в Scala помогает легко решать трудные задачи описания и исполнения саг. Как говорится, лучше один раз посмотреть, чем сто раз описывать.
Добавим только, что уже в обсуждении слушатели с Вовой выяснили, что саги подходят под очень редкие кейсы. Но это скорее не универсальное, а нетривиальное решение.
Видео доклада по ссылке
Не могу не рассказать про эмоциональный и не отпускающий слушателя ни на секунду доклад Марины Морозовой.
Основной тезис доклада звучал так: «Говорят, что Scala задумывалась как лучшая версия Java. Но откуда же в ней тогда эти имплиситы и почему от них так болит?»
Марина детально и интересно рассказывает про имплиситы, про намерения dotty в отношении них, немного шутит, немного делится тем, о чем болит сердце каждого разработчика.
Видео доклада по ссылке.
Евгений Остапенко из Datahub рассказал про бесшовный доступ к данным в распределенных системах. Доклад может быть полезен тем, кто работает с распределенными системами, пилит микросервисы, да и всем, кто пишет на Scala.
Евгений описал реализацию системы доступа на примере использования несколькими микросервисами общей базы пользователей. Также Женя рассказал про то, какие были ожидания по характеристикам этой системы, и описал подробно каждую из них.
Видео доклада по ссылке
Виталий Гонта из Andersen поднял животрепещущую тему про автоматическую генерацию инстансов тайпклассов. Его доклад — о библиотеке magnolia и о том, какую боль она решает в сравнении со всем известной shapeless.
Видео доклада по ссылке
Михаил Муцянко из JetBrains поднял тему нюансов при сборке сложных артефактов, в частности scala-плагина для IJ. Для решения этой проблемы не зря написан плагин к SBT — он позволяет избавиться от императивного кода сборки.
Видео доклада по ссылке
У Александра Валентинова из Tinkoff.ru был доклад про XML.
Он написал новую библиотеку, которая делает из XML scala-кейсклассы и обратно. Саша рассказал, как она работает; сравнил производительность со scalaxb (это основная библиотека для XML в Scala сейчас).
Получилось, что она работает в несколько раз быстрее и потребляет в 2,5 раза меньше памяти!
Видео доклада по ссылке.
Много слушателей, много интересных вопросов и дискуссий было на докладе Никиты Мельникова.
Никита рассказал, как победить одну из болезней Scala — долгое время сборки. Бонусом затронули тему монорепозиториев, плюсы и минусы этого подхода.
Видео доклада по ссылке.
Александр Грызлов из Statebox в своем докладе рассказал про инженерию доказательств, модальные логики и их историю. Он показал способы реализации нескольких модальных логик в качестве систем типов для простейшего функционального языка. Доклад будет любопытен разработчикам, интересующимся формальной верификацией и устройством функциональных языков.
Александр Мыльцев в докладе поделился своим опытом работы с Dotty.
Он рассказал про работу над своей библиотекой на Dotty с открытым кодом для анализа инвестиционных инструментов, описал работу с этой библиотекой. Также Саша показал нюансы работы с Dotty и продемонстрировал готовый прототип.
Видео доклада по ссылке
Параллельно с докладами шли воркшопы.
Воркшоп Джона Де Гуза и Алексея Фомкина.
На воркшоп Джона мне не удалось протиснуться. А про Лешин я вам расскажу.
Леша представлял фреймворк Korolev, который позволяет рендерить веб-страницы и даже полноценные веб-приложения, задействуя только мощности серверной стороны. Выглядит это как scala-приложение, в котором, кроме серверной части, есть часть, отвечающая за генерацию страницы на сервере с использованием необычного доменного синтаксиса и всего 6-килобайтного Javascript на стороне пользователя.
В ходе работы с Korolev участники озвучили несколько идей и предположений, и все они были реализованы в прямом эфире.
Про Korolev был отдельный доклад от Василия Морковкина, в котором он описал опыт использования фреймворка для реализации административной панели на крупном проекте в Tinkoff.ru.
Видео доклада по ссылке.
Ниже будут фотографии, которые мы выложили в наши группы в ВК и ФБ. Фотки получились красивые — думаю, участникам будет приятно найти себя :)
Хоть я не пишу код на Scala, но по общению на конференции убедилась: доклады и воркшопы зашли. В хмурое осеннее утро мы наполнили лофт в центре Москвы довольными улыбками.
Очень горжусь, что нам с командой удалось стать частью комьюнити. Будем стараться, чтобы таких мероприятий стало больше :)
Юля
Ссылки на первую, вторую и третью часть фотоотчета в ВК
И первую, вторую и третью часть фотоотчета в ФБ.