Привет, Хабр! Мы — Настя, Эвелина и Миша — бэкенд-разработчики Т-Банка, пишем код на Scala и горим желанием его популяризировать. Мы собираем и агрегируем новости из разных источников, включая Scala Times, блог Petr Zapletal и канал Scala Nishtyaki, добавляем дополнительные новости и собственные комментарии. Мотивацию мы черпаем из желания развиваться и делиться полученными знаниями.

Приветствуем любую обратную связь! (づ ◕‿◕ )づ

Релизы

Собрали последние обновления популярных и полезных библиотек за пару месяцев:

Статьи

Делимся свежими статьями, репозиториями и исследованиями, которые нам показались интересными. А еще обозреваем ресурсы, где авторы используют Scala 3. Enjoy:

  • Fundamental Concurrency Problems and Solutions — если вы уже писали на Cats Effect/ZIO, считайте это повторением азов или хорошим погружением в базовые примитивы синхронизации.

  • Making ScalaSql boring again (with interesting new internals) — новая фича в версии 3.7: именованные кортежи, упростили либу и ее использование. 

    Миша

    Порой сделать либу скучной для использования куда лучше, чем предоставлять пользователю крышесносный API, копаясь в котором программист сам навставляет себе палок в колеса

  • A Beginner's Guide to Using Scala Metals With its Model Context Protocol Server — Vibe-кодинг для самых маленьких скалистов.

Eli Golin рассказывает базу про Tagless Final и Cats Effect. Глоток свежего воздуха для Scala-разработчиков посреди GPT-статей из medium-а и неаргументированных холиваров на тему сложности функционального подхода. Вы наверняка столкнетесь с таким в работе или же на обучающем курсе.

Видео и доклады

Собрали ссылки как на уже известные и популярные, так и на локальные каналы и видео про Scala:

  • Spec-first программирование и Scala 3.7 — пока вы едете в машине на шашлыки, кайфик будет поставить на фон, послушать главные новости и задуматься об эргономике на примере настройки Dactyl Manuform.

  • Slow-Auto, Inconvenient-Semi: escaping false dichotomy with sanely-automatic derivation — пишите библиотеки для реальных пользователей, а не гуру дериваций. Автор Chimney проводит сравнительный анализ библиотек и их подходов и делится своим видением будущего деривации в Scala.

  • 2 years of Rust after 10 years of Scala — the good, the bad and… not so ugly by Maciek Próchniak — спикер считает, что адаптация к написанию идиоматического кода Rust может быть сложной задачей сходу для заядлого Scala-разработчика (особенно из-за отсутствия GC). Автор делает выводы о том, что Rust лучше использовать для слоя данных, а Scala или Kotlin — для слоя управления. Почему? Посмотрите и узнаете.

  • Durable Event-sourced Workflow Monad... Seriously! — слышим последние месяцы из разных источников, в разных форматах о ребятах из Swissborg-а. То они миграцию написали, то вот вам business4s. В этот раз workflow4s — если вам не нравится формат статей, то велком на видеообзор. 

    Миша

    Молодая камунда omg

Tooling

Кусочек дайджеста, где мы рассказываем о появлении новых и улучшении уже существующих инструментов для разработки:

  • chimp — позвольте использовать вас искусственному интеллекту с помощью MCP-протокола, а для реализации есть softwaremill. 

    Миша

    Спорим, что в течение пары следующих месяцев упадет на наши глаза имплементация протокола A2A на Scala? ( ͡°( ͡° ͜ʖ( ͡° ͜ʖ ͡°)ʖ ͡°) ͡°)

Highlights

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

  • The Elements of Kyo — Interactively explore the codebase! — какой же кайф позалипать на визуализацию эффектов из kyo в виде таблицы Менделеева. Обязательно перейдите по ссылке и потыкайтесь!

  • From Vibe Coding to MUD — Part 1 — автор вайб-кодит D&D игровой сервер на Scala. Кто-то раньше в пет-проектах экспериментировал с библиотеками, а теперь выбирает AI-агентов и мучается, когда они отходят от инструкций. 

    Настя

    Коктейль из D&D и Scala в одном заставляет меня подписаться и следить за этой историей максимально пристально

  • Forest Fire Simulation — рубрика «Очумелые ручки»: соприкасается Rust и Scala в проекте на поиграться. Если у вас есть Linux, то вы можете смоделировать пожар в лесу при предложенной физике влияния воды и ветра.

  • etl4s — Pretty, whiteboard-style, config driven pipelines — нравятся стримы из Akka, но не хотите тянуть все зависимости? Не беда! Ребята из instacart проверили и написали свою либу для ETL-пайплайнов.

  • S2D — 2D-либа, объединяющая S2DL и OpenGL. Имеет CLI-шаблонизатор для быстрого старта разработки. 

    Настя

    Не Unity единым сыты будем

  • sicrograd — заглянуть под капот backprepogation и понять принцип работы автограда очень полезно. 

    Настя

    Для самых маленьких... нейросетей

  • miniclust — инструмент распределения баш-команд между тачками в экосистеме OpenMole. Scala-жемчужинка, приплывшая к нам из другой Вселенной!

  • abtesstr — PoC-системы AB-тестирования на Scala.

Комьюнити-движ

Раздел курьезных и любопытных событий в мире Scala-общества. Мы хотели бы видеть его объемным и живым. Если что-то пропустили или у вас есть предложения — ждем вас в комментариях:

  • from-javascript-to-scala — можете глянуть, как зазывают node-js-еров в Scala-мир ♡ (˘▽˘>ԅ( ˘⌣˘) 

    Настя

    Возможно, это привлечет ту аудиторию, свежую кровь, о которой никто не думал. Вечно мы стараемся переманить питонистов и джавистов, „улучшая“ синтаксис в Scala 3

  • Yet Another Scala 3 Migration Story — уже встречали этих работяг несколько раз, из нового: мужик был приятно удивлен, как gpt помогает ему разбирать ошибки компилятора при переписывании 170k строк кода в SwissBorg.

  • My experience migrating a PlayFramework app to Scala 3 — неполноразмерный гайд, скорее очередная заметка по миграции, но вы не поверите: тут тоже AI помогла уйти от использования TypeTag.

До встречи через месяц! ♡\( ̄▽ ̄)/♡

Над дайджестом работали @Melkaya_150cm, @EvieLynn, @haskiindahouse. Ваши идеи, предложения, обратную связь с удовольствием ждем в комментариях! <( ̄︶ ̄)>

Предыдущие выпуски

Комментарии (0)