56. Apache Cassandra, часть 1: клиент, сервер.
После этого выпуска вы сможете написать свой драйвер для Cassandra. В гостях Дима Константинов.
--
Доки по драйверу: https://docs.datastax.com/en/developer/java-driver/4.17/index.html
В частности,
- раздел про производительность: https://docs.datastax.com/en/developer/java-driver/4.17/manual/core/performance/index.html
- балансировка на клиенте: https://docs.datastax.com/en/developer/java-driver/4.17/manual/core/load_balancing/index.html
Описание CQL протокола: https://cassandra.apache.org/doc/latest/cassandra/reference/native-protocol.html
Timing wheels:
- оригинальная статья: https://www.cs.columbia.edu/~nahum/w6998/papers/sosp87-timing-wheels.pdf
- использование в Linux: https://lwn.net/Articles/646950/
- использование в Kafka: https://www.confluent.io/blog/apache-kafka-purgatory-hierarchical-timing-wheels/
Реализация от Netty: https://netty.io/4.2/api/io/netty/util/HashedWheelTimer.html
Управление перегрузкой TCP: https://en.wikipedia.org/wiki/TCP_congestion_control
--
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Яндекс | YouTube | браузер
После этого выпуска вы сможете написать свой драйвер для Cassandra. В гостях Дима Константинов.
--
Доки по драйверу: https://docs.datastax.com/en/developer/java-driver/4.17/index.html
В частности,
- раздел про производительность: https://docs.datastax.com/en/developer/java-driver/4.17/manual/core/performance/index.html
- балансировка на клиенте: https://docs.datastax.com/en/developer/java-driver/4.17/manual/core/load_balancing/index.html
Описание CQL протокола: https://cassandra.apache.org/doc/latest/cassandra/reference/native-protocol.html
Timing wheels:
- оригинальная статья: https://www.cs.columbia.edu/~nahum/w6998/papers/sosp87-timing-wheels.pdf
- использование в Linux: https://lwn.net/Articles/646950/
- использование в Kafka: https://www.confluent.io/blog/apache-kafka-purgatory-hierarchical-timing-wheels/
Реализация от Netty: https://netty.io/4.2/api/io/netty/util/HashedWheelTimer.html
Управление перегрузкой TCP: https://en.wikipedia.org/wiki/TCP_congestion_control
--
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Яндекс | YouTube | браузер
🔥15❤6
Вы знаете, я люблю Vim и командную строку. Недавно рассказывал базу + продвинутые техники, которыми сам пользуюсь в NeoVim.
Одно видео -- и вы уверенный пользователь Vim.
https://youtu.be/6KiSiFHiAYg?si=WAA04KEy6xbv17le
Одно видео -- и вы уверенный пользователь Vim.
https://youtu.be/6KiSiFHiAYg?si=WAA04KEy6xbv17le
YouTube
СТАФФ 067 [HD]. Vim в 2025.
Почему тебе нужен Vim в 2025 году. Саша расскажет и покажет.
Telegram: https://t.iss.one/staff_engineers
Подкаст Димы: https://t.iss.one/javaswag
Подкаст Саши: https://t.iss.one/tfeat
#vim #editor #coding
Telegram: https://t.iss.one/staff_engineers
Подкаст Димы: https://t.iss.one/javaswag
Подкаст Саши: https://t.iss.one/tfeat
#vim #editor #coding
🔥13
Иногда я все еще пишу код на Java в IntelliJ IDEA. Как совместить любовь к Vim, терминалу и IDEA -- рассказал в следующем видео на канале СТАФФ.
https://youtu.be/XjfQhKKa-PU?si=qM0K5NO8wKa8tW_l
https://youtu.be/XjfQhKKa-PU?si=qM0K5NO8wKa8tW_l
YouTube
СТАФФ 069 [HD]. IntelliJ IDEA + VIM.
Как эффективно программировать в IntelliJ IDEA с VIM?
Telegram: https://t.iss.one/staff_engineers
Подкаст Димы: https://t.iss.one/javaswag
Подкаст Саши: https://t.iss.one/tfeat
#code #idea #vim
Telegram: https://t.iss.one/staff_engineers
Подкаст Димы: https://t.iss.one/javaswag
Подкаст Саши: https://t.iss.one/tfeat
#code #idea #vim
🔥9
Все, что нужно знать о компиляции и сборке современных проектов на C++ и родственных языках. Погружаемся в кишочки LLVM, компиляторов, оптимизации и ассемблер.
https://youtu.be/qWuJL2feHKw?si=lCbXG0PnpbC-OkIJ
https://youtu.be/qWuJL2feHKw?si=lCbXG0PnpbC-OkIJ
5❤11🔥8👍4
57. Apache Cassandra, часть 2: как работает запись.
Вторая часть про Кассандру. Разбираемся в том, как работает запись данных. В гостях Дима Константинов.
Первая часть: https://t.iss.one/tfeat/145
--
Доклад про процесс записи в Cassandra: https://www.youtube.com/watch?v=-bKciMy6mOU&list=PLK4DgKoWPVSLEwmNu0oQt4SsnYgrs2Qey&index=2
Доклад про устройство Netty: https://www.youtube.com/watch?v=NvnOg6g4114
Netty нативная реализация TCP epoll: https://netty.io/wiki/native-transports.html
Управление перегрузкой TCP:
https://en.wikipedia.org/wiki/TCP_congestion_control
Те же идеи на уровне приложения: https://netflixtechblog.medium.com/performance-under-load-3e6fa9a60581
Обзор алгоритмов consistent/stable hashing: https://dgryski.medium.com/consistent-hashing-algorithmic-tradeoffs-ef6b8e2fcae8
Trie memtable
https://www.vldb.org/pvldb/vol15/p3359-lambov.pdf
https://www.youtube.com/watch?v=eKxj6s4vzmI
B-trees в памяти, заметки от ScyllaDB разработчиков: https://www.scylladb.com/2021/11/23/the-taming-of-the-b-trees/
Unified compaction strategy:
https://www.youtube.com/watch?v=dWvJg1XGf-o
Аналог CAP теоремы для логики хранения данных - RUM: https://daslab.seas.harvard.edu/rum-conjecture/
--
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Яндекс | YouTube | браузер
Вторая часть про Кассандру. Разбираемся в том, как работает запись данных. В гостях Дима Константинов.
Первая часть: https://t.iss.one/tfeat/145
--
Доклад про процесс записи в Cassandra: https://www.youtube.com/watch?v=-bKciMy6mOU&list=PLK4DgKoWPVSLEwmNu0oQt4SsnYgrs2Qey&index=2
Доклад про устройство Netty: https://www.youtube.com/watch?v=NvnOg6g4114
Netty нативная реализация TCP epoll: https://netty.io/wiki/native-transports.html
Управление перегрузкой TCP:
https://en.wikipedia.org/wiki/TCP_congestion_control
Те же идеи на уровне приложения: https://netflixtechblog.medium.com/performance-under-load-3e6fa9a60581
Обзор алгоритмов consistent/stable hashing: https://dgryski.medium.com/consistent-hashing-algorithmic-tradeoffs-ef6b8e2fcae8
Trie memtable
https://www.vldb.org/pvldb/vol15/p3359-lambov.pdf
https://www.youtube.com/watch?v=eKxj6s4vzmI
B-trees в памяти, заметки от ScyllaDB разработчиков: https://www.scylladb.com/2021/11/23/the-taming-of-the-b-trees/
Unified compaction strategy:
https://www.youtube.com/watch?v=dWvJg1XGf-o
Аналог CAP теоремы для логики хранения данных - RUM: https://daslab.seas.harvard.edu/rum-conjecture/
--
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Яндекс | YouTube | браузер
🔥7❤5👍2
58. Apache Cassandra, часть 3: читаем данные.
Как работает чтение из Кассандры? В гостях Дима Константинов.
Первая часть: https://t.iss.one/tfeat/145
Вторая часть: https://t.iss.one/tfeat/151
--
Доклад про процесс чтения из Cassandra:
https://www.youtube.com/watch?v=zYF0wXpOybQ&list=PLK4DgKoWPVSLEwmNu0oQt4SsnYgrs2Qey&index=3
https://sre.google/sre-book/addressing-cascading-failures/
Про выбор реплики:
https://cassandra.apache.org/doc/latest/cassandra/managing/operating/snitch.html#dynamic-snitching
https://www.elastic.co/blog/improving-response-latency-in-elasticsearch-with-adaptive-replica-selection
Пагинация: https://docs.datastax.com/en/developer/java-driver/4.17/manual/core/paging/index.html
Фильтры Блума:
https://cassandra.apache.org/doc/5.0/cassandra/managing/operating/bloom_filters.html
Сжатие:
https://cassandra.apache.org/doc/5.0/cassandra/managing/operating/compression.html
https://issues.apache.org/jira/browse/CASSANDRA-20902
--
Для тех, кто думает о смене работы: рекомендую канал Peers Job Board . Ребята вручную отбирают IT-вакансии от стартапов и корпораций, в проверенных компаниях.
@peersjobboard
--
🎧 Слушать в Apple Podcasts | Spotify | Яндекс | Youtube | браузер
Как работает чтение из Кассандры? В гостях Дима Константинов.
Первая часть: https://t.iss.one/tfeat/145
Вторая часть: https://t.iss.one/tfeat/151
--
Доклад про процесс чтения из Cassandra:
https://www.youtube.com/watch?v=zYF0wXpOybQ&list=PLK4DgKoWPVSLEwmNu0oQt4SsnYgrs2Qey&index=3
https://sre.google/sre-book/addressing-cascading-failures/
Про выбор реплики:
https://cassandra.apache.org/doc/latest/cassandra/managing/operating/snitch.html#dynamic-snitching
https://www.elastic.co/blog/improving-response-latency-in-elasticsearch-with-adaptive-replica-selection
Пагинация: https://docs.datastax.com/en/developer/java-driver/4.17/manual/core/paging/index.html
Фильтры Блума:
https://cassandra.apache.org/doc/5.0/cassandra/managing/operating/bloom_filters.html
Сжатие:
https://cassandra.apache.org/doc/5.0/cassandra/managing/operating/compression.html
https://issues.apache.org/jira/browse/CASSANDRA-20902
--
Для тех, кто думает о смене работы: рекомендую канал Peers Job Board . Ребята вручную отбирают IT-вакансии от стартапов и корпораций, в проверенных компаниях.
@peersjobboard
--
🎧 Слушать в Apple Podcasts | Spotify | Яндекс | Youtube | браузер
🔥11❤3
Forwarded from Душный интерпрайз
Удивительный 2025. Подкаст.
В этом году я наконец-то нашел свой звук, формат и вайб. Это именно тот подкаст,
который я "визуализировал", когда мечтал о нем три года назад. В этом году я нашел свой стиль: мне нравится лого, цвет и оформление обложек.
Тысяча фичей -- это путь к мечте. Как и любой путь, он требует преодоления трудностей. Кстати, о трудностях, вот одни из них:
- отказ гостя придти из-за маленькой аудитории
- токс критика меня
- внутренние сомнения: оно мне надо? кому это интересно? зачем я трачу столько сил на это?
Вот мой топ выпусков в 2025:
- 50. Как я повысил свою продуктивность за этот год -- Интро и аутро с Жириновским не перебить.
- 53. Datomic: самая рок-н-рольная БД. В гостях Nikitonsky -- Отличный выпуск с Никитой Прокоповым.
- 54. Вайбим с Иваном Ямщиковым -- Тут Ваня все по полочкам про ИИ разложил еще тогда.
- Apache Cassandra с Димой Константиновым -- все три части это пушка (раз, два, три).
В новом году будет рекордное количество качественных выпусков, стэй тюнед!
В первом сезоне подкаста я заканчивал так: Прокачивайте себя и людей вокруг!
В этом году я наконец-то нашел свой звук, формат и вайб. Это именно тот подкаст,
который я "визуализировал", когда мечтал о нем три года назад. В этом году я нашел свой стиль: мне нравится лого, цвет и оформление обложек.
Тысяча фичей -- это путь к мечте. Как и любой путь, он требует преодоления трудностей. Кстати, о трудностях, вот одни из них:
- отказ гостя придти из-за маленькой аудитории
- токс критика меня
- внутренние сомнения: оно мне надо? кому это интересно? зачем я трачу столько сил на это?
Вот мой топ выпусков в 2025:
- 50. Как я повысил свою продуктивность за этот год -- Интро и аутро с Жириновским не перебить.
- 53. Datomic: самая рок-н-рольная БД. В гостях Nikitonsky -- Отличный выпуск с Никитой Прокоповым.
- 54. Вайбим с Иваном Ямщиковым -- Тут Ваня все по полочкам про ИИ разложил еще тогда.
- Apache Cassandra с Димой Константиновым -- все три части это пушка (раз, два, три).
В новом году будет рекордное количество качественных выпусков, стэй тюнед!
В первом сезоне подкаста я заканчивал так: Прокачивайте себя и людей вокруг!
59. Основы Web3: Blockchain и Ether.
Глубокое техническое обсуждение технологии блокчейн, эфириума и Web3 с инженерной точки зрения. Дмитрий Королев объясняет принципы работы распределенных сетей, смарт-контрактов, консенсус-алгоритмов Proof of Work и Proof of Stake, а также их применение в децентрализованных финансах и современных системах.
Stateful compute:
https://dimakorolev.substack.com/p/stateful-compute
--
Авторский тгк Саши @toxic_enterprise
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Яндекс | YouTube | браузер
Глубокое техническое обсуждение технологии блокчейн, эфириума и Web3 с инженерной точки зрения. Дмитрий Королев объясняет принципы работы распределенных сетей, смарт-контрактов, консенсус-алгоритмов Proof of Work и Proof of Stake, а также их применение в децентрализованных финансах и современных системах.
Stateful compute:
https://dimakorolev.substack.com/p/stateful-compute
--
Авторский тгк Саши @toxic_enterprise
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Яндекс | YouTube | браузер
🔥11👍7 5👎1
Audio
0:00 - Введение: Web3 без маркетингового буллшита
3:08 - Как организуются распределенные сети
5:23 - Программное обеспечение биткоина и майнинг
8:56 - Эфир и виртуальная машина EVM
15:00 - Транзакции и финальность блоков
21:49 - Proof of Stake вместо Proof of Work
30:00 - Сеть эфира: валидаторы и консенсус
40:00 - DeFi и обмен токенами
50:00 - Смарт-контракты и их выполнение
1:00:00 - Централизованные и децентрализованные биржи
1:10:00 - Обновление протоколов и управление сетью
1:20:00 - Будущее Web3 и влияние на Web2
1:29:16 - Заключение: фундаментальные знания для инженеров
3:08 - Как организуются распределенные сети
5:23 - Программное обеспечение биткоина и майнинг
8:56 - Эфир и виртуальная машина EVM
15:00 - Транзакции и финальность блоков
21:49 - Proof of Stake вместо Proof of Work
30:00 - Сеть эфира: валидаторы и консенсус
40:00 - DeFi и обмен токенами
50:00 - Смарт-контракты и их выполнение
1:00:00 - Централизованные и децентрализованные биржи
1:10:00 - Обновление протоколов и управление сетью
1:20:00 - Будущее Web3 и влияние на Web2
1:29:16 - Заключение: фундаментальные знания для инженеров
1👍15 4
60. Claude Code и инженерная ответственность с Senior Software Vlogger.
Дмитрий Рожков (https://t.iss.one/seniorsoftwarevlogger) — создатель приложения Summit AI Notes, делится опытом разработки коммерческого macOS приложения с использованием Claude и других LLM, не будучи Swift-разработчиком. Обсуждаем практические аспекты AI-assisted программирования, трансформацию code review, инженерную ответственность при работе с моделями, и будущее разработки с искусственным интеллектом.
--
Авторский тгк Саши @toxic_enterprise
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Yutube | Яндекс | браузер
Дмитрий Рожков (https://t.iss.one/seniorsoftwarevlogger) — создатель приложения Summit AI Notes, делится опытом разработки коммерческого macOS приложения с использованием Claude и других LLM, не будучи Swift-разработчиком. Обсуждаем практические аспекты AI-assisted программирования, трансформацию code review, инженерную ответственность при работе с моделями, и будущее разработки с искусственным интеллектом.
--
Авторский тгк Саши @toxic_enterprise
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Yutube | Яндекс | браузер
🔥9❤3 2
Audio
0:00 - Введение: Ответственность за AI-генерированный код
2:24 - История создания Summit AI Notes
6:35 - Экосистема Apple для инди-разработки
10:17 - Почему Swift и качество LLM кода
16:02 - Модели: от Sonnet 4 к Opus 4.5
21:39 - Контекст и окружение для эффективной работы
26:40 - Психология сопротивления AI-инструментам
34:44 - Кризис code review и его трансформация
42:04 - Изменения в работе менеджеров и команд
49:24 - Программист как погонщик LLM-агентов
54:51 - Инструменты: Cloud Code vs Cursor
1:01:30 - Инженерная ответственность в эпоху AI
1:11:51 - Голосовой ввод и будущее разработки
1:13:42 - Заключение и советы разработчикам
2:24 - История создания Summit AI Notes
6:35 - Экосистема Apple для инди-разработки
10:17 - Почему Swift и качество LLM кода
16:02 - Модели: от Sonnet 4 к Opus 4.5
21:39 - Контекст и окружение для эффективной работы
26:40 - Психология сопротивления AI-инструментам
34:44 - Кризис code review и его трансформация
42:04 - Изменения в работе менеджеров и команд
49:24 - Программист как погонщик LLM-агентов
54:51 - Инструменты: Cloud Code vs Cursor
1:01:30 - Инженерная ответственность в эпоху AI
1:11:51 - Голосовой ввод и будущее разработки
1:13:42 - Заключение и советы разработчикам
❤9 4
61. Лучший GC: Java и Go.
Погружение в механизмы сборки мусора в Java и Go: исследование фундаментальных алгоритмов, эволюция от сборщиков с остановкой мира до конкурентных сборщиков, а также практические последствия для разработчиков. Mark-and-sweep, уплотнение памяти, гипотеза поколений и современные сборщики: G1, ZGC, Shenandoah и Green Tea GC в Go.
В гостях Саша Ланцов https://t.iss.one/pro_grevy
--
Авторский тгк Саши @toxic_enterprise
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Yutube | Яндекс | браузер
Погружение в механизмы сборки мусора в Java и Go: исследование фундаментальных алгоритмов, эволюция от сборщиков с остановкой мира до конкурентных сборщиков, а также практические последствия для разработчиков. Mark-and-sweep, уплотнение памяти, гипотеза поколений и современные сборщики: G1, ZGC, Shenandoah и Green Tea GC в Go.
В гостях Саша Ланцов https://t.iss.one/pro_grevy
--
Авторский тгк Саши @toxic_enterprise
Альтер эго Саши @sashimi_pub
--
🎧 Слушать в Apple Podcasts | Spotify | Yutube | Яндекс | браузер
🔥24 4❤1
Audio
0:00 - Введение в сборку мусора в Java и Go
8:57 - Фундаментальные алгоритмы сборки мусора: Mark and Sweep
22:48 - Копирующие сборщики и методы уплотнения памяти
37:13 - Гипотеза поколений и карточные таблицы
52:13 - Сборщики с остановкой мира: Serial и Parallel GC
1:06:42 - Конкурентная маркировка и очистка в CMS
1:22:23 - Сборщик G1: регионы и запоминающие множества
1:43:28 - Shenandoah и указатели Брукса
1:56:01 - ZGC: цветные указатели и виртуальная память
2:10:01 - Green Tea GC в Go: маркировка на основе спанов
2:27:20 - Выбор подходящего сборщика мусора для вашего приложения
2:40:59 - Практические рекомендации и опыт из реальных проектов
8:57 - Фундаментальные алгоритмы сборки мусора: Mark and Sweep
22:48 - Копирующие сборщики и методы уплотнения памяти
37:13 - Гипотеза поколений и карточные таблицы
52:13 - Сборщики с остановкой мира: Serial и Parallel GC
1:06:42 - Конкурентная маркировка и очистка в CMS
1:22:23 - Сборщик G1: регионы и запоминающие множества
1:43:28 - Shenandoah и указатели Брукса
1:56:01 - ZGC: цветные указатели и виртуальная память
2:10:01 - Green Tea GC в Go: маркировка на основе спанов
2:27:20 - Выбор подходящего сборщика мусора для вашего приложения
2:40:59 - Практические рекомендации и опыт из реальных проектов
3👍13❤9 4
Видео из прошлой эпохи, но много важного сказано там.
https://youtu.be/yrlDqjMzcuk?si=DOVn-ahjycaSnwTL
https://youtu.be/yrlDqjMzcuk?si=DOVn-ahjycaSnwTL
YouTube
Александр Пахомов — Как выйти из Vim и приручить IDEA
Подробнее о Java-конференциях:
— весной — JPoint: https://jrg.su/gTrwHx
— осенью — Joker: https://jrg.su/h7yvG4
— —
Скачать презентацию с сайта — https://jrg.su/pUanW5
Разработчик сталкивается с болью в спине и шее. Вскоре он понимает, что дело в неправильной…
— весной — JPoint: https://jrg.su/gTrwHx
— осенью — Joker: https://jrg.su/h7yvG4
— —
Скачать презентацию с сайта — https://jrg.su/pUanW5
Разработчик сталкивается с болью в спине и шее. Вскоре он понимает, что дело в неправильной…