
Sign up to save your podcasts
Or


В 96-м выпуске подкаста Javaswag поговорили с Егором Пишим, Java-разработчиком из команды PVS-Studio.
Обсудили, как войти в Java через моды и серверы Minecraft, почему мир кубов живет на Netty и Gradle, как грамотно организовать мультимодульные проекты с помощью build-logic и type-safe accessor’ов, а также заглянули под капот разработки статических анализаторов кода (от поиска багов и Taint-анализа до соответствия ГОСТам).
В 95 выпуске подкаста Javaswag поговорили с Максимом Сенокосовым о фреймворке Quarkus, переходе на него со Scala, оркестрации с помощью Quarkus Flow, Project Leyden, оптимизациях Jackson и о том, существует ли настоящий Developer Joy в энтерпрайз-мире.
00:00 Начало
00:25 Как Макс познакомился с Quarkus: миграция со Scala
02:08 Spring vs Quarkus в Cloud Native
04:52 Developer Joy: почему в эпоху Java EE о радости разработчика никто не думал
05:44 Интерес выходцев из Java EE
07:35 Kubernetes-native
09:22 Quarkus — платформа для «скучного» среднего стека
11:20 Hibernate, аугментация байт-кода в build-time и Quarkus Panache
14:05 Декларативные HTTP-клиенты на интерфейсах
15:31 Боль с нестандартными протоколами
17:09 Онбординг новых разработчиков
19:19 Quarkus Flow:
26:48 Project Leyden
32:43 Контейнеризация c Google Jib
35:08 Драма вокруг Jackson
45:32 Помогает ли AI писать на Quarkus так же хорошо, как на Spring?
48:50 Непопулярное мнение: корень всех бед с Hibernate — бизнес-логика в JPA-сущностях
Гость:
Упомянутые ссылки и материалы:
Ссылки на подкаст:
В 94-м выпуске подкаста Javaswag поговорили с Николаем Шипяковым, Java-разработчиком, который провел всю свою карьеру в финтехе и суровом энтерпрайзе. В этом эпизоде мы проследили эволюцию энтерпрайз-решений: от тяжеловесных вендорских платформ вроде IBM WebSphere и IBM BPM, где бизнес-логика «рисовалась кубиками», до современных подходов со Spring, Kotlin и Camunda.
Николай поделился историей о том, как на хакатоне зародилась идея создать собственный Kotlin DSL для описания бизнес-правил, который успешно заменил неповоротливые решения и прослужил долгие годы. Мы также разобрали архитектурные кейсы, обсудили, как подружить синхронные REST-вызовы с асинхронными процессами в Camunda при помощи Kafka и Kotlin Flow. В завершение выпуска поговорили о выборе оркестраторов (Camunda 7, 8, Temporal), внутренней кухне организации ИТ-конференций и обсудили непопулярное мнение о том, почему gRPC зачастую переоценен в энтерпрайзе.
00:00:22 Приветствие
00:01:43 с .NET на Java и первый крупный проект для Альфа-Банка
00:04:43 Каким был энтерпрайз в десятых годах
00:09:04 Переход в Тинькофф (Т-Банк) в 2015 году:
00:16:53 Смена технологического стека: отказ от решений IBM в пользу оркестратора Camunda в связке со Spring и Kotlin
00:23:33 Что такое Camunda простыми словами: почему этот инструмент удобно использовать как надежную стейт-машину для сложных распределенных транзакций
00:27:11 Идея с хакатона: создание кастомного Kotlin DSL для удобного описания бизнес-правил (вместо визуальных редакторов для бизнеса), который стал успешным внутренним продуктом
00:33:01 Преимущества подхода “Contract/Code First”: тестирование, контроль версий в Git и трейсинг процессов, написанных на Kotlin DSL
00:47:40 Внутренняя мобильность в Т-Банке: почему разработчику полезно менять проекты и как найти команду сильных сеньоров внутри одной компании
00:53:42 Разбор архитектурного кейса: как объединить асинхронный процесс Camunda и синхронный REST-контроллер с использованием топиков Kafka и Kotlin Flow
01:01:17 Очереди в энтерпрайзе: в каких случаях стоит использовать Kafka, а когда для обработки задач подойдет PostgreSQL
01:05:46 О важности observability (наблюдаемости): история инцидента со 100% загрузкой CPU в базе данных из-за отвалившейся репликации PostgreSQL
01:09:02 Переход в стартап и проблема выбора: почему старушка Camunda 7 до сих пор актуальнее, чем Temporal или платная Camunda 8 с закрытой архитектурой
01:20:18 Организация собственной технической Java-конференции от компании: сбор программы, уникальные доклады и почему платные билеты улучшают отношение аудитории
01:32:18 Непопулярные мнения от гостя: почему группа Ария без Кипелова звучит отлично, и почему технология gRPC часто применяется в энтерпрайзе не по делу
01:39:23 О важности софт-скиллов
📚 Упоминания в выпуске
Гость https://ru.linkedin.com/in/nikolay-shipyakov-692a48b1
В этом выпуске к нам пришел Паша Финкенштейн — Developer Advocate в BellSoft, человек с нестандартным бэкграундом и огромной энергией. Мы поговорили о том, как политолог и психолог стал экспертом по Java, обсудили менеджерские и архитектурные фейлы, вспомнили забытое искусство правильного дебага и прошлись с критикой по Ktor, Kotlin Multiplatform и современному вектору развития JetBrains.
00:00:41 Знакомство с гостем. Паша Финкенштейн: Developer Advocate, фанат настолок и 3D-печати.
00:02:19 Шок-контент: политология, «Майн кампф» и диплом по психологии в бизнесе. Как Паша жил без профильного ИТ-образования.
00:06:34 Старт в ИТ через боль и техподдержку. Первые строчки кода и необычные курсы по Java без заумной теории.
00:09:01 Вторичный мониторинг АЭС в Сибири, хардкорный Eclipse RCP и мертвые технологии: GWT, Wicked, TeaVM.
00:18:12 Внезапное тимлидство и классические менеджерские ошибки (олимпиадные задачки на собесах — не надо так!).
00:25:00 Утерянное искусство дебага. Почему ставить 20 обычных брейкпоинтов — это плохо, и как правильно использовать логпоинты и условные остановки.
00:30:42 ДомКлик и продукт без багов в проде (почти). Разбираем эпичную архитектурную ошибку с parallelStream, HikariCP и Kubernetes health-чеками.
00:40:41 Опыт перехода в новую компанию сразу всей командой: вин-вин для всех или скрытые риски?
00:46:47 Суровый менеджерский взгляд на переписывание кода, рефакторинг и внедрение новых языков (например, Zig) ради перформанса.
00:51:12 Почему Паша ненавидит овертаймы, ночные онколы и как жестко разделять работу и личные pet-проекты.
00:58:15 Как управлять 40+ людьми на позиции CTO в Home Credit Bank и почему этот опыт заставил вернуться поближе к коду.
01:03:03 Lamoda. Data Engineering, старт DevRel-карьеры и легендарный “Speaker’s Club” Жени Голевой (формат 5-минутных докладов без слайдов).
01:07:17 Секреты успешных докладов на примере турне “Kotlin: 2 года в продакшене, ни единого разрыва”.
01:14:42 Три главные книги разработчика от Паши (спойлер: Java Concurrency in Practice нужно перечитывать каждый год).
01:17:10 Попадание в Big Data Tools от JetBrains через вопросы к спикеру после доклада.
01:22:49 Как сломать языковой барьер, начать думать и шутить на английском (экстремальный метод из Египта).
01:31:30 Непопулярное мнение №1: Ktor — не для Enterprise (нет DI, типизации рутов), а тулинг Kotlin Multiplatform (KMP) — это главный заградительный барьер технологии.
01:39:56 Непопулярное мнение №2: Пессимистичный прогноз будущего JetBrains. Отставание в AI (Claude обходит AI Assistant), медленный Fleet, закрытие Space и параллели с Borland. IDE Zed как альтернатива.
01:47:32 Философия подписок: почему IntelliJ IDEA Community и Ultimate — это правильный подход к монетизации.
01:50:22 Текущие задачи в BellSoft: переписывание документации с помощью ИИ и помощь в создании контента.
01:53:10 Почему Claude не заменит программистов. Код-ревью и архитектура — то, в чем LLM всё ещё сильно ошибаются (разбираем проблему N+1 в jOOQ, написанную ИИ).
📚 Упоминания в выпуске
Книги:
Java Concurrency in Practice (Brian Goetz)
Гость https://www.linkedin.com/in/asm0dey/
В этом выпуске мы погружаемся в мир функционального программирования вместе с Никитой Волковым, архитектором и разработчиком на Haskell и Rust. Обсуждаем, почему «чистота» функций — это не ограничение, а суперсила, как монады помогают нам в повседневной Java-разработке и почему будущее за строгими контрактами и DSL.
Во второй части выпуска Никита рассказывает о своем проекте pGenie — инструменте для работы с PostgreSQL, который предлагает альтернативный взгляд на интеграцию с базами данных, делая SQL «источником истины».
00:00:00 Начало
00:02:01 Эволюция мышления: путь от PHP и Scala к Haskell и Rust.
00:07:37 Java 8 vs Haskell. Истинная чистота и детерминизм
00:15:03 Функциональщина, монады, функторы и концепция Optional
00:27:59 Property-based testing
00:36:51 Как FlatMap и монада STM управляют недетерминированным внешним миром
01:01:34 Проект pGenie. Почему Рич Хикки критиковал ORM и в чем боль синхронизации контрактов
01:13:29 Философия OpenAPI для баз данных. Взгляд на БД как на изолированный микросервис со статической структурой запросов
01:38:06 Workflow разработки с pGenie: генерация типизированного Java-кода и защита схемы от даунтайма через файловые сигнатуры
01:50:56 Тренды Open Source в эпоху ИИ: драма вокруг генерации кода, ИИ-слоп и борьба с агентами через «пасхалки» в коммитах
01:59:51 Совет стартаперам и Рубрика «Непопулярное мнение»: почему ИИ убьет динамические языки программирования
Гость: Никита Волков https://github.com/nikita-volkov
Проект: pGenie на GitHub
Книга: «Learn You a Haskell for Great Good! https://learnyouahaskell.github.io/chapters.html
“Консалтинг Никиты” https://codemine.io
В этом выпуске мы выходим за рамки JVM и погружаемся в мир системного программирования. У нас в гостях Дмитрий Свиридкин — Senior Rust/C++ разработчик, автор книг про неопределенное поведение (UB Book) и язык Rust (Crab Book), а также человек, успевший поработать над радарами, роботами и облаками в AWS.
Мы обсудили, почему C++ всё еще жив (и даже обзавелся линейной алгеброй в стандарте), в чем магия «борроу-чекера» в Rust и почему переход на Rust не всегда означает мгновенный прирост производительности. Отдельный блок посвящен «кухне» Big Tech: Дмитрий честно рассказал, почему ушел из Amazon, как корпоративная политика душит хорошие технические идеи и почему «Bar Raiser» — это не всегда про качество кода.
00:00 Старт
01:22 Rust-разработчик в гостях у Java-разработчика
02:10 От распознавания речи и радаров до роботов и облаков в AWS
09:59 Почему олимпиадники выбирают C++
23:22 Undefined Behavior
28:57 Use After Free
42:37 Первая встреча с Rust
47:31 Как переписать проект за день
54:41 Линейные типы
01:11:03 Send и Sync: как Rust защищает от Data Race
01:24:36 Почему Actix может быть болезненным для джависта
01:37:35 Жизнь в Amazon (AWS)
01:42:00 Дизайн-доки и политические игры: почему в Big Tech сложно делать «просто хороший код»
01:53:03 Непопулярное мнение
Ссылки и упоминания
Ссылки на подкаст:
«Правда ли, что тесты в мобильных приложениях — это пустая трата времени? Почему Xcode называют “тихим ужасом” и почему iOS-разработчики до сих пор его терпят?
Сегодня в подкасте Java Swag мы погружаемся в мир Android, Compose и Kotlin Multiplatform. У нас в гостях человек, который знает о мобильной экосистеме JetBrains всё — Константин Цховребов, разработчик в команде Compose Multiplatform.
Мы обсудим путь Кости от первого Android-приложения на слабом нетбуке в 2010 году до техлида в JetBrains. Поговорим о том, как Kotlin захватил мобильный мир, почему “галера” — это идеальный старт для новичка, и как магия expect/actual позволяет писать код сразу под все платформы.
00:00 Старт
01:16 Путь в Android
03:01 Почему работа в аутсорсе — отличная школа для разработчика
09:36 После Extension-функций не хочется возвращаться в Java
13:30 Плюсы и минусы Extension-методов
17:30 Что такое Compose и как выглядела UI-разработка до него
21:00 Почему Compose «зашел»
23:30 Проблема списков в Android
26:40 Особенности мобильной разработки: батарейка, ресурсы и «отсутствующий» интернет
29:26 Навигация в Android: история библиотеки Cicerone
39:00 Google Navigation 3
40:35 Kotlin Multiplatform (KMP)
46:25 Как работает магия expect/actual и почему это лучше, чем дефайны в C++
49:30 LSP-сервер для VS Code: Kotlin теперь не только в IntelliJ IDEA
01:00:50 Compose Multiplatform на iOS
01:03:30 Проблема нативности: должен ли UI выглядеть «как родной»? Кейс Duolingo
01:06:33 Flutter и React Native
01:18:20 Глубокий интероп и Swift
01:42:40 «Xcode — это тихий ужас»
01:44:15 Будущее: Compose for Web (Wasm/JS)
02:00:50 Чиним скролл в вебе
02:12:05 Непопулярное мнение №1: Gradle — прекрасный фреймворк
02:15:15 Непопулярное мнение №2: В большинстве мобильных приложений тесты не нужны
Гость https://www.linkedin.com/in/terrakok/
Ссылки
В гостях Дмитрий Чуйко, Performance Architect в компании Bellsoft. Мы обсудили, как устроена работа над производительностью Java «под капотом», зачем компаниям свои дистрибутивы JDK и почему дефолтные настройки в контейнерах — это путь в никуда.
00:00 Старт
01:48 Путь из Deutsche Bank в Oracle.
03:43 Замеры производительности до появления JMH.
08:19 Функциональные тесты рантайма и микробенчмарки.
17:50 Проблемы производительности десктопных приложений.
22:02 JFR — универсальный инструмент диагностики.
32:10 Рынок дистрибутивов и лицензии JDK.
45:37 Оптимизация через платформенные интринсики.
59:51 Java и Linux внутри Docker-контейнеров.
01:05:01 Мгновенный старт: технологии CRaC и Леден.
01:16:10 Кто такой системный разработчик сегодня.
Гость https://www.linkedin.com/in/dchuyko/
Ссылки
В гостях Руслан Ибрагимов — Kotlin-разработчик и архитектор. Обсуждаем эволюцию языка, замену шардированных баз на Snowflake и модернизацию легаси с помощью ИИ.
00:00 — Интро
03:00 — Путь Руслана в Kotlin
06:00 — Преимущества Kotlin перед Java
11:00 — Новая обработка ошибок
16:00 — Проблемы Kotlin Multiplatform
18:00 — Тренды в Kotlin-сообществе
22:00 — Выбор бэкенд-фреймворков
31:00 — Обзор новых библиотек
36:00 — Работа со Snowflake
45:00 — Модернизация легаси через ИИ
51:00 — Автоматизация и Argo Workflows
01:24:00 — Поломка обратной совместимости
Ссылки:
Ссылки на подкаст:
В 87 выпуске подкаста Javaswag обсуждаем внутреннюю кухню создания языков, почему Java упрощает исходники и зачем крупным компаниям вроде Huawei свои языки программирования.
00:00 — Интро
01:58 — ZX Spectrum 48/128 и Basic
04:12 — Путь от анализа к компиляторам
06:56 — Красота и сложность разработки компиляторов
09:37 — Противостояние: Язык против Компилятора
13:00 — Зачем компаниям собственные языки?
22:17 — Инструменты и процесс раскрутки компиляторов
26:05 — Специфика OCaml и Lisp
31:22 — Huawei: Создание языка ArkTS
41:50 — Контроль кода и лекция Томпсона
45:55 — Психология фич: важность отказа
55:30 — Различия парсера и компилятора
01:00:09 — Обзор Javac
01:04:27 — Плюсы лямбд против минусов Java
01:09:24 — Язык Ficus: массивы и производительность
01:13:29 — Java 25
01:27:05 — Проект Axiom JDK
01:34:51 — Возможно ли ускорить Javac?
01:45:16 — Сообщество создателей языков программирования
01:48:32 — Применение ИИ в компиляторах
01:53:13 — Непопулярное мнение
Гость: https://www.linkedin.com/in/dmitrysolomennikov/
Ссылки:
Язык для разработки UI и обучающих систем Flow9
Участие в разработке ArkTS
Язык Тривиль
Язык Фикус
Проект “Языки выходного дня” преобразовался в “Факультет компилятороварения”
Упрощенные исходники (JEP-512)
Запуск Java как скрипта
Причины делать новые языки
Проблемы импортозамещения (статья 2022 года)
Видео выступления Упрощенные исходники (JEP-512)
Королевства Delphi давно нет, а статья сохранилась
Ссылки на подкаст:
From the publisher's feed

18 Listeners

131 Listeners

26 Listeners

85 Listeners

26 Listeners

39 Listeners

70 Listeners

2 Listeners

0 Listeners

35 Listeners

0 Listeners

0 Listeners

0 Listeners