Велком уютное Java комьюнити!
Привет, я Дима и я Java разработчик. Я пишу подкаст с другими крутыми Java разработчиками. Задаю им каверзные вопросы, спрашиваю непопулярное мнение и мы вместе выясняем куда катится индустрия. Велком!
- 12 Nov 2024
#71 - Алексей Жидков - эргономичный подход и декомпозиция архитектуры
В 71 выпуске подкаста Javaswag поговорили с Алексеем Жидковым об эргономичном подходе для разработки архитектуры проекта
00:00 Начало
12:06 Работа консультанта
17:38 Эргономичный подход и его принципы
26:44 Практика применения принципов разработки
30:55 Трудности внедрения DDD на практике
37:15 Популярность DDD и его реальная эффективность
39:33 TDD и его место в эргономичном подходе
41:00 Тестирование как основа разработки
43:55 Проблемы с моками в тестировании
48:50 Архитектурные подходы и JPA
51:01 Функциональная архитектура и ее влияние на разработку
55:36 Проблемы с ORM и Hibernate
01:00:03 Эргономичность и альтернативы ORM
01:01:53 Неизменяемая модель данных
01:05:58 Эргономичный подход в разработке
01:08:32 Обсуждение стека технологий и его эволюция
01:11:21 Эргономичный подход в разработке проектов
01:17:14 Проблемы объектно-ориентированного программирования
01:20:56 Декомпозиция системы и создание API
01:22:38 Тестирование и разработка по TDD
01:27:24 Экономика эргономичной архитектуры
01:30:59 Элементы эргономичного подхода
01:40:15 Проблемы многопоточности
01:42:58 Непопулярное мнение
Гость https://t.me/ergonomic_code
Ссылки:
Сайт Алексея https://azhidkov.pro/
Многоликий принцип единственности ответственности мой разбор формулировок и интерпретаций Single Responsibility Principle, которые даёт сам Анкл Боб.
FizzBuzz Enterprise Edition пример доведения Open-Closed Principle до абсурда
SOLID Deconstruction Kevlin Henney c 28:23 докладчик говорит о том, что Liskov Substituion Principle является нонсенсом для его соблюдения, вы не можете переобределять методы только добавлять новые, про которые программа-клиент ничего не знает
Domain-Driven Design: Tackling Complexity in the Heart of Software та самая книга про DDD
Принципы юнит-тестирования самая крутая на сегодняшний день книга по тестированию бакендов
РЕПЕТИЦИЯ Структурный дизайн. Древний секрет простого и быстрого кода. репетиция моего доклада на Joker 24
РЕПЕТИЦИЯ Функциональная архитектура и Spring Data JDBC. 4 года в проде, полёт отличный репетиция моего второго доклада на Joker 24, который в итоге стал Lightening Talk-ом
Why is Java making so many things immutable? пост в блоге Оракла, где автор пишет - чуваки, не парьтесь, GC заточен на быстрое создание объектов
Trainer Advisor реальный проект по Эргономичному подходу
Диаграмма эффектов диаграмма, которую я использую для декопозиции ядра/домена/модели (сущностей и интеграций) на модули
Алексей Жидков — Рациональный подход к декомпозиции систем на модули или микросервисы мой доклад на JPoint 23 с алгоримтом декомпозиции диаграммы эффектов
Lean Architecture: for Agile Software Development
The Transformation Priority Premise, Code That Fits in Your Head как выходить из тупика, когда в продовом коде захардкожен OK 200 и тест зелёный
Как я превратил легаси-проект в конфетку за полгода. Том 1 мой пост о том, как я переделал проект по Эргономичному подходу и ускорил работу команды в три раза
Метрика Cognitive complexity или простой способ измерить сложность кода лучшая альтеранитва цикломатической сложности
Code Complexity плагин для IDEA, который рисует когнитивную сложность прямо в редакторе
Alan Kay at OOPSLA 1997 The computer revolution hasnt happened yet Алан Кей говорит, что не имел ввиду C++, когда придумывал термин ООП
Dr. Alan Kay on the Meaning of “Object-Oriented Programming” Алан Кей говорит, что имел ввиду под ООП
Кип сейф! 🖖
- 24 Oct 2024
#70 - Алексей Захарченко - аутстафинг, криптобиржа на Джаве и Редис
В 70 выпуске подкаста Javaswag поговорили с Алексеем Захарченко о аутстафинге и построении криптобиржы на Джаве
00:00 Начало
05:48 Аутстаффинг и компания Кроссовер
20:17 Монструозные проекты и их последствия
26:15 Трекинг времени и его влияние на разработчиков
35:40 Читерство в системе трекинга
42:09 Bitso
46:08 Технологии и архитектура бирж
58:44 Монолит и его метрики
01:03:00 Выбор между Spring и Micronaut
01:09:00 Асинхронность и многопоточность в разработке
01:14:17 Redis и атомарные операции
01:20:31 Дробные числа
01:23:28 Хранимые процедуры в Redis
01:31:21 Redis-стримы
01:36:21 Управление нагрузкой и bull run
01:45:20 Баланс между риском и затратами
01:48:22 Различия между уровнями инженеров
01:53:48 Непопулярные мнения
Гость - https://www.linkedin.com/in/chess/
Ссылки:
- https://medium.com/bitso-engineering/the-redis-streams-we-have-known-and-loved-e9e596d49a22
- https://martinfowler.com/articles/lmax.html
Кип сейф! 🖖
- 17 Oct 2024
#69 - Дмитрий Чуйко - старт Джава проектов с нуля
В 69 выпуске подкаста Javaswag поговорили с Дмитрием Чуйко о старте Джава проектов с нуля
00:00 Начало
10:09 Технологический стек и его эволюция
17:04 Рост и развитие в карьере разработчика
23:07 Путь к стартапу Мой склад
25:00 Технологии и архитектура SaaS системы
30:41 Проблемы и решения в разработке
32:09 Поиск и найм разработчиков
41:07 Баланс между MVP и масштабированием
46:52 Старт нового проекта: подход и стратегия
55:00 Коммуникация в команде: важность договоренностей
01:00:01 Кубернетес: необходимость и применение в проектах
01:05:57 Выбор технологий: как сузить набор для проекта
01:10:12 Эволюция Spring и Java
01:17:29 Котлин против Java: Сравнение и Тенденции
01:24:10 Финансовые аспекты разработки в стартапах
01:28:50 Архитектура микросервисов и управление данными
01:33:17 Временная консистентность и её применение
01:35:02 Переход к международной команде
01:36:46 Культурные различия в международной среде
01:38:40 Объективные метрики и карьерный рост
01:40:06 Подготовка к повышению и важность достижений
01:42:26 Метрики и их значение для бизнеса
01:45:04 Стартапы и выбор технологий
01:51:07 Роль тестов в разработке
01:53:02 Блиц
Гость - https://www.linkedin.com/in/dchuiko/
Ссылки:
Кип сейф! 🖖
- 4 Oct 2024
#68 - Артём Бояршинов - платежи на Akke, распределенные системы и идентификаторы
В 68 выпуске подкаста Javaswag поговорили с Артёмом Бояршиновым о платежах на Akke, распеределенных системах и индентификаторах
00:00 Начало
06:44 Переход в Java
12:16 Инструменты разработки и контроль версий
18:00 Опыт работы в проектной компании
23:52 Сложности и решения в условиях нагрузки
26:33 Оптимизация запросов в Postgres
31:31 Система быстрых платежей: Введение и рост
39:36 Технологии системы быстрых платежей
48:11 Предварительные этапы платежей и их механизмы
55:53 Архитектура и распределение нагрузки в системе
01:00:12 Сериализация корутин и миграция версий
01:04:50 Состояние и поведение акторов в Akka
01:11:02 Проблемы обновления и лицензирования Akka
01:13:51 Альтернативы Akka
01:17:17 Мониторинг и трассировка в системе быстрых платежей
01:23:23 Идентификаторы транзакций
01:29:24 Генерация идентификаторов в распределенных системах
01:38:27 Таймстемпы и их роль в идентификаторах
01:45:15 Проблемы с уникальностью идентификаторов
01:51:50 Генерация идентификаторов
01:54:22 Ответ на предыдущее непопулярное мнение
01:58:10 Непопулярное мнение
02:02:20 Блиц
02:09:54 Заключительные мысли и рекомендации
Гость - https://github.com/Boiarshinov
Ссылки:
- Доклад СБП. Платежные ссылки и где они обитают
- Доклад Распределенная генерация уникальных идентификаторов
- База знаний о программировании, которую Артём ведёт для себя
Кип сейф! 🖖
- 26 Sep 2024
#67 - Сергей Петрелевич - реактивные приложения, WebFlux, блокирующий код и Micronaut
В 67 выпуске подкаста Javaswag поговорили с Сергеем Петрелевичем о WebFlux, блокирующем коде в реактивном приложении и Micronaut
00:00 Начало
02:52 Путь к Java от BASIC
05:59 Опыт работы с автоматизированными системами управления
08:56 Переход к Java и работа в банковском софте
12:07 Технологические риски и управление проектами
14:49 Платежные системы: архитектура и взаимодействие
18:00 Виртуальные машины и их роль в разработке
21:11 Заключение и выводы о будущем Java
26:05 Технологические достижения и их влияние на банковский сектор
29:14 Архитектурные особенности платежных систем
33:26 Опыт работы в Deutsche Bank и Райффайзен
36:39 Качества успешного разработчика в финансовых технологиях
40:24 Понимание Disruptor и его применение в высокопроизводительных системах
45:01 Event Loop и его роль в современных приложениях
52:07 Webflux и реактивное программирование в Java
53:07 Обработка запросов и потоков в реактивных системах
56:18 Проблемы блокирующего кода в реактивных приложениях
01:00:01 Идентификация и управление блокирующими вызовами
01:02:42 Преимущества и недостатки реактивного программирования
01:07:35 Сравнение фреймворков: Micronaut, Quarkus и Spring
01:18:05 Использование GraalVM для нативных образов
01:19:39 Сравнение фреймворков: Armeria и Vert.X
01:27:12 Виртуальные потоки в Java: необходимость и применение
01:39:39 Современный Java стек: выбор технологий и библиотек
01:46:48 Обновление зависимостей и предвидение проблем
01:49:36 Баланс между курсами и реальной практикой
01:50:51 Фундаментальные знания и их важность для разработчиков
01:53:14 Критика современных курсов и их подходов
01:57:10 Непопулярное мнение о Spring Data и Hibernate
02:10:07 Широкий кругозор разработчика и важность изучения других языков
Гость - https://www.linkedin.com/in/sergey-petrelevich-72ab893a/
Ссылки:
- либа для поиска блокировок: https://github.com/reactor/BlockHound
- рассказ про Disruptor: https://youtu.be/IsGBA9KEtTM?si=fSdka2PDiOgNViYJ
- мой канал: https://www.youtube.com/@petrelevich
- рассказ про Armeria: https://youtu.be/6SInub_v_bI?si=wT525f0lWXlRcCMf
Кип сейф! 🖖
- 19 Aug 2024
#66 - Иван Осипов - современный стэк: Котлин, ГрафКуэль, Спринг-Бут
В 66 выпуске подкаста Javaswag поговорили с Иваном Осиповым современный стэке на Котлин, ГрафКуэль, Спринг-Буте
00:00 Начало. Электротранспорт в Arrival
12:23 Стэк
20:20 3D-сцены, Docker и Kubernetes
24:40 Проблемы разработки на низком уровне
29:00 Kotlin мышление
35:54 Kotlin и Jetbrains
43:06 Изучение и использование Kotlin SDK
48:07 Факторы, влияющие на на внедрение GraphQL
57:40 Опыт использования GraphQL в стартапе
01:06:41 Федерации в GraphQL
01:12:24 Роль API Gateway, Rest и GraphQL
01:13:20 Мутации и загрузчики
01:20:12 Проблема N+1 запросов
01:21:41 Графовые базы данных для GraphQL
01:33:31 Управление и мониторинг с помощью Spring Boot Admin
01:40:38 Доминирование Spring Boot
01:41:56 The Benefits of Using Spring Boot for Development
01:42:52 Spring Boot мидлов и синьеоров
01:54:45 Различия между тех лидом и инженеринг менеджером
02:05:45 Организация процессов и взаимодействие в команде
02:09:03 Непопулярные мнения
02:13:01 Валидация на уровне GraphQL
02:17:17 Блиц
Гость - https://github.com/ivan-osipov
Ссылки:
канал на русском https://t.me/from_junior_to_cto
сайт/рассылка на англ https://devtower.io
Кип сейф! 🖖
- 20 Jul 2024
#65 - Слава Ледовских - как расти до мидла, двухфазный коммит и oncall практики
В 65 выпуске подкаста Javaswag поговорили со Славой Ледовских о том как расти до миддла, двухфазном комите и on call практиках
00:00 Начало
08:09 Развитие сотрудников: учить и помогать расти
12:44 Различия между уровнями разработчиков
14:35 Устаревшие технические навыки
18:02 Развитие софт скиллов и ответственность
21:48 Проблемы новичков в индустрии
27:30 Подготовка к работе в IT-сфере и создание портфолио проектов
32:02 Роль школ программирования в обучении программистов
35:11 Значимость работы в команде и инвестирования времени менторов
39:03 Различия между школами программирования
41:12 Ревью студентов на GitLab и найм разработчиков
42:07 Распределенные транзакции в финансовых системах
48:56 Двухфазный коммит и сага для обеспечения целостности данных
54:53 Использование двухфазного коммита в распределенных системах
57:37 Проблема возможных ошибок и механизмы отката операций
58:36 Различия между двухфазным коммитом и сагой
01:08:47 Асинхронная и синхронная обработка
01:15:38 Двухфазный коммит
01:18:15 Роль онкола в организации
01:19:44 Ранбуки и автоматизация работы онкола
01:22:38 Фиксация и предвидение проблем
01:23:32 Мониторинг в синхронной и асинхронной архитектуре
01:26:54 Выбор инструментов мониторинга
01:28:20 Изучение исходного кода и дизайна фреймворков
01:36:22 Непопулярные мнения
01:39:48 Мнение о Lombok
01:41:38 Использование рекордов в Java
01:46:45 Быстрые вопросы о Java
Гость - https://www.linkedin.com/in/vyacheslav-ledovskih-b4ab01161/
Ссылки:
Кип сейф! 🖖
- 15 Jul 2024
#64 - Андрей Когунь - генерация кода для платформы, AI ассистенты для кода и уникальность Eclipse IDE
В 64 выпуске подкаста Javaswag поговорили с Андреем Когунем о генерации кода, AI асситентах для программировани и об Eclipse IDE
00:00 Начало
06:09 JUG и путь в КРОК
21:17 Преимущества генерации кода
26:49 Разработка фронтенда и проблемы с кастомизацией
32:32 Выбор баз данных и инструментов для работы с ними
35:24 Выбор между open source и коммерческими решениями
39:21 Гибкость и возможность расширения функциональности
43:36 Генерация кода
47:28 Генерация типового репозитория, сервисов и контроллеров
57:36 Разработка плагинов для IntelliJ IDEA и проблемы обратной совместимости (травмирующий опыт)
59:02 Преимущества использования LSP серверов и работы с различными редакторами
01:03:17 История приобретения плагина JPA Buddy JetBrains
01:11:23 Использование AI-ассистента в программировании
01:41:04 Олимпиадное программирование
01:52:52 Ответ на предыдущее непопулярное мнение
01:55:17 Непопулярное мнение: Eclipse
01:55:31 Непопулярное мнение: Maven
02:01:36 Блиц
Гость - https://x.com/andrei_kogun
Ссылки:
https://jpa-buddy.com/ - плагин, сильно помогающий с @JPA, теперь часть IntelliJ IDEA Ultimate.
https://github.com/kogun/jpoint-spring-boot-xtend-demo - как генерировать java бойлерплейт код с xtend, допматериалы гуглятся.
https://github.com/croc-code/jxfw - что получилось в итоге, наш фреймворк с возможностью быстрой разработки, описывая в большинстве случаев только модель, напишите, если хотите увидеть версию с поддержкой Spring Boot 3.x
https://www.youtube.com/watch?v=awP-C4L1g3M - стендап на тему know-how, как код.
https://www.youtube.com/watch?v=x0EZRFmaKUg - как сегодня разрабатывать с AI ассистентами.
Кип сейф! 🖖
- 21 Jun 2024
#63 - Тимофей Дураков - Джава сертификация, топология сети поверх Apache Storm и графовые базы данных
В 63 выпуске подкаста Javaswag поговорили с Тимофеем Дураковым о Джава сертификации, построении топологии сети поверх Apache Storm и графовых базах данных
00:00 Начало
02:01 Сертификация по Java
14:02 Грейды
28:18 Оркестрация и безопасность в банковских системах
35:04 Управление виртуальными машинами в OpenStack
39:43 Live Migration виртуальных машин
43:08 Архитектура OpenStack
49:17 Решение проблемы SplitBrain с помощью федерации в OpenStack
56:01 Использование оверлейных сетей в OpenStack
56:55 Виртуальные сети и технология VLAN
01:04:48 Apache Storm: система стримпроцессинга
01:10:59 Перестройка маршрутов с помощью Apache Storm
01:11:28 Граф-ориентированные базы данных и их роль в проекте
01:14:20 Использование Neo4j и OrientDB в проекте
01:27:21 Бэкбоны и мэш-сети
01:31:04 Телеметрия и аналитика
01:35:27 Построение маршрутов в графе
01:40:15 Использование time series и графов
01:44:06 Непопулярное мнение
01:58:00 Непопулярные мнение
Гость - https://www.linkedin.com/in/timofei-durakov/
Ссылки:
https://tinkerpop.apache.org/gremlin.html
Кип сейф! 🖖
- 7 Jun 2024
#62 - Андрей Кулешов - Kotlin, технические конференции, Spring, диктат в анализе кода и kotlinx.serialization
В 62 выпуске подкаста Javaswag поговорили с Андреем Кулешовым о конференциях, Котлин 2, мультиплатформе, анализе кода, библиотеках diktat и ktoml
Дисклеймер: выпуск писался в начале мая, Positive Hack days прошел, а Kotlin 2 вышел!
00:00 Начало
11:33 Системное программирования
14:44 Конференции и доклады
29:25 От Scala к Kotlin
37:14 Инфраструктура для разработки в крупных компаниях
38:25 Анализ кода и графовые базы данных
40:16 Библиотека diktat и формализация код-стиля
59:04 Внедрение анализаторов кода и рулов
01:06:28 Компиляторные плагины
01:12:02 Мультиплатформенность и Kotlin 2.0
01:22:01 KotlinX Serialization и мультиплатформенные библиотеки
01:31:39 ktoml
01:41:59 Разработка на Java и Kotlin
01:48:13 Роль технического менеджера
01:57:09 Ответ на предыдущее непопулярное мнение
01:58:00 Непопулярные мнение
Гость - https://www.linkedin.com/in/andrey-kuleshov-15707111b/
Ссылки:
https://github.com/saveourtool/diktat
https://github.com/akuleshov7/ktoml
Кип сейф! 🖖
- 21 May 2024
#61 - Григорий Скобелев - Кафка, шардирование и роль техлида в стартапе
В 61 выпуске подкаста Javaswag поговорили с Григорием Скобелевым о Кафке, шардировании Постгреса и роли техлида в стартапе
00:00:00 Введение и работа с шейдерами
00:03:49 Разработка в Java и работа над биллингом
00:07:54 Коробочное решение для тарификации и обработки событий
00:09:23 Требования к работе в телекоммуникационных компаниях
00:13:04 Kafka Streams и работа с потоковыми данными
00:15:13 CDC (Change Data Capture) и использование Kafka Streams
00:21:13 Публичные выступления и их роль в развитии разработчика
00:22:09 Инженерная культура в компании Яндекс.Деньги
00:25:54 Инструменты разработки: плагины и тулзы
00:28:36 Создание плагинов для Gradle и Maven
00:31:49 Полезные тулзы для ускорения работы
00:36:34 Шардирование базы данных: проблемы и применение
00:39:21 Шардирование в PostgreSQL и его преимущества
00:43:39 Использование идентификаторов пользователей для маршрутизации запросов
00:50:00 Роль техлида в компании и его ответственности
00:53:16 Трансляция бизнес-требований в технические
00:56:33 Подготовка архитектуры к росту и увеличению нагрузки
00:57:57 Нагрузочное тестирование и оптимизация ресурсов
00:59:32 Кросс-языковое взаимодействие команды и выбор языка программирования
01:06:32 Выбор технологий и инструментов для микросервисов
01:07:00 Database per service подход
01:09:43 Взаимодействие между микросервисами
01:11:09 Контрактный подход
01:14:29 Прогрев приложений
01:16:42 Обмен опытом с другими техлидами
01:19:56 Проблемы с аптаймом и возможные решения
01:20:53 Оценка работы техлида и его влияние на команду
01:22:19 Важность развития в разных технологиях
01:27:00 Ответ на предыдущее непопулярное мнение
01:29:31 Непопулярное мнение
Гость - https://www.linkedin.com/in/grigoriy-skobelev-757030167/
Ссылки:
Подкаст «Между скобок» – https://youtube.com/@mezhdu_skobok Гитхаб Гриши с выступлениями – https://github.com/GSkoba/talks Телеграм-группа с обсуждением книжек – https://t.me/backend_megdu_skobkah Курс по Gradle - https://www.youtube.com/watch?v=Ajs8pTbg8as&list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE
Кип сейф! 🖖
- 6 May 2024
#60 - Владимир Бухтояров - Bucket4j, распреденный рейт лимитинг и опен сорс
В 60 выпуске подкаста Javaswag поговорили с Владимиром Бухтояровым о библиотеке Bucket4J, распреденном рейт лимитере и опен сорсе
00:00:00 Начало
00:01:34 О себе
00:14:12 АПИ для биллинга и платформа
00:24:06 Golden Gate и обновление кэша
00:29:08 Подписки и переезд на Кассандру
00:33:00 Железные ноды Кассандры
00:35:20 История Bucket4j
00:40:46 Алгоритмы рейт лимитинга - Токен Бакет
01:01:42 Претензии к Токен Бакет алгоритму
01:09:04 Лики бакет алгоритм
01:28:04 Маппинг бакета на ключ
01:45:14 Опенсорс - сложно?
01:50:54 Не используйте распределенные рейт-лимитеры
01:56:26 Рейт лимитинг vs Биллинг
01:58:38 Предыдущее непопулярное мнение
02:02:30 Непопулярное мнение
02:09:00 Непопулярное мнение 2
Гость - https://github.com/vladimir-bukhtoyarov
Ссылки:
https://github.com/bucket4j/bucket4j
Кип сейф! 🖖
- 29 Apr 2024
#59 - Евгений Молоков - архитектура в телекоме, проекты в Букинге и Кафка с Флинком
В 59 выпуске подкаста Javaswag поговорили с Евгением Молоковым об архитектуре в телекоме, проектах в Букинге и Кафке с Флинком
00:01:56 Самое начало, релиз инжениринг
00:11:28 Архитектуры проектов
00:16:10 Технологии с именами
00:17:58 Почему в БД всего 3 таблицы
00:36:02 Солюшн-архитеткоры
00:39:56 Воркфлоу движки
00:48:02 Перезд в Нидерланды
01:03:02 Проекты в Букинге
01:04:39 Переписывание легаси кода
01:07:56 Dropwizard вместо Спринга
01:12:48 Кафка как центр микросервисов
01:24:10 Коммиты, оффсеты, Dead letter queue
01:34:50 Динамические консюмеры и перекос
01:46:12 Апач Флинк, зачем?
02:01:08 Предыдущее непопулярное мнени
02:04:01 Непопулярное мнение
Гость - https://www.linkedin.com/in/eu-m/
Ссылки:
Кип сейф! 🖖
- 1 Apr 2024
#58 - Михаил Жилин - Джава 15 лет назад и производительность базы данных Постгрес
В 58 выпуске подкаста Javaswag поговорили с Михаилом Жилиным о том, как выглядела Джава 15 лет назад и о производительности базы данных Постгрес
00:01:34 Встреча с Джеймсом Гослингом
00:05:32 Джава 15 лет назад
00:08:46 Минимализм в жестком энтерпрайзе
00:19:02 Application Server - вся архитектура
00:23:20 Профайлер
00:26:14 Топ 5 багов
00:35:46 Переход в PostgresPro
00:42:32 Кластера и Патрони
00:52:44 Берем любую БД
00:59:06 Как сравнить производительность двух БД
01:10:16 Поиск регрессий в релизах БД
01:19:38 Где граница между OLTP и OLAP
01:26:14 Постгрес и серверлесс
01:34:50 32 битные платформы и Постгрес
01:41:20 Предыдущее непопулярное мнение
01:43:07 Непопулярное мнение
01:44:10 Freebsd на десктопе
Гость - https://github.com/mizhka
Ссылки:
Пост про Гослинга https://zlo.rt.mipt.cc/?read=2711367
Конфа https://pgconf.ru/2024/timetable
Про медальки https://wiki.postgresql.org/wiki/Contributor_Gifts
PostgresPro https://github.com/postgrespro/
Неон https://github.com/neondatabase
Патрони https://github.com/zalando/patroni/
Кип сейф! 🖖
- 5 Mar 2024
#57 - Алексей Андреев - компиляция Джава кода в Джаваскрипт, виртуальная машина TeaVM и будущее фронтенда
В 57 выпуске подкаста Javaswag поговорили с Алексеем Андреевым о компиляции Джава кода в Джаваскрипт, виртуальной машине TeaVM и будущем фронтенда
00:01:47 О себе
00:04:55 Не было нормальной ORM для Java - имелся в виду .NET
00:09:38 Фул стек на Джаве 10 лет назад
00:13:20 Актуален ли GWT сейчас?
00:18:25 Проект TeaVM и путь в Джетбрейнс
00:29:17 KotlinJS
00:35:20 3D реальность на Джаве
00:44:30 Кросскомпиляция для IPhone с помощью GraalVM
00:49:15 TeaVM для веба, поддержка новых версий Джавы и библиотек
01:06:15 Про Apache Harmony. Это не было инициативой Intel, но много раз от бывших сотрудников Intel (в том числе, которых подхватил JetBrains) слышал историю, что Intel очень быстро в него вошли и стали чуть ли не основной движущей силой. Из более-менее публично доступных пруфов - серия статей Made at Intel на Хабре (https://habr.com/ru/articles/759614/)
1:10:08 LambdaMetafactory
1:11:11 CheerpJ - JVM в браузере
1:18:50 Ниша TeaVM
1:22:50 Cсылки на игры libGDX: https://www.retrocommander.com/webapp/, https://www.ageofconquest.com/webapp/, https://mslivo.itch.io/sandtrix
1:23:30 WASM
1:28:34 Статья про wasm: https://habr.com/ru/articles/757182/
1:41:15 Куда катится фронтенд
1:47:30 Предыдущее непопулярное мнение
1:49:30 Непопулярное мнение
Гость - https://github.com/konsoletyper
Ссылки:
Apache Harmony. Это не было инициативой Intel, но много раз от бывших сотрудников Intel (в том числе, которых подхватил JetBrains) слышал историю, что Intel очень быстро в него вошли и стали чуть ли не основной движущей силой. Из более-менее публично доступных пруфов - серия статей Made at Intel на Хабре
Кип сейф! 🖖
- 22 Jan 2024
#56 - Владимир Долженко - производительность IDE, Котлин плагин и новый компилятор К2
В 56 выпуске подкаста Javaswag поговорили с Владимиром Долженко о производительности IDE, Котлин плагине и новом компиляторе К2
00:01:13 Путь в компиляторы, фризы и IntelliJ как платформа
00:13:20 Опыт до Jetbrains
00:20:05 Бенчмарки в Идее, метрики и на что смотреть
00:29:00 Подсветка кода и Android Studio
00:40:38 Рынок IDE, Google IDX, VsCode и К2 - новый Котлин компилятор
01:05:20 Компилятор и микросервисы
01:09:15 К2 быстрее?
01:24:00 Флаки тесты и локальные процессы в командах
01:27:58 Монорепозиторий и перенос плагинов
01:33:20 Analysis API внутри IDEA
01:39:10 Счастливое будущее K2 и дата релиза
01:47:50 Отвечаем на предыдущее непопулярное мнение
01:51:30 Непопулярное мнение - Разработчики не умеют использовать инструменты, которые у них есть
Гость - https://twitter.com/dolzhenko
Ссылки:
Доклад Светланы Исаковой что нужно знать о новом компиляторе
Серия статей о перформансе от А. Шипилёва - JVM Anatomy Quarks
Доклад А. Шипилёва про перформанс в целом
Анонс IntelliJ IDEA’s K2 Kotlin Mode Now in Alpha!
Кип сейф! 🖖
- 11 Jan 2024
#55 - Дмитрий Тихомиров - J2CL и компиляция Java в Javascript, GWT и опенсорс в Редхат
В 55 выпуске подкаста Javaswag поговорили с Дмитрием Тихомировым о компиляции Java в Javascript, GWT, J2CL и опенсорсе в Редхат
00:01:50 О себе
00:12:44 J2CL Порт Quake2
00:19:53 J2CL и поддержка новых версий Джавы
00:28:05 GWT и Kotlin Multiplatform
00:34:42 На что мигрировать с GWT, Elemental2, JSInterop
00:46:15 В чем выгода писать веб на джаве
00:48:44 Bazel
00:50:17 Hello World на J2CL и Wasm
00:58:30 TeaVM
01:04:29 Будущее веб компонент
01:08:08 Поддержка GWT Редхатом
01:10:32 Редхат и опенсорс, история по CentOS
01:16:30 Реклама FaangTalk
01:18:08 Отвечаем на непопулярное мнение из предыдущего выпуска
01:20:52 Кусачие QA
01:22:02 Непопулярное мнение
Гость - https://www.linkedin.com/in/treblereel/
Ссылки:
J2CL - Java to Closure style JavaScript transpiler
Кип сейф! 🖖
- 8 Dec 2023
#54 - Валерий Овчинников - нагруженные сервисы и нестандартные практики разработки
В 54 выпуске подкаста Javaswag поговорили с Валерием Овчинниковым о нагруженных сервисах и нестандартных практиках в процессах
00:01:43 О себе
00:10:36 Низкоуровневые трюки
00:18:15 Разница между 500 мс и 5 мс сервисами
00:33:28 Пишем систему с нуля
00:55:45 Центр математических финансов
01:11:01 Ставим задачи по уму
01:14:58 Модели мотивации людей
01:23:24 Нестандартные практики в процессах
01:37:52 Дизайн доки и дизайн ревью
01:44:30 Предыдущее непопулярное мнение
01:46:25 Непопулярное мнение
Гость - https://www.linkedin.com/in/valerii-ovchinnikov/
Ссылки:
Chronicle Wire (String to long) — https://chronicle.software/chronicle-wire-object-marshalling/
ЦМФ — https://www.linkedin.com/company/cmf-ynvrsty/posts/?feedView=all
FAST менеджмент — https://www.litres.ru/book/fedor-nesterov/fast-menedzhment-upravlyat-eto-prosto-esli-znaesh-kak-42129019/
SMART — https://ru.wikipedia.org/wiki/SMART
TameFlow — https://tameflow.com/books/
Кип сейф! 🖖
- 12 Oct 2023
#53 - Антон Архипов - история JRebel, номер один фича Котлина и мультиплтаформа
В 53 выпуске подкаста Javaswag поговорили с Антоном Архиповым об истории JRebel, мультиплтаформе и фичах Котлина
00:01:40 О себе, история ZeroTurnAround
00:24:00 Почему JRebel взлетел?
00:34:17 Первые пользователи
00:48:45 Технология, лицензии
00:56:50 Продукт менеджмент, фичи и приоритеты
01:09:55 Jetbrains
01:16:38 Трюки Деврела
01:19:15 Teamcity
01:36:30 Котлин
01:48:38 DSL
01:54:50 Copilot
02:03:18 IDE
02:09:10 Мультиплатформа
02:26:10 Fleet, Space
02:33:30 Предыдущее непопулярное мнение
02:37:20 Непопулярное мнение
Гость - https://twitter.com/antonarhipov
Ссылки:
Kotlin https://www.youtube.com/@kotlin
Кип сейф! 🖖
- 31 Aug 2023
#52 - Тимур Мухитдинов - стартап на Джаве и архитектура в Букинге
В 52 выпуске подкаста Javaswag поговорили с Тимуром Мухитдиновым о стартапе на Джаве и архитектуре в Букинге
00:01:38 О себе
00:05:57 Все что были книги о Джаве, я прочитал
00:23:56 Фреймворки
00:42:34 Где ты вырос больше всего?
00:49:19 Стартап
01:05:36 Архитектура и что внутри
01:15:54 Облако или поднимаем сами?
01:22:38 Очередь поверх Постргрес вместо Кафки
01:26:49 С точки зрения технологий все сделано идеально
01:31:04 Что там в Букинге
01:34:38 Что за стэк
01:46:17 Отвечаем на предыдущее Непопулярное мнение
01:50:35 Непопулярное мнение
Гость - https://www.linkedin.com/in/timurnav/
Ссылки:
Менторство https://solvery.io/ru/mentor/timurnav
Кип сейф! 🖖
- 10 Aug 2023
#51 - Олег Ненашев - WireMock, построение сообществ и девелопер-адвокатура
В 51 выпуске подкаста Javaswag поговорили с Олегом Ненашевым о WireMock - туле для API mocking-a для Java и не только. Также поговорили о построении open-source сообществ и девелопер-адвокатуре.
00:01:20 Что поменялось с прошлого выпуска
00:03:48 Индустрия тестирования и успехи WireMock и Testcontainers
00:11:50 История WireMock
00:16:30 WireMock и поддержка других языков: Kotlin, Python, Golang и т.д.
00:20:06 Пишем тест с WireMock
00:34:26 WireMock & JUnit
00:37:44 Темплейты и маркетплейс API Templates Library
00:45:54 Единый стандарт для API
00:50:10 Replay & Record
00:53:38 Поддержка протоколов - вебсокеты, графкуэль, бинарные протоколы
01:02:38 Администрирование WireMock и standalone-инстансы
01:06:40 Идеальный пользователь WireMock
01:17:39 Как строить коммьюнити в который раз
01:22:55 Стартап WireMock Inc
01:30:02 Ответ на предыдущее непопулярное мнение
01:32:20 Новое и (очень?) непопулярное мнение
Гость - https://linktr.ee/onenashev, https://twitter.com/oleg_nenashev
До этого Олег также приходил к нам поговорить о Jenkins - эпизод 45
Ссылки:
https://www.testcontainers.org/
https://github.com/release-drafter/release-drafter
https://maven.apache.org/enforcer/enforcer-rules/requireUpperBoundDeps.html
Кип сейф! 🖖
- 7 Jul 2023
#50 - Андрей Корниенков - продуктовая разработка на Котлине
В 50 выпуске подкаста Javaswag поговорили с Андреем Корниенковым о продуктовой разработке на Котлине, прототипировании и наследии JVM
00:02:15 О себе
00:08:44 Котлин после Джавы
00:14:41 Котлин как песочница фич для Джавы
00:26:04 Наследие JVM
00:36:25 Пишем платформу
00:56:40 Быстрее ли писать на Котлине?
01:02:38 Инвентарь библиотек проекта
01:18:00 Уши Джавы торчат
01:23:54 Аспекты, кол-во зависимостей и продуктовая разработка
01:30:14 Агрегатор микросервисов
01:31:00 Быстрое прототипирование
01:40:40 Ответ на прошлое непопулярное мнение
01:46:00 Непопулярное мнение
Гость - Андрей Корниенков
Ссылки:
https://funtech.plus.yandex.ru/
https://www.linkedin.com/in/andrey-kornienkov-6868041b/
Кип сейф! 🖖
- 9 Jun 2023
#49 - Владимир Швец - от Джуна до Сеньора, как выжить в IT
В 49 выпуске подкаста Javaswag поговорили с Владимиром Швецом, автором книги - От джуна до сеньора. Как стать востребованным разработчиком
00:01:10 О себе и высоконагруженных сервисах
00:15:37 Где в книге мидлы? Курсы, блоки в книге
00:25:05 О книгах - Я практически не читаю технической литературы
00:34:55 Стиль написания
00:48:00 Работа с издательством, редактором, чистый код
01:04:30 Об интервью и алгоритмах на бумажке
01:13:18 Пример интервью
01:20:20 Побивание камнями как стиль код-ревью
01:29:20 Бюрократия
01:36:40 Зачем в книге для программистов блок про психотерапию
01:45:00 Следующая книга
01:49:15 Отвечаем на непопулярное мнение из предыдущего выпуска
01:53:00 Непопулярное мнение
Гость - Владимир Швец
Ссылки:
Книга От джуна до сеньора. Как стать востребованным разработчиком https://alpinabook.ru/catalog/book-ot-dzhuna-do-senora/
Промокод на скидку 20%: javaswag
Кип сейф! 🖖
- 17 May 2023
#48 - Кирилл Грищук - Java собеседования, Литкод и полезный лайвкодинг
В 48 выпуске подкаста Javaswag поговорили с Кириллом Грищуком о Java собеседованиях, Литкоде и полезном лайвкодинге
01:50 О себе
06:00 Переход с C# в Java
08:38 Архитектура онлайн доски на Редис
16:28 Интересные полиморфные объекты
27:40 Собеседования, интервью, 150 лайвкодингов и пример задачи
33:50 Зачем решать задачи на Литкоде
43:14 Что спрашивают на Джава собесах
53:08 Топ вопросов Джава интервью и вопросы про Спринг
1:05:05 Как развиваться разработчику
1:14:05 Отвечаем на непопулярное мнение о наследовании
1:16:04 Непопулярное мнение
1:19:07 Переход на Golang
Гость - https://kirya522.tech/
Ссылки:
Youtube https://www.youtube.com/@kirya522-dev
Вопросы с интерьвю https://kirya522.tech/posts/interview/
Про пагинацию под нагрузкой https://medium.com/swlh/sql-pagination-you-are-probably-doing-it-wrong-d0f2719cc166
Про надежный pg https://medium.com/miro-engineering/implementing-fault-tolerance-postgresql-cluster-with-patroni-f008471a99b1
Кип сейф! 🖖
- 8 Apr 2023
#47 - Саша Пахомов - прагматичные практики, АПИ клиенты и софтскиллы
В 47 выпуске подкаста Javaswag поговорили с Сашей Пахомовым о прагматичных практиках, АПИ клиентах и важности софтскиллах
00:01:15 О себе
00:04:27 Зачем нужна слепая печать если есть Intellij IDEA
00:18:16 vim
00:23:27 Команд-лайн тулы
00:34:30 UX у комманд-лайн утилит
00:40:30 Если бы java, javac, jar были бы хорошими тулами, не было бы Мавена и Анта
00:45:19 Команд лайн тулы на Джаве писать не нужно
00:50:36 Как писать API клиента
00:58:25 Идеальный воркфлоу клиентской библиотеки
01:03:01 Пишем по TDD прямо в подкасте
01:11:41 TDD в легаси приложениях
01:23:13 Паттерн Билдер
01:34:13 Софтскиллы
01:48:10 Важность текста
01:55:55 Про Ютуб
02:00:15 Чего не хватает Джавасвегу
02:03:25 Непопулярное мнение из предыдущего выпуска
02:07:00 Непопулярное мнение
Гость - https://t.me/toxic_enterprise
Ссылки:
https://micro-editor.github.io
https://vas3k.blog/notes/softskills/
https://www.youtube.com/channel/UC9x0AN7BWHpCDHSm9NiJFJQ
https://www.youtube.com/@toplesofficial
https://www.youtube.com/@UtopiaShow
Кип сейф! 🖖
- 5 Apr 2023
#46 - Федор Ярёменко - генерация кода из ТЗ с Kotlin DSL и Jetbrains MPS, медленный старт Спринг Бута
В 46 выпуске подкаста Javaswag поговорили с Федором Ярёменко о Kotlin DSL, Jetbrains MPS и Спринг Буте
00:01:42 О себе
00:02:52 Что такое DSL
00:07:12 DSL vs Domain Driven Design
00:08:48 Где может быть полезен DSL
00:14:28 DSL vs генерация кода
00:19:36 Kotlin DSL
00:22:16 Системные аналитики и Jetbrains MPS
00:27:06 Автогенерация ТЗ
00:29:56 Kotlin DSL vs Builder Pattern
00:35:22 Вербозность
00:37:56 Compile time DSL
00:39:00 DSL как АПИ к библиотеке
00:47:20 Что делать если не хватает DSL
00:58:07 Onboarding новых разработчиков
01:02:32 DSL vs Client library
01:05:16 Минусы DSL
01:07:30 Spring Boot и долгий старт
01:16:40 Unpopular Opinion
Гость - https://www.linkedin.com/in/fedor-yaremenko
Ссылки:
Статьи: https://hackernoon.com/u/yaf Разработка DSL в Kotlin - https://www.youtube.com/watch?v=8Js9WtiN2kg
Кип сейф! 🖖
- 24 Mar 2023
#45 - Олег Ненашев - история Jenkins и приключения проекта в мире Java
В 45 выпуске подкаста Javaswag поговорили с Олегом Ненашевым об истории Jenkins, Continuous Delivery Foundation и Jenkins X
00:01:34 О себе
00:06:40 История и идея Дженкинса
00:13:36 Облачка и солнышки
00:16:48 Чем Дженкинс уникален
00:18:56 Jenkins как CI
00:23:14 Пайплайны
00:33:08 Как тестировать пайплайны
00:40:54 Кулстори о применениях Дженкинса
00:45:42 Альтернативы Jenkins
00:52:02 Уязвимости, и как проект с ними борется
01:03:56 Переход на Java 11/17
01:12:10 CloudBees
01:19:18 Continuous Delivery Foundation
01:26:32 Jenkins X
01:31:42 Jenkinsfile Runner
01:33:36 Что можно улучшить в архитектуре Дженкинса
01:38:10 Unpopular Opinion
01:43:36 Как контрибьютить в Дженкинс
Гость - https://linktr.ee/onenashev, https://twitter.com/oleg_nenashev
Ссылки:
- https://www.jenkins.io/
- https://cd.foundation/
- https://github.com/jenkinsci/jenkinsfile-runner
- https://www.jenkins.io/participate/
Errata:
- Олег оговорился, что проект Woodpecker основан на Spinnaker, но это не так. Он основан на Drone CI.
Кип сейф! 🖖
- 3 Mar 2023
#44 - Алексей Нестеров - работа в Pivotal, разработка Спринга и переход с Джавы в Голэнг
В 44 выпуске подкаста Javaswag поговорили с Алексеем Нестеровым о работе в Pivotal, разработке Спринга и переходе на Golang
00:02:30 О себе
00:04:36 Переход в Pivotal Labs, апологет Agile, TDD, Lean разработки
00:12:58 Парное программирование
00:20:10 Как начал пилить Spring Framework
00:27:12 Лучшая команда Спринга
00:32:22 Что нравится и бесит в Спринге
00:35:58 Пишем на аннотациях а не на Джаве
00:46:40 Полумикросервисный подход
00:50:06 Нативная компиляция
00:53:32 Будущее
00:55:50 Почему Го
01:00:56 На Джаве же можно тоже писать простой код
01:05:14 Почему писать код удобней
01:09:18 Бинарник в Го или нативная компиляция в Джава
01:12:30 Гонка веб-серверов
01:18:20 Почему в Голэнге один нормальный сборщик мусора
01:20:54 if err != nil
01:24:54 Скучная архитектура
01:26:09 Что бесит в Го
01:29:38 Unpopular Opinion
Гость - https://twitter.com/alek_sys
Кип сейф! 🖖
- 18 Jan 2023
#43 - Иван Пономарев - аналог Хибернейту Celesta, преподавание Джавы и Кафка Стримы
В 43 выпуске подкаста Javaswag поговорили с Иваном Пономаревым об аналоге Хибернейта Celesta, преподавании Джавы и Кафке Стримах
00:01:42 О себе, ERP системы и Java
00:07:22 Библиотека Celesta - это Hibernate или Liquibase?
00:16:32 Миграции
00:24:14 Кафка стримы
00:36:12 Кафка Стримы vs Кафка Таблицы
00:40:18 Преподавание в МФТИ, курс по Джаве
00:45:26 Как учить Джаве студентов
00:52:58 Нужно ли учить Спринг на курсе по Джаве?
01:00:18 Как устроен процесс сдачи лаб
01:06:22 Lightweight Java Visualizer
01:14:50 Как делать презентации в Asciidoc, CI/CD для слайдов
01:22:24 Kotlin
01:29:44 Кто такой стаф-разработчик. DSL в Synthesized
01:34:50 Конфы, Heisenbug, Hydra
01:42:56 Unpopular Opinion
01:44:10 Будущие планы
Гость - https://twitter.com/inponomarev
Ссылки:
Блог - https://inponomarev.ru/
Celesta - https://courseorchestra.github.io/celesta/en/index.html
Lightweight Java Visualizer - https://github.com/atp-mipt/ljv
Доклады https://www.youtube.com/@inponomarev
Кип сейф! 🖖
- 29 Dec 2022
#42 - Марк Стручков - курс на Яндекс Практикуме, собеседования и библиотека Кваркус
В 42 выпуске подкаста Javaswag поговорили с Марком Стручковым о курсах на Яндекс Практикуме, собеседованиях и библиотеке Кваркусе
00:00:44 О себе
00:03:10 Почему Java
00:05:28 Стажировка в Тинькофф
00:09:22 Старт нового проекта
00:11:40 Что нравилось на проекте
00:14:10 Работа в Яндекс Практикум
00:19:24 Частые вопросы QA сессий
00:21:36 Как выучить Джаву, Спринг,Хибернейт,Докер на курсе
00:26:14 Берешь ли на работу ребят с курсов?
00:29:16 Собеседования
00:33:06 Что ты ищешь в кандидате?
00:34:16 Вопрос с собеса
00:36:38 Кул стори с собеса №1
00:40:02 Кул стори с собеса №2
00:44:32 Разные кандидаты
00:51:04 Трата времени на собесах
00:57:24 Пишем проект на Кваркусе
01:03:08 Архитектура
01:12:54 Реактивность
01:19:00 Мавен и плагины
01:29:18 Блог
Гость - https://t.me/dev_java_blog
Ссылки:
Кип сейф! 🖖
- 28 Dec 2022
#41 - Григорий Кошелев - устройство Кафки, телеметрия и распределенные трассировки
В 41 выпуске подкаста Javaswag поговорили с Григорием Кошелевым об устройстве Кафки, телеметрии и распределенные трассировках
00:03:40 Что было до Кафки? Какие альтернативы?
00:09:16 Реплицировать WAL сложно?
00:12:22 Внутренности Кафки, там Джава?
00:14:26 Брокер, кластер, продюсер, консьюмер
00:22:24 Exactly Once, At least Once Delivery
00:28:08 Хранение Commit Offset
00:33:36 Производительность
00:40:34 Zookeeper
00:51:26 Неправильный ключ партиционирования
00:56:46 Apache Pulsar
01:06:12 Кейсы точно не для Кафки
01:12:02 Облачная кафка
01:19:08 Телеметрия
01:22:48 Почему не нужно писать в Эластик напрямую?
01:31:12 Распределенные трассировки, спаны
01:38:12 Как писать на работе опен-сорс
01:41:00 Личный бренд
Гость - https://t.me/chnl_GregoryKoshelev
Ссылки:
Когда всё пошло по Кафке https://youtu.be/A_yUaPARv8U
Vostok Hercules: 3 года доставляем телеметрию — полёт нормальный https://www.youtube.com/watch?v=qg3yRmV-fHs
Kafka: от теории к практике - https://www.youtube.com/watch?v=ghKnX5fuW5s
Как готовить Кафку, чтобы не пригорало https://www.youtube.com/watch?v=M3HTM81P-Sg
А вы Кафку пробовали? https://www.youtube.com/watch?v=do182INdB2k
Остальные доклады Григория https://www.youtube.com/results?search_query=+Григорий+Кошелев
Кип сейф! 🖖
- 23 Dec 2022
#40 - Никита Прокопов - разочарование в Java, простота Clojure и опенсорс проекты
В 40 выпуске подкаста Javaswag поговорили с Никитой Прокоповым о разочаровании в Java, простоте Clojure и опенсорс проектах
00:01:20 О себе, Java, Erlang, Ocaml, Clojure
00:05:52 Что хорошего в Java
00:08:24 Dependency Injection & Spring
00:15:22 Impl и интерфейс, классы, помощь от IDE
00:20:52 Сложная архитектура и сеньоры
00:24:46 Maven, Gradle, Python как билд тул
00:38:08 Паблишинг библиотеки в Мавен Централ
00:46:04 Библиотека Skija и Fleet
00:53:16 Clojure
01:02:08 REPL, сериализация
01:07:52 ClojureScript
01:12:52 База данных - Datascript
01:21:28 Личный бренд
01:25:42 Дизайн интерфейсов, шрифты и программирование
01:29:46 TODO листы и Roam Research
Гость https://twitter.com/nikitonsky
Телеграм канал - https://t.me/nikitonsky_pub
Блог https://tonsky.me/
Ссылки от гостя
Кип сейф! 🖖
- 14 Dec 2022
#39 - Максим Грамин - SQL city, метаданные и подход Database as a Code
В 39 выпуске подкаста Javaswag поговорили с Максимом Граминым о подходе Database as a Code, метаданных БД и работе с SQL кодом в проекте
00:01:40 О себе, ;жизнь в SQL city
00:09:30 Переход в Джаву
00:17:52 SQL должен знать каждый разработчик
00:30:04 ORM не антипаттерн
00:40:44 SQL скрипты в проекте, миграции
00:51:26 Индексы, тестирование
00:59:44 Xранимые процедуры
01:09:24 Формативарование
01:17:20 БД в облаке или хостим сами
01:22:26 Подход Database as a Code
Гость https://twitter.com/graminmaksim
Ссылки от гостя
Блог https://gramin.pro/
Books:
Joe Celko SQL Programming Style https://www.oreilly.com/library/view/joe-celkos-sql/9780120887972/
Database as Code:
Database as Code: A Novel Concept https://www.liquibase.com/blog/database-as-code
Database as Code. Not only migrations https://percona.community/blog/2022/06/24/database-as-code
Database as Code - the Good, the Bad and the Ugly https://www.bytebase.com/blog/database-as-code
The Database as Code Manifesto https://github.com/mgramin/database-as-code
Tools:
Awesome Database Tools. Everything that makes working with databases easier - https://github.com/mgramin/awesome-db-tools
PostgresDBA. The missing set of useful tools for Postgres DBAs and all engineers - https://github.com/NikolayS/postgres_dba
RegreSQL. Regression Testing your SQL queries - https://github.com/dimitri/regresql
DbFit. Test-driven database development - https://github.com/dbfit/dbfit
Кип сейф! 🖖
- 2 Dec 2022
#38 - Кирилл Меркушев - эволюция Дженкинса, реактивная архитектура и тестконтейнеры
В 38 выпуске подкаста Javaswag поговорили с Кириллом Меркушевым о Дженкинсе, реактивной архитектуре и тестрировании
01:01:34 Тестирование, Яндекс, Дженкинс
01:09:54 Секрет успеха Дженкинса
01:18:20 Почему решили переписать на Груви?
01:28:26 Современный CI/CD и Дженкинс
01:33:28 Архитектура Vivy
01:54:12 Хранение в AWS
02:03:08 Flux и реактивность
02:10:58 Тестиривание
02:27:16 AtomicJar
02:36:10 Один из первых инженеров в стартапе
02:43:10 Книги и сборка механических клавиатур
Гость https://twitter.com/delnariel
Блог https://lanwen.dev/
Кодогенерация как способ решения проблем автоматизатора https://www.youtube.com/watch?v=9mF0zFW7cDQ
Проект на Java и Reactor — а как же тесты? https://www.youtube.com/watch?v=xzCDND6BX2g
https://www.testcontainers.org/
Nonviolent Communication - https://www.amazon.co.uk/Nonviolent-Communication-Language-Life-Guides/dp/189200528X
Кип сейф! 🖖
- 23 Nov 2022
#37 - Павел Сафронов - cистем-дизайн интервью в FAANG
В 37 выпуске подкаста Javaswag поговорили с Павлом Сафроновым о Систем-дизайн интервью в FAANG
00:01:54 О себе
00:06:32 Что проверяет систем-дизайн
00:10:08 Один раз упоминаем Джаву
00:13:44 Схема ответа
00:16:56 Нефункциональные требования
00:22:32 Back of envelope calculations
00:29:16 Тайминг
00:33:54 Конспект и архитектура
00:44:18 Валидация требований
00:54:52 Объекты и ассоциации в базе данных
01:05:12 Молчаливый интервьюер
01:12:26 Пригождается ли сис-диз в реальной работе
Ссылки от гостя
Канал гостя https://t.me/omgitsblog
FAANG System Design interview podcast https://www.youtube.com/watch?v=TyNo3oqSJ8k
Гость - https://t.me/@omgitspavel
Кип сейф! 🖖
- 11 Nov 2022
#36 - Владимир Иванов - мобильная архитектура, развитие в архитектора/стафф инженера
В 36 выпуске подкаста Javaswag поговорили с Владимиром Ивановым об архитектуре мобильных приложений и развитии в архитектора/стафф инженера
00:01:44 О себе
00:03:24 Мобильная разработка - прошлое
00:10:02 Приложение можно сделать вдвоем
00:14:52 Архитектура MVP/MVVM/ReactNative
00:23:58 Flutter и прототипы
00:29:48 Миф о тормозах
00:38:20 Гибридные приложения
00:43:34 Боль бэкенда
00:54:32 Мобильная разработка - настоящее
01:04:20 Переход в Engineering Manager
01:11:58 Manager vs Engineering Manager
01:21:30 Практика письменных принятия решений
01:25:40 Личный бренд и что дальше
Ссылки от гостя
Блог https://vvsevolodovich.dev
Телеграм - https://t.me/architectureweekly
Youtube https://www.youtube.com/channel/UCj63tJ08IWZDwzfbC-2z-aQ/featured
Continuous Learning: How to Keep Up with Progress https://www.youtube.com/watch?v=EdAxn5q-Hoo
Профессия: Solution Architect https://www.youtube.com/watch?v=aRBSmzcAVfE
Жизнь без подключения: от хаоса к консенсусу https://www.youtube.com/watch?v=mlkpf-TP9wQ
Что мобильным разработчикам в IT-индустрии неведомо https://www.youtube.com/watch?v=fXz2YQZyG3o
Гость - https://twitter.com/vvsevolodovich
Кип сейф! 🖖
- 26 Oct 2022
#35 - Алексей Рагозин - золотой век распределенных кэшей и профилировщики
В 35 выпуске подкаста Javaswag поговорили с Алексеем Рагозиным о распределенных кэшах, сборке мусора и профилировании приложений
00:01:59 О себе
00:07:16 Сборщики мусора
00:13:25 Куда делись распределенные кэши?
00:20:14 Отказоустойчивость
00:23:14 Что с Oracle Coherence, Hazelcast, GridGain
00:27:44 Индустрия ушла в ивент стриминг
00:30:25 Ретроспектива сборщиков мусора в Джаве
00:42:13 Тюнинг сборщика мусора
00:53:15 Джава и контейнеры
01:01:06 Профилировщики
01:28:16 Сейфпонты и сисколы
01:32:36 Работы джава консультантом
01:38:43 Будущее профайлеров
Ссылки от гостя
Блог - https://blog.ragozin.info/
Эвенты - https://aragozin.timepad.ru/
Профайлер - https://github.com/aragozin/jvm-tools
Cборка мусора в Java без пауз - https://www.youtube.com/watch?v=n89CZS0u6dY
Мастер-класс по Java Mission Control - https://www.youtube.com/watch?v=wm2JNlaJJ5k
Java и Linux — особенности эксплуатации - https://www.youtube.com/watch?v=HVVsjyVxcJ8
Мастер-класс: Новые и старые возможности Java Flight Recorder в OpenJDK 11 - https://www.youtube.com/watch?v=skNOBoazKPI
Гость - https://blog.ragozin.info/
Кип сейф! 🖖
- 12 Oct 2022
#34 - Андрей Сундуков - из PHP в Java, чистый код и собеседования
В 34 выпуске подкаста Javaswag поговорили с Андреем Сундуковым о переходе c PHP на Java, чистом коде и о собеседованиях
00:00:09 Инженер дата-центра
00:02:54 Из PHP в Java
00:08:16 Что хорошего в Java с точки зрения PHP
00:11:58 PHP же тоже можно писать читаемый код
00:17:15 Зачем писать чистый код
00:33:39 Clean Code 2.0
00:42:04 Простая 300 строчная функция против чистого кода
00:49:03 Договорились писать чистый код, что дальше?
00:58:28 Спринг мотивируют писать чистый код
01:04:13 Собеседования, курс From Junior to Middle https://education.dhabits.ru/
01:07:48 Что должно быть в резюме
01:18:29 Что спрашивают Сеньоров?
01:27:04 Систем дизайн интервью
01:32:38 Канал https://t.me/developers_mind
Ссылки от гостя
Разбор резюме на позицию Java Dev https://www.youtube.com/watch?v=nDRXq21B4PI
Гость - https://t.me/Hcd5opza9bdcjid26fg
Кип сейф! 🖖
- 19 Sep 2022
#33 - Алексей Генус - архитектура нео-банка и время
В 33 выпуске подкаста Javaswag поговорили с Алексеем Генусом о архитектуре нео-банка, протоколах и представлении времени в Java
00:01:22 О себе
00:03:37 Коннектор для Петербуржской биржи
00:06:04 Протокол, пакет, запрос
00:09:34 Netty vs NIO
Кладезь знаний о Netty https://www.amazon.de/-/en/Norman-Maurer/dp/1617291471
00:17:04 Полный дизастер
00:22:21 Паттерн Батч или Батчевание
00:26:08 Vivid Money
00:37:44 Пишем необанк с нуля
00:43:31 Разные стэки, Go, Java, Scala
00:51:18 Скучный стэк необанка
01:00:12 Мигрируем схемы БД
Как (не) мигрировать в postgresql https://habr.com/ru/post/582698/
01:03:07 Время, что не так?
Видео, после которого вам не захочется писать велосипеды https://www.youtube.com/watch?v=-5wpm-gesOY
Сколько способов измерить время существует? Больше, чем вы думаете https://www.ucolick.org/~sla/leapsecs/timescales.html
01:09:57 Joda-time - хороший API
Как joda time попал в jdk? https://jcp.org/en/jsr/detail?id=310
Другие API для работы со временем https://www.threeten.org/threeten-extra
01:15:28 Место откуда получаем время
Нововведения в java 17 https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/InstantSource.html
Почему в spring boot нет автоконфигурации Clock? https://github.com/spring-projects/spring-boot/issues/31397
01:25:23 Сериализация и хранение в БД LocalDateTime
Проблема 2000-го года сменяется проблемой 2038-го https://en.wikipedia.org/wiki/Year_2038_problem
Реальная ситуация с проблемой 2038-го года https://mobile.twitter.com/jxxf/status/1219009308438024200
Если надо сериализовать дату-время https://en.wikipedia.org/wiki/ISO_8601
Почему не нужно использовать timestamp в postgreqsql https://wiki.postgresql.org/wiki/Don%27t_Do_This#Don.27t_use_timestamp_.28without_time_zone.29
Почему Алексей не знает, сколько дней в феврале? https://ru.wikipedia.org/wiki/30_%D1%84%D0%B5%D0%B2%D1%80%D0%B0%D0%BB%D1%8F
01:37:08 Vivid Money и время
01:42:38 Зачем придумали время?
Об истории часовых поясах во всём мире очень приятно читать у Пола Эггерта https://github.com/eggert/tz
01:46:13 java.util.Date
01:50:09 О секундах координации
Google делает это последовательно (частенько меняя правила) https://developers.google.com/time/smear
Amazon рассказывает о 2015-м https://aws.amazon.com/blogs/aws/look-before-you-leap-the-coming-leap-second-and-aws/
Bloomberg рассказывает о 2016-м https://data.bloomberglp.com/professional/sites/4/Bloomberg-Leap-Second_December-2016.pdf
Петиция от facebook https://engineering.fb.com/2022/07/25/production-engineering/its-time-to-leave-the-leap-second-in-the-past/
Часы от facebook https://engineering.fb.com/2021/08/11/open-source/time-appliance/
01:59:30 Как измерять производительность
Интересное о nanotime https://shipilev.net/blog/2014/nanotrusting-nanotime/
02:10:21 Jmh
Собственно JMH https://github.com/openjdk/jmh
О производительности JVM вообще всегда актуален https://shipilev.net/
Гость - https://www.linkedin.com/in/alexey-g-12a92333/
Кип сейф! 🖖
- 31 Aug 2022
#32 - Александр Ланцов - алготрейдинг, кванты и почему Java
В 32 выпуске подкаста Javaswag поговорили с Александром Ланцовым о алготрейдинге, квант-разработчиках и Java vs C++
00:01:50 Как попал в Финтех
00:08:53 Трейдинговая платформа
00:15:18 Java vs C++, библиотека Aeron, ChronicleQueue
00:23:46 Клевые библиотеки в алготрейдинге
00:31:17 Дойч и Райф
00:37:57 Как затащить библиотеку в проект и померить количество денег
00:44:03 Про тестирование, симуляции и HDRHistorgram
00:47:07 Coordinated omission, wut?
00:51:59 Чем Джава код в трейдинге отличается от другого джава кода
00:55:28 Как померить регрессии
00:57:26 Почему протокол SBE преуспел в трейдинге?
00:59:58 Баги-баги
01:02:56 Что за лоси и что за Пи-Эн-Эл
01:06:26 Кто такой квант разработчик
01:12:09 Пригодилось ли финансовое образование
01:14:54 Финансовые модели
01:24:29 Логгинг в трейдинге
01:25:31 Планы на будущее. ГраалВМ или Джава 18
Ссылки от гостя:
Трейдинг и инвестиции с Александром Ланцовым - https://youtu.be/MU4OcFI3vok
How to design Low Latency Microservices - https://www.youtube.com/watch?v=R828U7xUggk
Микросервисы, отвечающие за несколько микросекунд — друзья и враги https://www.youtube.com/watch?v=QV-ue1YMdds
Aeron Cookbook https://aeroncookbook.com/
Центр математических финансов https://vk.com/cmf_russia
Физики и лирики в финансах https://www.youtube.com/watch?v=Hfvi17EZkvY
В зеркале супермоделей. Рассказы о моделях в финансовой экономике.
Производные Нуля: Дневник Структуратора
https://www.livelib.ru/book/1000655346-proizvodnye-nulya-dnevnik-strukturatora-vlad-goryachev
Гость - https://www.linkedin.com/in/alantsov/
Кип сейф! 🖖
- 5 Aug 2022
#31 - Антон Батяев - многоликий финтех, MBA и переход в продукт оунера
В 31 выпуске подкаста Javaswag поговорили с Антоном Батяевым о финтехе, MBA и переходе в продукт оунера
00:01:42 В чем специфика Финтеха? Что отличает от других проектов?
00:05:15 Финансовая математика на Java
00:08:17 Терминология в финтехе - деривативы, фьючерсы, опционы, свопы, риск менеджмент
00:20:46 Типовая архитектура финтех проекта
00:31:20 Почему остался в финтехе?
00:37:33 Чем отличается инвест банкинг от трейдинговой системы
00:46:01 Для чего нужен MBA?
00:51:00 Java Oracle Certificate, Java Teacher at GeekBrains
00:57:02 Revolut. Риск менеджмент с нуля. Переход в продукт оунера
01:04:23 Метрики продукт оунера
01:09:33 Технический/Бизнес бэкграунд продукт оунера
01:20:29 Бест практисы финтеха: CI/CD/QA
01:27:12 Onboarding
01:31:09 Архитектура CQRS
Ссылки от гостя:
Сайт: batiaev.com/
Финансовая математика для финтеха - https://www.youtube.com/playlist?list=PLwjJEuRWaJcIetm_s-qvqIy2_6l3YF7Qa
Современный валютный рынок - https://habr.com/ru/company/dbtc/blog/467415/
Матчинг ордеров на Java - https://github.com/fintecy/exchange-core
Маркет дата коннекторы - https://github.com/fintecy/connectors
Миллион котировок в секунду на Java - https://www.youtube.com/watch?v=j3wFOmRmSeg
CQRS и Event Sourcing от Мартина Томпсона - https://www.youtube.com/watch?v=RlwO6CJbJjQ
Event streaming Revolut Way - https://medium.com/revolut/event-streaming-the-revolut-way-9d928005ddf7
Вакансии https://jobs.lever.co/revolut/530d3bfd-bdca-4390-8f8a-bc88ddc1eb51
Гость - https://github.com/batiaev
Кип сейф! 🖖
- 4 Jul 2022
#30 - Владимир Плизга - Side Effect Injection, 10 лет техлида и интернет вещей
В 30 выпуске подкаста Javaswag поговорили с Владимиром Плизга о Side Effect Injection, 10 лет техлида и интернете вещей
00:01:45 Проекты в ЦФТ
00:05:30 Специфика интернет банка
00:12:41 Что делать с долгими тестами? Интеграционные, мутационные, тест контейнеры
00:19:23 Что была за архитектура до Спринга? Почему Спринг? Apache Wicket
00:31:15 jMint - Side Effect Injection - что это?
00:36:35 Можно ли было написать неудобный код в дроплетах jMint?
00:39:10 Синтаксис jMint. Что будет если сигнатуры не совпадают?
00:44:10 Почему называется jMint?
00:46:02 Проблемы при переезде с Джава 8 на Джава 11. Нужен ли Ломбок?
00:53:30 Class Data Sharing в микросервисах, для чего?
01:02:46 Спринг Бут Мавен плагин и Class Data Sharing
01:07:54 Приносит ли пользу CDS
01:09:18 Деплой, кубернэтэс и хелм в интернет-банке
01:15:11 Код в хелме пишет разработчик?
01:16:40 10 лет работы в компании, техлидство, поиск работы
01:21:27 Как правильно уйти из компании? Подготовка к переходу
01:28:28 Интернет Вещей - IOT
01:34:27 Одна платформа на все, архитектура AggreGate
01:43:05 Модель платформы, хранение в бинарном виде в одной колонке, самописные индексы, курсоры
01:48:28 Курсоры для уменьшения количества памяти
01:51:09 Спринга нет. Модульность платформы
01:55:55 Анализ хипдампов. SQL в MAT
Ссылки от гостя:
Сайт: https://toparvion.pro/
Доклад Инъекция тестовых поведений: как выйти сухим из воды: https://www.youtube.com/watch?v=2LFKpaZDW20
Доклад Spring Boot «fat» JAR: Тонкие части толстого артефакта: https://www.youtube.com/watch?v=UIHItqpA5as
Доклад «Экскурсия в бэкенд Интернета вещей»: https://www.youtube.com/watch?v=EMusaQNFiHs
Про VisualVM: https://twitter.com/toparvion/status/1530149280048201729?s=20&t=KGvRGp3CdY1B51qes9Sayg
Про SQL в MAT: https://github.com/vlsi/mat-calcite-plugin
Про доклад бывшего коллеги: https://youtu.be/w8tjOZzrfuc
Гость - https://twitter.com/toparvion
Кип сейф! 🖖
- 10 Jun 2022
#29 - Армен Нунупаров - PhD, беспилотные автомобили и медитация
В 29 выпуске подкаста Javaswag поговорили с Арменом Нунупаровым о нужности PhD, квадрокоптерах, беспилотных авто и медитации
00:06:18 Писать диссер и работать
00:13:50 Квадрокоптеры
00:16:14 Дроны, которые надо паять
00:22:12 Комплекс самозванца после PhD и overqualified
00:29:14 Платформа ROS и типы беспилотных автомобилей
00:34:28 Радары, лидары, персепшн, предикшн?
00:43:20 Может ли беспилотник передвигаться только с камерой или только с лидаром?
00:46:35 Какие беспилотники есть сейчас?
00:47:20 Что внутри беспилотника? Операционная система ROS
00:57:04 ну это же как у нас в Кафке Архитектура PubSub внутри ROS
01:01:08 Data Distribution Service (DDS) протокол
01:05:20 Архитектура команды и архитектура ноды
01:11:10 C++ и Python и где хранятся данные
01:15:20 Как выглядит работа беспилотника. Что нужно знать, чтобы перейти в разработку беспилотников
01:22:10 Медитации и випассана. 10 дневный ретрит молчания
01:46:10 Что изменилось после 9 дней медитаций
Ссылки от гостя:
Open Source Autopilot - https://px4.io/
The Robot Operating System (ROS)- https://docs.ros.org/en/foxy/index.html
Self-Driving Car Engineer - https://www.udacity.com/course/self-driving-car-engineer-nanodegree--nd0013
DDS (Data Distribution Service) Specification - https://fast-dds.docs.eprosima.com/en/latest/fastdds/library_overview/library_overview.html
Випассана - https://vipassana-retrit.ru/moscow
Гость - https://t.me/xFirefly
Кип сейф! 🖖
- 1 Jun 2022
#28 - Иван Землянский - библиотека Aeron, сериализация и важный DevOps
В 28 выпуске подкаста Javaswag поговорили с Иваном Землянским о библиотеке Aeron, сериализации и важности DevOps.
00:01:56 О себе
00:13:56 Типовая платформа для котировок
00:17:56 Пропускная способность и арбитраж котировок
00:20:33 Жив ли CQRS
00:26:32 Байки про сериализацию sbe, kryo, avro, one-nio
00:41:30 Aeron. MediaDriver, Shared Memory.
00:49:15 Почему UDP? Надежный UDP
00:55:03 TCP. Метрики Aeron
01:00:40 Архитектура Хедж-фонда
01:08:52 HFT разработчик. Выключаются ли сервера в 17:00?
01:17:37 Распределенная архитектура с Aeron. Почему так важен DevOps в low-latency системах?
01:25:55 Перфоманс в Докере - как не надо делать
01:29:55 Уход в Кубернетис и RTB
01:40:00 Apache Avro, Apache Kafka, маркетинг Гугла
01:50:30 Конференции Hydra, JPoint
Ссылки от гостя:
Cтатья Тодда про Информатику - https://www.informatica.com/downloads/1568_high_perf_messaging_wp/Topics-in-High-Performance-Messaging.htm
Youtube Continious Delivery Dave - https://m.youtube.com/c/ContinuousDelivery
Тот самый патч в Avro.
Задача https://issues.apache.org/jira/browse/AVRO-3408
PR - https://github.com/apache/avro/pull/1584
Конкаренси воркшоп от Шипилева - https://www.youtube.com/watch?v=koU38cczBy8
Доклады с Гидры:
Морис - https://www.youtube.com/watch?v=JlvH0DTVVbY
Ховард - https://www.youtube.com/watch?v=0K6kt39wyH0
Майкл Скотт - бомбезный доклад https://www.youtube.com/watch?v=nz6fASCVmT8
Доклад про Линчек. Вот тут общий обзор https://www.youtube.com/watch?v=hwbpUEGHvvY
Для всех программистов, не важно low-latency или просто ярки на вебсферу деплоишь) - https://www.youtube.com/watch?v=Mj5P47F6nJg
Записи гидры в целом - https://www.youtube.com/c/hydraconf/videos
Анонс доклада про Криу - https://hydraconf.com/talks/32e28558b39045b191cfddcb64af1fe8
Криу - https://criu.org/Main_Page
one-nio - https://github.com/odnoklassniki/one-nio
https://antiwarcommittee.info/
их декларация https://ruskd.com/
Гость - https://github.com/izemlyanskiy
Кип сейф! 🖖
- 23 May 2022
#27 - Алексей Овсянников - Котлин, Мультиплатформа и TelegramBotAPI
В 27 выпуске подкаста Javaswag поговорили с Алексеем Овсянниковым о Котлине, Котлин Мультиплаторме и о библиотеке для Телеграма
00:09:45 Как писать на Котлине не зная Джаву?
00:11:45 Любимые фичи Котлина?
00:17:28 Работа на Котлине и поиск работы на Джаве
00:19:26 Телеграм бот на Котлине
00:26:20 Публикация мультиплатформенной библиотеки
00:27:40 Начинаем с нуля: Котлин Мультиплатформа
00:37:50 Какая выгода Котлин Мультиплатформы?
00:42:25 Шаблоны проектов для КМП
00:44:33 Полезные фичи Котлина
00:48:40 Догонит ли Джава Котлин? Sealed, Loom
00:54:10 Котлин и совместимость
00:56:50 Что за Compose такой?
01:01:00 Почти все мы делаем на Котлине
01:09:10 Будущее мультиплатформы
https://github.com/InsanusMokrassar/TelegramBotAPI - tgbotapi
https://github.com/InsanusMokrassar/KotlinMultiplatformProjectTemplate - шаблон мультиплатформенного приложения
https://github.com/korlibs/klock - Работа со временем (есть еще https://github.com/Kotlin/kotlinx-datetime , но он был сыроват, когда я его щупал)
https://github.com/Kotlin/kotlinx.coroutines - корутины (асинхронность)
https://github.com/Kotlin/kotlinx.serialization - сериализация
https://github.com/Foso/Ktorfit - как retrofit, только мультиплатформа
https://github.com/JetBrains/Exposed - бд
https://github.com/JetBrains/compose-jb - тот самый compose jb
Гость - https://github.com/InsanusMokrassar
Кип сейф! 🖖
- 19 Apr 2022
#26 - Максим Бартков - Bucket4j, евангелизм опенсорса и книга Spring REST
В 26 выпуске подкаста Javaswag поговорили с Максимом Бартковым о библиотеке Bucket4j, евангелизме опенсорса и книге Spring REST
00:01:35 Bucket4j - зачем нужен рейтлимитинг?
00:05:56 Виды алгоритмов рейтлимитинга
00:10:17 Конфигурации и перфоманс, распределенная конфигурация
00:23:14 Что выбрать Bucket4j, Guava RateLimiter, resilience4j
00:26:18 Путь в евангелисты
00:37:22 Разница между девелопер адвокатом и евангелистом. Как померить евангелиста?
00:43:25 Как написать книгу о Спринге? Что самое сложное?
00:53:25 Рабочие проекты, проект по выявлению онкологии, хакатон
01:06:30 Идеальное будущее Bucket4j
Bucket4j — https://bucket4j.com/
https://github.com/vladimir-bukhtoyarov/bucket4j
Resilience4j - https://resilience4j.readme.io/
Книга Spring REST - https://link.springer.com/book/10.1007/978-1-4842-7477-4#about
Гость - https://twitter.com/MaximBartkov
Кип сейф! 🖖
- 16 Feb 2022
#25 - Никита Липский - AOT компиляция, Excelsior JET и GraalVM
В 25 выпуске подкаста Javaswag поговорили с Никитой Липским о компиляторах, истории Excelsior JET и GraalVM
00:03:40 История Кронос и операционки Excelsior
00:08:30 Спаяли свой компьютер, написали весь софт
00:10:32 Сколько нужно человек чтобы написать ОС и все программы?
00:20:25 Компиляторщики из Новосиба
00:24:40 Компаниям Netflix, Micrososft, Twitter, Google нужны JVM разработчики
00:26:02 Как появилась Java в Excelsior? Как по Whitepaper Джавы понять что это язык будущего?
00:34:57 Из каких компонентов состоит AOT компилятор
00:38:45 Что происходит внутри AOT?
00:45:30 В чем успех GraalVM?
00:52:00 Что GraalVM сделал правильно? Предположение замкнутости мира
00:58:00 Сипульки
00:59:05 Почему взлетел или не взлетел JetPerfect?
01:10:30 Почему не открыты исходники Excelsior JET?
01:14:00 Как успевали за скоростью релизов Джавы после 9 версии?
01:21:55 Что было когда Excelsior JET закрылся
01:25:55 NDA в Huawei. Когда будет апдейт?
01:27:50 Больше 20 лет проекту. Что было сделано правильно, а что можно было сделать иначе?
Кронос — http://kronos.ru/
История Excelsior JET - https://www.excelsior.ru/history
Общий предок Java и Оберон. Этот язык не Meta, а Mesa — https://en.wikipedia.org/wiki/Mesa_(programming_language) а также его наследник Cedar
Гость - https://twitter.com/pjBooms
Кип сейф! 🖖
- 30 Nov 2021
#24 - Иван Углянский - преподавание, разработка JVM и JUGNsk
В 24 выпуске подкаста Javaswag поговорили с Иваном Углянским о преподавании, разработке JVM и о JUGNsk
00:01:50 О себе, ExcelsiorJET, диплом
00:06:30 Откуда взялась идея писать свою виртуальную машину в Новосибирске? Откуда вырос ExcelsiorJET?
00:11:40 Как работать с научруком долгое время?
00:17:35 Что нужно знать системному программисту JVM - Java, С++, ассемблер?
00:22:50 Зачем преподавать в университете?
00:27:06 Студенческий вайб, списывание и чужие задачи
00:31:42 К сожалению так устроена система образования
00:33:35 Код-ревью, как первое впечатление в промышленной разработке
00:38:18 На сколько похожи имплементации разных виртуальных машин?
00:44:31 ExcelsiorJET и новые версии Java, как догнать релиз трейн
00:48:43 Что делает JVM JVM? TCK, JCK
00:55:20 Опцильные фичи при реализации JVM
00:56:26 Какие фичи имплементил в ExcelsiorJET? Как сделать профилировщик для AOT JVM
01:04:24 Что такое AOT компиляция? ExcelsiorJET vs GraalVM
01:15:43 ExcelsiorJET и Huawei
01:20:19 JUGNsk и SnowOne
01:37:58 Шапки ушанки для спикеров
В нативный код из уютного мира Java: Путешествие туда и обратно - https://www.youtube.com/watch?v=DVTeZdtuHS0
Как сделать встроенный в JVM профайлер, который не боится AOT компиляции
Ходячие объекты мертвецы, или GC всегда прав - https://www.youtube.com/watch?v=XtijbFcQxyw
Project: Leyden - https://mail.openjdk.java.net/pipermail/discuss/2020-April/005429.html
Mixin
Гость - https://twitter.com/dbg_nsk
Кип сейф! 🖖
- 18 Oct 2021
#23 - Сергей Голицын - в разработку через курсы, Гейм-Дев и GRPC микросервисы
В 23 выпуске подкаста Javaswag поговорили с Сергеем Голицыным о попадании в разработку через курсы, ГеймДеве и сервисах GRPC.
00:02:18 О себе, в разработку через курсы, почему Java
00:10:56 Микроконтроллеры и синдром Самозванца. Но когда я ушел пришел новый тимлид и все выпилил
00:17:30 Java ME vs серверная Java
00:26:10 CouchbaseLite на мобилках
00:30:05 Работа лидом, CI/CD
00:36:10 Овертаймы, выгорания. разработчик вместо 8 часов работает 16 и ты не оплачиваешь ему а даешь просто пиццу
00:44:29 Различие культур и ревью кода в международной компании
00:52:27 Переход в GameDev
01:00:57 Чем хорош GRPC?
01:14:17 Код grpc-java и хитрые баги
Couchbase
https://docs.couchbase.com/couchbase-lite/current/android/landing-replications.html
https://blog.couchbase.com/data-synchronization-offline-first-apps-couchbase/
Posgres Partitioning
Faang Interview - https://t.me/FaangInterview
Гость - https://www.linkedin.com/in/sergei-golitsyn/
https://habr.com/en/users/deft31/
https://www.facebook.com/profile.php?id=100005421847157
Кип сейф! 🖖
- 29 Jun 2021
#22 - Владимир Озеров - архитектура Ignite, Hazelcast, SQL движок Calcite и своя компания
В 22 выпуске подкаста Javaswag поговорили с Владимиром Озеровым об архитектуре Ignite, Hazelcast и фреймворкe для построения SQL движков - Apache Calcite
01:53 О себе
05:26 Для чего задумывался Ignite 10 лет назад? Terracotta, Hazelcast
16:00 Зачем распределенной мапе SQL запросы?
22:35 Что дает проекту вступление в Apache?
29:59 Другие проекты в Apache
31:38 Архитектура In Memory Data Grid(IMDG)
39:16 Протоколы и формат хранения
43:04 Тестирование распределенных систем
53:30 Apache Calcite
1:08:40 Почему SQL вновь популярен?
1:14:14 Маркетинг, продажи для инженера
1:18:05 Будущее IMDG
1:22:30 Революционный Apache Calcite и команда Querify Labs www.querifylabs.com/
Apache Calcite - calcite.incubator.apache.org/
Гость - twitter.com/devozerov
Кип сейф! 🖖
- 27 May 2021
#21 - Фёдор Коротков - CI в облаках, микросервисы на Котлине и магия Cirrus CI
В 21 выпуске подкаста Javaswag поговорили с Федором Коротковым о микросервисах, CI в облаках и магически быстром Cirrus CI
Гость - twitter.com/fedor
01:38 О себе
08:07 Собеседование в Твиттер
15:14 Архитектура того Твиттера
18:15 Отличия культуры
28:39 Про Twitter и AirBnb
32:07 Что такое Cirrus CI? Чем он отличается от других CI - https://medium.com/cirruslabs/introducing-cirrus-ci-a75cd1f49af0
50:45 Тарификация, компьют кредиты, майнеры
58:30 Почему Котлин? Как правильно писать микросервисы на Котлине https://github.com/fkorotkov/microservices
01:04 KotlinConf 2018 - Painless Microservices with Kotlin https://www.youtube.com/watch?v=oCySoQlAlPk
01:16 Gradle dependencies scope: impl, api или что Gradle подсмотрел у Bazel
01:22 Где хранит данные Cirrus CI? Google Datastore, PubSub
01:27 Какую базу брать стартапу и стоит ли использовать Kubernetes?
01:33 Мониторинг
01:38 Как один разработчик может обогнать стартап с сотней разработчиков
01:48 Что за язык Starlark и почему на нем удобно писать скрипты https://cirrus-ci.org/guide/programming-tasks/
01:59 Энтерпрайз и опенсорс
- 12 May 2021
#20 - Дмитрий Константинов - микросервисы, база данных Кассандра и базы в клауде
В 20 выпуске подкаста Javaswag поговорили с Дмитрием Константиновым о микросервисах, базе данных Кассандра и о базах в клауде
Гость - twitter.com/java_dnk
00:00 О себе
04:00 Чем занимается Netcracker
06:07 Подходит ли Java для сетевого взаимодействия
09:45 Как проработать в компании 11 лет?
20:55 Микро-сервисный путь и базы данных
39:45 В микросервисах - REST, GRPC, RabbitMQ, Kafka. В чью ответственность входит поддержка клиентской библиотеки для сервиса?
47:19 Оркестрация микросервисов
51:55 Где Кассандра подходит лучше всего? Есть ли Cassandra DBA? Должен ли девопсить Кассандру сам разработчик?
1:00:30 Модель данных, Scylla, Yogabyte, CocroachDB, Cassandra 4
1:25:06 Что делать если нужно достать данных без праймари ключа?
1:35:25 В какое приложение Кассандра подойдет наилучшим образом? Event Sourcing, Axon, Akka
1:37:02 Легкие транзакции
Ссылки:
Netflix Conductor: A microservices orchestrator - https://netflixtechblog.com/netflix-conductor-a-microservices-orchestrator-2e8d4771bf40
Оверхеды на сериализацию/десериализацию https://research.google/pubs/pub48030/
Библиотека для Спарка для чтения SSTables https://issues.apache.org/jira/browse/CASSANDRA-16222
Операторы Кассандры для https://github.com/datastax/cass-operator
https://orange-opensource.github.io/casskop/
статья на хабре про саги https://habr.com/ru/company/oleg-bunin/blog/418235/
полезная ссылка на эту тему - https://speakerdeck.com/caitiem20/distributed-sagas-a-protocol-for-coordinating-microservices
- 23 Apr 2021
#19 - Андрей Ребров - работа CTO и кофаундером, Agile-практики и стартапы
В 19 выпуске подкаста Javaswag поговорили с Андреем Ребровым о том, как быть основателем и CTO одновременно, Agile практиках и о работе в стартапе
Гость - https://twitter.com/andrebrov
Телеграмм канал Андрея - https://t.me/ssc_blog
00:01:35 Как все начиналось
00:07:37 Чем отличается Канбан/Аджайл тогда от канбан/Аджайл сейчас?
00:12:41 Типичный день тренера Скрамтрека
00:17:45 Аудит и работа с людьми
00:33:37 Технологии на который начинался Scentbird
00:37:31 Про Groovy
00:41:12 Grails и Spring Boot
00:43:36 Базы данных
00:49:04 Самое важное это то что идет от клиента: деньги, посылка, техподдержка
00:52:27 Когда ты один в стартапе главное автоматизировать рутину - CI и бэкапы
00:56:55 Как синхронизировать команды. SAFE, LESS фреймворки
01:00:48 Триггеры от сторонних систем - вебхуки, RabbitMQ
01:04:34 Как решить CTO - писать ли самому систему или купить готовую
01:11:16 Система репортинга для инвесторов
01:14:39 CTO ожидания vs реальность
01:21:16 CTO и кофаундер
01:25:13 деплой, оркестрация
01:26:43 Feature-toggle
01:33:00 Ручное и не совсем тестирование
01:35:31 New York и работа адвизором в стартапах
01:41:04 Кто такой Adviser
01:46:14 Менторство
01:48:27 Книги
- 11 Mar 2021
#18 - Митя Александров - работа архитектора, проект Helidon, JakartaEE и конференции в тачке
В 18 выпуске подкаста Javaswag поговорили с Митей Александровым о работе архитектора, о проекте Helidon, JakartaEE и конференции в тачке
00:05:25 Что было до Сеньор-Эксперт-Архитектор
00:24:32 Типы задач для GPU. Книга - https://dmkpress.com/catalog/computer/programming/c/tehnologiya_cuda_v_primerah_vvedenie_v_programmirovanie_graficheskih_processorov/
00:32:31 Принципиальный инженер
00:34:44 Как файл превращается в архитектуру?
00:40:02 Трейдоффы архитектуры
00:51:06 Как хранить 100 млн записей
00:53:25 Сейлз, софт, хард скиллы архитектора. Книга - кто такой архитектор(https://www.oreilly.com/library/view/fundamentals-of-software/9781492043447/)
00:58:26 Неправильные решения архитектора
01:06:29 Тулы архитектора? UML жив? Статья c Habr - Enterprise architect
01:13:11 Helidon
01:26:43 Плюсы и минусы Helidon
01:34:25 Micronaut
01:38:03 Инновации в Oracle
01:41:20 JakartaEE. 31 марта виртуальный стрим - https://jakartaone.org/ru/2021/russian/
01:46:39 Конференции в тачке
01:55:23 Путешествие на Северный полюс на ледоколе
02:03:07 Мультиязычность
Нано Подкаст - https://soundcloud.com/dmitry-aleksandrov-nano
Гость - https://twitter.com/bercut2000
- 7 Feb 2021
#17 - Роман Кудряшов - GraphQL, Spring vs Micronaut и будущее Rust
В 17 выпуске подкаста Javaswag поговорили с Романом Кудряшовым о Graphql, Котлине, сравнении Спринга и Микронаута и преимуществах Rust
00:01:23 О себе
00:07:12 Порог входа Rust
00:13:15 Cmake (*для библиотеки надо только чтобы cmake был в path, остальное будет сделано автоматически)
00:19:28 Преимущества GraphQL
00:21:08 Идеология
00:27:58 Query, Mutation, Subscription
00:39:36 Subscriptions и нотификации
00:43:11 Легаси проект, JOOQ, Hibernate, SpringBoot 1.4
00:48:21 Делпой в кубер и девопсеры
00:56:57 Spring, Quarkus, Micronaut, Ktor
01:00:56 Котлин
01:13:46 Graphql на Rust
Гость - https://twitter.com/_rkudryashov
- 15 Dec 2020
#16 - Андрей Мизуров - GameDev на Java, протоколы Stomp, RSocket и чем хорош Netty
В 16 выпуске подкаста Javaswag поговорили с Андреем Мизуровым о GameDeve на Java, протоколах Stomp, RSocket и о том, чем так хороша библиотека Netty
00:01:56 О себе, FoxPro, Квн, Налоговая
00:04:40 Как начать писать код если ты DBA?
00:06:25 До сих пор ли парсят XML на PL/SQL? Биллинг Сбера на Oracle
00:07:56 Хранимые процедуры, как микросервисы и хороший DBA, который все знает
00:09:02 Проблема архитектуры на хранимках - как обновлять код?
00:10:59 После энтерпрайза в GameDev
00:12:25 Дождаться пока все пользователи уйдут, чтобы задеплоить новую версию
00:15:07 Что удивило в ГеймДев после энтерпрайза?
00:17:09 Как начинается разработка игры? Откуда приходит идея, прототип?
00:19:19 Кто выбирает технологии, на которых будет написана игра?
00:20:15 Клиентские движки vs сервер
00:22:45 Ставим игру на рельсы - login-service, user-service, payment-сервис, bonus-service
00:25:45 Где хранятся игровые данные? MySql, Aerospike, Couchbase
00:30:17 Архитектура под игру
00:32:25 Пусть сообщения из SDK на бекенд
00:36:21 Spring Netflix stack: Zuul, Ribbon, Hystrix
00:39:59 Почему в Геймдеве популярна реактивщина?
00:48:23 ГеймДев и протоколы SmartFox
00:55:08 Протокол STOMP
01:00:51 RSocket
01:03:25 Что не так протоколом?
01:07:33 Netty
01:15:56 Netty 5
01:25:18 Couchbase, Aerospike
Гость - github.com/amizurov
- 9 Nov 2020
#15 - Дмитрий Думанский - Запуск стартапа на Kickstarter, Netty и No-Database подход
В 15 выпуске подкаста Javaswag поговорили с Дмитрием Думанским о запуске стартапа на Kickstarter, контрибьюшенах в Netty и подход NoDatabase
00:01:22 О себе
00:04:10 Как в аутсорсе писать производительный код
00:11:05 Данные отчетов в памяти и чем не подошел Solr
00:13:12 Микрооптимизации не влияют на общую картину
00:17:50 Kickstarter еще жив? Деньги с Kickstarter, Flipper Zero
00:36:06 Как все начиналось в 2015 году
00:39:55 Почему не Spring Framework
00:44:00 Субъективное отношение к Scala
00:45:34 Котлинисты ворвались в студию
00:47:57 В Blynk мы не используем базу данных
00:53:06 База данных не нужна
00:58:04 Что делать с транзакциями если нет БД?
01:01:11 Сэмплинг и подход cache-first
01:04:03 Холодные и горячие данные
01:08:39 Платить за сервера из своего кармана
01:09:30 Про опенсорс
01:16:39 Blynk 2.0 и ClickHouse
01:33:04 Netty
01:37:50 Как оптимизировать уже заоптимизированное?
01:44:35 Про Netty 5
01:48:03 Netty 5 не выйдет?
01:50:21 Какой путь развития у Netty 4?
01:51:15 Архитектура Blynk, Geo Dns
02:02:06 Что законтрибьютить в Netty
Гость - twitter.com/DOOM369
- 15 Oct 2020
#14 - Сергей Целовальников - JUG.EKB, переезд в Австралию и serce.me
В 14 выпуске подкаста Javaswag поговорили с Сергеем Целовальниковым об организации митапа в своем городе, переезде в Австралию и архитектуре Canva.com
00:01:35 О себе
00:02:34 JUG.EKB
00:04:49 Как организовать митап в своем городе?
00:07:53 Проекты для джуниора, Groovy скрипты для кастомизации продукта
00:21:42 Сколько времени уходит на статью в блог?
00:22:53 Чем занимался в JetBrains?
00:23:22 Интересная связка - Java, Clojure, ClojureScript
00:26:28 Магистерская работа в РАН с JetBrains, Cloud IDE
00:28:47 Как переехать в Австралию? Где Сидней?
00:35:30 Canva.com в 2016. Что такое Canva?
00:42:19 Не нужен нам ServiceMesh - https://serce.me/posts/23-07-2020-you-dont-need-no-service-mesh/
00:43:54 Деплоим даже если нет никаких изменений
00:44:44 Bazel. В чем выгода перехода на Bazel
00:48:42 Почему же не Грейдл?
00:51:49 Монорепа для Java и Javascript
00:52:48 Архитектура, макро-микро сервисы
00:57:36 Finagle, Protobuf-idl
01:05:08 Хранилище
01:10:18 Мониторинг, алерты
01:12:12 Что бы изменил вернувшись в прошлое?
Гость - https://twitter.com/SerCeMan
Телеграм канал подкаста t.me/javaswag
Чат t.me/javaswag_chat
- 9 Sep 2020
#13 - Сергей Цыпанов - Производительные строки и Хибернейтный Спринг
В 13 выпуске подкаста Javaswag поговорили с Сергеем Цыпановым о производительности строк, Спринге и Хибернейте.
00:01:17 О себе
00:02:35 Как начал заниматься производительностью?
00:06:59 Что делать когда приходят люди и говорят у нас проблема?
00:09:05 Нужен ли выделенный перфоманс инженер?
00:14:42 Патчи в OpenJDK
00:23:19 Project Skara
00:26:19 Баги при работе со строками
00:31:35 В 2к20 FindBugs, SonarQube, Intellij IDEA must have
00:32:42 Доклад на JPoint
00:37:45 Spring и производительность
00:39:55 Можно ли на Спринге написать производительное приложение?
00:47:15 Модули спринга
00:48:19 Spring Data JPA чем так хороши?
00:53:43 Можно ли использовать Spring Data без Hibernate?
01:58:48 Сложность конфигурирования Hibernate
01:02:48 Когда использовать Hibernate а когда JDBC?
01:07:12 Информационный пузырь Спринга
01:09:11 Есть ли конкурент спринга?
01:11:26 Есть будущее у Котлина в разработке бекендов?
01:12:25 Хибернейт и реактивщина
01:13:50 Стоит ли изучать Спринг и Хибернейт начинающему разработчику?
01:14:51 Архитектура проекта
01:18:33 CI/CD/CodeReview
01:20:44 Сервис Дискавери
01:24:31 Тестирование
Гость - https://habr.com/users/tsypanov/
Телеграм канал подкаста t.me/javaswag
Чат t.me/javaswag_chat
- 14 Aug 2020
#12 - Алексей Зиновьев - Машинное обучение изнутри Спарка и Игнайта
В 12 выпуске подкаста Javaswag поговорили с Алексеем Зиновьевым о машинном обучении внутри Apache Spark и Apache Ignite.
00:03:03 Как все началось?
00:06:31 Что такое задача машинного обучения?
00:09:46 Посчитать статистику это уже ML? Предсказать событие это уже ML? А когда это ML?
00:13:13 DevOps ML Engineer, QA ML Developer, Business ML Analyst и другие вакансии будущего
00:20:43 Почему дата сайнтисты пишут на питоне?
00:22:04 В какой момент в дата сайнсе появилась Джава?
00:24:49 Что было до Apache Spark?
00:29:29 Модуль Spark ML
00:35:22 Почему Apache Spark победил в мире ETL?
00:37:07 История SparkML
00:40:28 Как написать новый алгоритм для Apache Spark?
00:44:03 Apache Spark 3.0
00:48:12 Спарк - помойка джаров с мавен централа
00:50:46 Apache Spark движется на встречу дата сайнтистам, но они питонисты
00:52:56 Опенсорсные продукты, за которыми стоит одна кампания
00:55:05 Apache Ignite
01:03:40 ML в Apache Ignite
01:09:41 Как спроектировать API ML библиотеки
01:15:55 Как Ignite попал в Apache Foundation?
01:16:52 Какие алгоритмы реализовали первыми в Apache Ignite?
01:21:35 Меряемся фичами Игнайта и Спарка
01:25:32 Будущее Ignite ML
01:31:17 Как стать коммитером в Ignite? В какие блоки можно контрибьютить?
01:38:30 Как вкатиться в датасаенс в 2к20? Курс Воронцова и секретный дата саенс чат
Гость - https://twitter.com/zaleslaw
Телеграм канал подкаста t.me/javaswag
Чат t.me/javaswag_chat
- 8 Jul 2020
#11 - Антон Куранда - Первый в мире опенсорсный платежный процессинг
В 11 выпуске подкаста Javaswag поговорили с Антоном Куранда первой в мире платежной платформе с открытым исходным кодом
00:00:38 Как пришел в разработку платежных систем
00:03:53 Как планировать архитектуру?
00:07:43 Типовая архитектура платежной системы
00:10:47 Как объяснить бизнесу новую архитектуру приложения?
00:14:12 Soft skills, sales skills для тех дира
00:15:03 Как делить архитектуру на микросервисы?
00:21:14 Конфигурация, деплой микросервисов
00:25:58 Фронтенд и бекенд микросервисы
00:28:56 HTTP vs Thrift микросервисы
00:31:37 Как происходит обновление версий АПИ ?
00:35:54 Опенсорс платформы. Та самая статья на Хабре - https://habr.com/ru/company/rbkmoney/blog/493202/
00:41:45 Nginx и опенсорс
00:42:38 Опасения опенсорса
00:44:42 Как отреагировало сообщество , Хабр еще тот!
00:48:36 Что писать на Эрланге, а что на Джаве?
00:50:01 Java библиотеки которые используете
00:51:35 Почему именно Rial KV?
00:58:20 Apache Kafka
01:02:12 Зависимости между микросервисами
01:03:15 Команда
01:07:18 CI, документация
01:13:50 Чтобы хотел поменять в архитектуре, если вернуться в прошлое
Гость - https://habr.com/ru/users/akuranda/
Телеграм канал подкаста t.me/javaswag
Чат t.me/javaswag_chat
- 17 Jun 2020
#10 - Тагир Валеев - Сибирский Java чемпион
В 10 выпуске подкаста Javaswag поговорили с Тагиром Валеевым о джава чемпионстве, фичах Intellij IDEA и коммитах в OpenJDK.
00:00 Приветствие
01:11 Как стать джава чемпионом
08:31 Кандидат наук
17:12 Как ты все успеваешь?
28:26 Три самые крупные фичи в IDEA
37:01 Поддержка рекордов в IDEA
40:19 IDEA умеет генерировать рекорды по классам?
43:42 Как IDEA справляется с полугодовым релизным циклом?
46:46 Недооцененная фича в IDEA по мнению Тагира
52:51 Насколько глубоко анализирует IDEA?
1:00:38 Выведение контрактов в IDEA
1:07:02 Какой самый первый патч в OpenJDK?
1:08:29 OpenJDK и GitHub
1:13:23 Можно ли обновлять поля рекордов?
1:18:28 Деконструкция рекордов
1:23:10 Рекорды и сериализация
1:24:31 На рекорды стоит смотреть через призму сериализации
1:25:32 Сериализация восстанет из пепла
1:26:20 Про конференции
1:29:38 JVM Language Summit
Гость - https://twitter.com/tagir_valeev
Телеграм канал подкаста t.me/javaswag
Чат t.me/javaswag_chat
Сайт javaswag.ru
Голоса подкаста - t.me/volyx, https://twitter.com/ZhekaKozlov
- 9 Jun 2020
#9 - Евгений Козлов - День рождения Java и новые фичи Java 12-14
В 9 выпуске подкаста Javaswag поговорили с Евгением Козловым о 25 летии джавы и новых фичах в 12 и 14 версиях.
00:00 Приветствие
00:49 История Java 1.0
06:29 Джава не прижилась в клиенте
12:17 Зависимости в СиШарпе
20:10 Java-конструкторы должны быть deprecated https://twitter.com/headius/status/1265876680188592129?s=20
37:12 Одногнездники
- Nestmates: http://openjdk.java.net/jeps/181
39:25 Четыре способа написать switch
JEP 325: Switch Expressions (Preview) https://openjdk.java.net/jeps/325
Статья Стива Колборна - https://blog.joda.org/2019/11/java-switch-4-wrongs-dont-make-right.html
53:00 Raw String Literals были отклонены: https://openjdk.java.net/jeps/326
59:26 Text blocks (preview): https://openjdk.java.net/jeps/355
1:09:50 Class Data Sharing: https://minijug.ru/java_13_is_out.html
1:15:10 Рекорды в Java 14 - туплы, именованные кортежи
- JEP 359: Records (Preview) https://openjdk.java.net/jeps/359
1:21-30 методы with для рекордов
01:39:58 Паттерн матчинг
JEP 305: Pattern Matching for instanceof (Preview) https://openjdk.java.net/jeps/305
Перекрытие полей: https://mail.openjdk.java.net/pipermail/amber-spec-experts/2019-November/001835.html
Гость - twitter.com/ZhekaKozlov
Сайт minijug.ru/
Телеграм канал Жени - t.me/miniJUG
Телеграм канал подкаста t.me/javaswag
Чат t.me/javaswag_chat
Сайт javaswag.ru
Голос подкаста - t.me/volyx
- 26 May 2020
#8 - Евгений Козлов - почему не C#, var - зло или нет, новые фичи Java 9-11
В 8 выпуске подкаста Javaswag поговорили с Евгением Козловым о фичах, которые появились начиная с Java 9 по 11 версию.
00-00 Приветствие
02-50 О себе
04-20 Чем хорош/плох C#?
13-00 Про функциональщину, иммутабельность и взаимодействие с коллегами
16-36 Диагноз Стримоз - когда используешь стримы везде
17-40 Что такое JEP ?
25-00 Модульность в Java 9
40-26 Переходим на новую версию Джавы со старым класспасом
46-30 Изменения в Джаве 9 помимо модулей
63-29 Несинтаксические изменения в 9
77-58 JShell
87-30 Новый полугодовой релизный цикл
91-10 Java 10. Когда использовать var? Когда ставить тип, а когда использовать var? var! var!
106-08 Java 11. var в лямбдах
Гость - twitter.com/ZhekaKozlov
Сайт minijug.ru/
Телеграм канал Жени - t.me/miniJUG
Телеграм канал подкаста t.me/javaswag
Чат t.me/javaswag_chat
Сайт javaswag.ru
Голос подкаста - t.me/volyx
- 1 Apr 2020
#7 - Роман Левентов - Apache Druid, ChronicleMap, Koloboke
В 7 выпуске подкаста Javaswag поговорили с Романом Левентов об Apache Druid, ChronicleMap и библиотеке Романа Колобок.
00-00 Приветствие
01-00 Что такое Apache Druid
21-00 База данных на Java
30-30 Опенсорс в Метамаркетс, внешние контрибьютеры
35-39 Будущее колоночных баз
37-15 OpenHFT
43-29 Trove vs HashMap
46-01 Как Koloboke генерирует Хешмапы?
48-57 ChronicleMap, чем отличается ChronicleMap от ConcurrentHashMap?
56-01 Трейдофы хештаблиц
68-53 Дрифт врмени в ScheduledThreadPoolExecutor
78-10 Библиотека примитивов Koloboke
85-06 Консалтинг
92-15 Engineering Ideas https://engineeringideas.substack.com/
96-48 Code Review Checklist: Java Concurrency https://github.com/code-review-checklists/java-concurrency
112-28 Удаленная работа, климатические изменения
Гость - twitter.com/leventov/
Телеграм канал t.me/javaswag
Чат t.me/javaswag_chat
Сайт javaswag.ru
Голос подкаста - t.me/volyx
Продакшн подкаста - t.me/pahaus
- 14 Feb 2020
#6 - Игорь Сорока - Переезд в Финляндию, работа консультантом, софт скиллы
В 6 выпуске подкаста Javaswag поговорили с Игорем Сорокой о переезде в Финляндию, о изучении разных языков программирования, о работе консультантом и о важности софт скиллов.
00-00 Приветствие
00-57 Из инженера-механика в программисты
01-30 Как решил заняться программированием?
02-30 Набор курсов в магистратуре
05-11 Групповой проект. JavaFX не новый для Java UI фреймворк, деплой в Heroku, VueJS
08-18 Я приходил к другу, который знал финский, и он переводил в Гугл транслейте
08-48 JavaRush - советую всем, кто очень поздно пришел в программирование, много основ.
09-38 Финский Java курc, JavaRush
10-58 Сколько понадобилось времени для того чтобы писать приложение на Джаве? Первый фриланс
13-10 Поиск работы после магистратуры. Ошибка - искать работу по своей специальности и по программированию.
15-00 Стартап. Адройд-приложение - слуховой аппарат в телефоне.
15-36 40 отказов по резюме. Что спасало - это большая мотивация найти работу
17-19 Резюме, в котором было все!
18-00 Синдром самозванца и записная книжка с вопросами по Core Java
20-26 Первый оффер. Очень много работы и подготовки.
22-24 Нужны ли Soft Skills для Junior?
23-11 Стэк - монолит, OSGI, Vaadin, Jenkins, embeded. Работает ли OSGI? Вечерний девопс.
29-30 Финский график работы
31-15 Fullstack разработчик умеет все? 30% Java, остальное Fullstack
35-04 Amazon Associate Developer нужен ли?
37-50 Консалтинг
40-10 Как внедрить AWS?
41-15 Чем приглянулся Typescript?
42-02 У каждого клиента свой стек. Gatling, Scala. Архитектор решил, что Gatling идеальный тул и его все послушали
45-42 Прокачка консультантских софт скиллов. Что такое софт скиллы?
50-07 Можно проверить софт-скилы по резюме?
53-27 Зачем вести блог? Блог Игоря - https://medium.com/@igorsoroka/ Важность английского языка.
62-02 Были ли проблемы с английским языком при переезде?
63-40 Новая работа. Angular, Typescript, Kotlin, Java, AWS.
66-00 Идем к микросервисам. Все написано просто, без Спринга. Amazon RDS, Postgres
67-15 На Джаве все новое писать не хочется поэтому переходим на Котлин. С Котлином легче?
69-50 Подкастинг
72-30 GeekExport
Ссылки от Игоря
Первые опыт с облаками: https://www.heroku.com/
Где учился программировать: https://javarush.ru
Vaadin - UI framework для джавистов : https://vaadin.com/learn/tutorials/v14
Книги:
Подкасты:
Про жизнь разработчика в Финляндии:
Оставить заявку на бесплатное ревью резюме: https://geekexport.com/cv-review
Гость - https://t.me/olegsoroka
Телеграм канал https://t.me/javaswag
Чат https://t.me/javaswag_chat
Сайт https://javaswag.ru
Голос подкаста - https://t.me/volyx
Продакшн подкаста - https://t.me/pahaus
- 31 Jan 2020
#5 - Олег Чирухин - Habr, JUG, Sber
В пятом выпуске подкаста Javaswag поговорили с Олегом Чирухиным. Поговорили о процессе написания статей на Хабр, о Джава-дайджесте, архитекторстве в Сбербанке, подкастинге, ютюбе, разработке игр.
00:00:00 Приветствие
00:00:56 5-ый в рейтинге Хабра, как так получилось?
00:02:30 2,5 часа на редактирование текста статьи
00:05:45 После двух часов редактирования статьи остались только картинки
00:06:50 У меня есть вся мощь кампании JUG.RU
00:08:15 Как сделать смешной мем? У меня есть бонусы - я работаю джава-программистом.
00:11:00 Почему пишешь на Хабр то своего имени?
00:12:05 Архитектор в Сбербанке
00:15:40 Что делает в течении дня архитектор?
00:17:20 Стэк Сбера на 2016 год - GridGain
00:20:15 Что такое ин мемори датагрид?
00:22:10 Госуслуги, PHP
00:27:57 PHP - бдсм искусство
00:30:30 GameDev это сложно. По своей инициативе спал на кухне с палаткой. Истории из Uncharted
00:36:30 Россия - страна победивших казуальных игр
00:37:30 Посты с DTF. Книги: The Art of Game Design: A Book of Lenses, Кровь, пот и пиксели. Обратная сторона индустрии
00:43:00 Почему на конференциях мало докладов о GameDev?
00:46:00 История про гейм-девелопера, который сидел на шее у своей девушки
00:48:35 Выступление на JBreak 2017
00:54:00 Переход JUG.RU. Паттерны написания статьи.
00:63:00 Джава-дайджест
00:67:07 Джош Лонг - машина для производства подкастов. Три состояни Джоша: спит, готовит доклад, кодит.
00:70:00 Майстоуны из Джава дайджеста, как за всем этим следить? Eclipse Ditto https://www.eclipse.org/ditto/index.html
00:77:03 Аудиозапись Почему я перестал читать новости. Чтение не важный скил, слушание подкастов не важный скил, чтение того что нужно и отказ от того что не нужно это важный скил. Поход на научную школу/конференцию тоже не особо важный скил
Какой важный скилл для тебя?
00:78:30 Как писать о технологиях, которые не нравятся?
00:81:35 Сегодня у Олега в дайджесте, а завтра у джуна в продакшене
00:83:40 Читать все новости подряд глупо, превращать их в дайджесты глупо. Пропал джава-дайджест. Новый формат джава-дайджеста.
00:87:03 Любимый джава-стек: спринг-бут, sqlite. “Чем меньше всяких церемоний, чем меньше хибернейта над хибернейтом, тем лучше. Начиная с какого-то количества хибернейтов друг на друга накрученных проект уже обречен. Просто вы еще об этом не знаете.:
00:89:05 Куда пропали встречи JUG в Санкт-Петербурге?
00:91:20 Что изменилось у тебя в работе с 2017 года? У меня номер на майке -23, сейчас нас человек 75
00:94:10 20 докладов на конференции много или мало?
00:97:00 Подкасты, Ютьюб. Подкаст Витая пара http://tpair.org/.
Разбор Полетов - что с ним? Новый подкаст - https://bitcask.live
Люди приходят в подкаст и начинают расползаться мыслью по древу.
00:107:00 Youtube-видео. Подкатываем к тёлкам яйца вместе с Unity 3D
Человек ведро и энергетики https://youtu.be/8BBZnmOf0cI?t=467
Человек ведро Начало https://youtu.be/8BBZnmOf0cI?t=1263
Мотивация для Юнити разработчика https://youtu.be/8BBZnmOf0cI?t=2149
Человек ведро https://youtu.be/8BBZnmOf0cI?t=3799
Человек ведро на танцует https://youtu.be/8BBZnmOf0cI?t=3911
Человек ведро играет в игру https://youtu.be/8BBZnmOf0cI?t=4327
Человек-ведро покупает вино https://youtu.be/8BBZnmOf0cI?t=2787
00:141:35 Ютуб стримы по 4 часа. Жизнь стримера. Ачивка на Твиче Like clockwork за ежедневный стриминг в течение месяца. Стриминг - это работа.
Youtube канал Олега - https://youtube.com/javawatch
Telegram канал - https://t.me/javawatch
Доклады Олега
https://www.youtube.com/watch?v=TJUiTA-BluI JBreak 2017 - Олег Чирухин — Девопс: теперь Java не тормозит
https://www.youtube.com/watch?v=hnadkXBIC1k JPoint 2018 - Олег Чирухин — Graal, Value Types, Loom и прочие ништяки 17 сент. 2018 г.
https://www.youtube.com/watch?v=lH4H0LEAo9g Олег Чирухин — GraalVM Всемогущий
Гость - https://twitter.com/olegchir
Телеграм канал https://t.me/javaswag
Чат https://t.me/javaswag_chat
Голос подкаста - https://t.me/volyx
Продакшн подкаста - https://t.me/pahaus
- 12 Dec 2019
#4 - Руслан Ибрагимов - Bootique, Undertow, Kotlin
#4 - Руслан Ибрагимов - Bootique, Kotlin, ktor
00:00:44 Что делает програмный коммитет конференции?
00:01:58 Чем хорош https://bootique.io/?
00:06:29 Сервер Undertow, почему?
00:09:09 Undertow 3 и netty
00:11:24 Kotlin
00:14:41 Любимые фичи в Kotlin
00:16:26 Kotlin User Group - https://bkug.by/ Kotlin Beta в продакшене !!!
00:17:52 Kotlin на фронтенд митапе
00:19:20 Кто такой Fullstack разработчик?
00:22:39 https://ktor.io/
00:23:50 Awesome Kotlin https://kotlin.link/
00:24:42 Komodo https://github.com/Heapy/komodo
- Koin https://insert-koin.io/
00:27:27 Какую базу данных используешь для пет-проджектов?
- Xodus https://github.com/JetBrains/xodus - Append-Only Log
00:28:48 Что пробовал до Xodus?
- mysql, mariadb, postgresql, oracle - Xodus в проде
00:31:03 Странный вопрос про Dell XPS
- Почему не Mac?
00:33:00 Free As a Freedom
Гость - https://twitter.com/HeapyHop
Телеграм канал t.me/javaswag
Чат t.me/javaswag_chat
Подкаст записан на конференции https://jfuture.dev/
Голос подкаста - t.me/volyx:
Продакшн подкаста - t.me/pahaus
- 4 Nov 2019
#3 - Сергей Егоров - Pivotal, Testcontainers, Reactor
#3 - Сергей Егоров - Pivotal, Testcontainers, Reactor
00:00:49 Доклад про https://github.com/testcontainers/
00:06:17 Разработка игр
00:09:30 Язык Haxe
- https://haxe.org/ - https://www.youtube.com/watch?v=XQLNAx9DGmk
00:14:18 Apache Groovy
- https://www.youtube.com/watch?v=Ujuz-D-ekXE
00:16:30 Groovy макрометоды https://github.com/bsideup/MacroGroovy
00:22:50 Первый доклад на английском на
00:25:10 Zeroturnaround JRebel, XRebel
00:30:40 С нуля в облака. Поднять продакшн, пока едет пицца
- https://www.youtube.com/watch?v=9lpDjZUGhKA
00:33:25 Берлин, Zalando
00:36:36 История Testcontainers
- Перевести сервис на SpringBoot за час
00:40:30 Vivy https://www.vivy.com/
- Стартап - Архитектура за которую не стыдно EventSourcing, CQRS - Выиграть тендер у IBM - Пивотал - это как найти улыбающуюся, поизитивну голову лошади в кровати :) - Liiklus - https://github.com/bsideup/liiklus - Бум ифраструктур, построенных на ивентах - Apache Kafka, Apache Pulsar - 50 микросервисов
00:58:40 Спринг
- Офисы Pivotal - Staff Software Engineer - Reactor & Reactive Spring - https://pivotal.io/careers/openings/staff-software-engineer-reactor-reactive-spring/1077260 - Почему выбрали реактивный подход в Vivy - Ownership & trust - Конференция s1p https://springoneplatform.io/ - Java agent to detect blocking calls from non-blocking threads https://github.com/reactor/BlockHound - Доклад от Blizzard https://www.youtube.com/watch?v=xCu73WVg8Ps
00:67:10 Jabel - unlock Javac 12+ syntax when targeting Java 8
- https://github.com/bsideup/jabel
00:70:45 Подкаст Two Devs One Ops https://www.2d1o.ru/
00:72:10 Никнейм bsideup
00:74:00 Дреды, конфликты в университете
Гость - twitter.com/bsideup
Телеграм канал t.me/javaswag
Чат t.me/javaswag_chat
Подкаст записан на конференции https://jokerconf.com/
Голос подкаста - t.me/volyx
Продакшн подкаста - t.me/pahaus
- 21 Oct 2019
#2 - Олег Шелаев - из разработчика в DevRel!
00:00:25 Как стал девелопер-адвокатом?
00:05:58 Как начал заниматься маркетингом в JRebel?
00:10:37 Virtual Java User Group https://virtualjug.com/
00:14:05 Конференция vJUG24
00:19:40 Что такое GraalVM ?
00:23:45 Как прошел HolyJS ?
To be continued
Телеграм канал t.me/javaswag
Чат t.me/javaswag_chat
Сайт javaswag.ru
Подкаст записан на конференции 2019.rigadevdays.lv/
Голос подкаста - t.me/volyx
Продакшн подкаста - t.me/pahaus
- 25 Jul 2019
#1 - Олег Докука - Project Reactor, Rsocket, Netify
Олег Докука - Project Reactor, Rsocket, Netify
Телеграм канал https://t.me/javaswag Сайт https://javaswag.github.io Подкаст записан на конференции 2019.rigadevdays.lv/
00:00:00 Начало
00:00:25 Как прошел доклад? Зачем бросаться конфетами на конференции?
00:02:01 Как начал выступать на конференциях?
00:03:50 Сколько конференций посетил в этом году?
00:05:00 Как подать доклад на конференцию?
00:08:00 Про контрибьютинг в projectreactor.io и книгу
00:10:24 Переход с русского на английский. Как выучил английский за полтора месяца до доклада.
00:14:30 Когда успеваешь писать код?
00:16:30 Что за стек использовал до реактора и как был CTO стартапа
00:19:58 Проджект реактор, как начался?
00:22:58 Как рассказывал коллегам про реактор?
00:25:48 Как писать код в реактивном стиле? Какую базу данных использовали?
00:30:15 Есть ли для базы реактивный драйвер?
00:38:50 Реактор в лицах. Кто разрабатывает projectreactor?
00:43:00 Как начать контрибьютить в Спринг?
00:45:25 Как начал заниматься RSocket? Почему не удалось попасть на работу в Pivotal
00:48:36 История протокола RSocket и Netflix
00:56:54 Куда пропали евангелисты Grpc? QUIC3 замена Grpc?
00:64:04 Proteus - новый брокер сообщений для RSocket. Что такое sidecar, servicemesh?
00:79:20 Как измерить девелопер адвоката?
- 25 Jun 2019
#0 - Евгений Борисов о пчеле BeanFactory, айбирнейте и спринге
Евгений Борисов о пчелах на слайдах, айбирнейте и спринге
Телеграм канал https://t.me/javaswag
Сайт https://javaswag.github.io
Подкаст записан на конференции https://2019.rigadevdays.lv/
00:00:00 Как начал выступать на конференции?
00:07:25 Что такое айбирнейт?
00:08:27 Почему пчела это BeanFactory, а муравей - BeadDefinitionReader?
00:10:09 Почему описание биографии не менялось 10 лет? Где работает сейчас?
00:12:50 Кладбище за окном директора
00:14:27 Почему рассказывает про JavaEE израильтянам?
00:15:15 Как отличается аудитория в разных странах?
00:16:58 Как перешел на Спринг?
00:19:10 Когда первый раз написал на Спринге? Как рекламировать коллегам спринг с помощью пива
00:21:55 Почему Спринг остается популярным?
00:24:02 Знакомство с Juergen Hoeller
00:26:00 Железный купол написан на Java
00:27:25 Почему доклада Спринг-Потрошитель такой популярный? 150тысяч просмотров на youtube
00:28:20 Свой youtube-канал или конференция
00:31:07 Сколько времени занимает подготовка одного доклада?
00:33:14 Реквием программиста https://youtu.be/Qypw6ho5wGQ
00:34:32 Про работу в NAYA Technologies
00:42:00 IntelliJ IDEA vs Eclipse?
00:44:34 Как учить программированию своих детей?
00:46:40 Как все успевать?
00:46:58 История про хакатон с Барухом под JavaME и девочку в белом платьице
00:50:30 Стоит ли ходить на воркшоп?
- Show 5 more episodes