

- 11
- Episodes
- 1
- Ratings
- 2022
- First episode
About Немного IT
Подкаст о технологиях бекендов, фронтендов, архитектуры и администрирования.
- Publisher
- Иван Соловьёв и Михаил Непряхин
- Category
- technology
- Language
- ru
- Explicit
- No
- First episode
- 21 Jul 2022
- Latest episode
- 24 Apr 2023
Latest episodes
11 episodes in the feed.

24 Apr 2023
О тестировании кода в Go и не только. Моки, юнит и интеграционные тесты
Выпуск о тестировании: юнит, интеграционном и end-to-end тестах. Поговорим о плюсах, минусах и внешних инструментах. Расскажем про наш личный опыт на проектах и конечно же затронем тему чистой архитектуры. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:21 Наши истории о написании тестов – 00:00:51 Почему некоторые крупные компании не пишут тесты – 00:02:22 Когда и кому тесты не нужны – 00:04:30 Тесты на фронтенде – 00:07:29 Про Unit тесты – 00:09:28 Пирамида тестирования – 00:10:10 Типы тестов – 00:14:10 Тестирование Фронтенда – 00:15:36 Браузеры для тестирования фронтенда – 00:18:48 Немного о тестировании мобильных приложений – 00:20:21 Использование Mocks – 00:23:19 Unit тесты vs интеграционные тесты – 00:27:40 Когда от TDD есть профит – 00:31:18 Почему стоит уделять внимание интеграционным тестам – 00:42:14 Анатомия тестирования AAA: Arrange, Act, Assert – 00:48:30 Внешние инструменты для написания тестов – 00:49:25 О моках – 00:51:53 О важности Unit тесты – 00:53:11 Про покрытие тестами кода – 01:03:49 Что делают тестировщики? – 01:05:20 Внедрение зависимостей и чистая архитектура – 01:12:05 Зачем SonarQube – 01:15:55

20 Mar 2023
Kafka худший брокер? Чем обусловлена популярность этого куска продукта? Кафка и Go
Говорим об асинхронном взаимодействии между сервисами. Обсудим основные боли Kafka или почему разработчику нужно буквально «съесть собаку» и зачем изучать детали реализации. Во второй части подкаста приготовим «кролика» – какие подводные камни есть у RabbitMQ. Затронем Redis и Nats. А в заключении поделимся библиотеками для написания своих очередей. Nats.io (https://nats.io) – Лучший брокер сообщений по мнению ведущих. AsyncAPI.com (https://asyncapi.com) – Open Source инструмент, позволяет описывать асинхронное взаимодействие. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:01 Разносим Kafka – критика продукта – 00:00:49 Драйверы Go к Kafka: sarama, kafka-go, confluent-kafka-go – 00:01:45 Тестирование консьюмеров в Kubernetes – 00:04:30 Нерешаемые ошибки драйверов – 00:05:52 Главная боль Kafka: учи меня полностью – 00:07:15 Kafka partitions – 00:10:08 Гарантии доставки Kafka – 00:12:28 Слабая абстракция Kafka – 00:16:40 Протечка абстракции – почему это плохо – 00:19:00 Kafka – конструктор – 00:20:20 Конфигурация запуска Kafka – 00:22:03 Безопасность в Kafka: SASL mechanism Kafka – 00:24:42 Создаем топики в Kafka – 00:28:27 Минусы confluent-kafka-go – 00:29:59 Риски приложения с включенным CGO – биндинг с C – 00:31:31 Слабоконтролируемость приложений на CGO – 00:32:12 Проблемы Garbage collector в CGO – 00:34:30 Возвращаемся к Sarama – 00:35:48 Kafka Connect – 00:36:48 Неидиоматичный код Sarama – 00:39:33 Для чего не стоит использовать Kafka? – 00:40:49 Разбираем RabbitMQ и его плагины – 00:43:47 Реализация очереди в RabbitMQ – 00:48:01 Механизм оповещения и очереди в RabbitMQ – 00:51:57 Проблема погружения в детали реализации – мелочи, которые разработчику знать не нужно – 00:53:05 RabbitMQ Mnesia – спойлер! мы не рассказываем что это такое! – 00:54:36 RabbitMQ настройки префетчинга – 00:56:20 Проблемы универсальных решений – 00:57:50 Драйвер Go для RabbitMQ – 01:00:06 Аналог брокера сообщений Redis Pub/Sub и его проблемы – 01:01:20 Redis Streams – 01:02:35 Альтернатива Redis – KeyDB – 01:03:36 Драйверы Redis – 01:04:53 Серебряная пуля nats.io – 01:07:25 Nats Request-Reply – 01:09:37 Nats как замена RabbitMQ – 01:13:53 Библиотеки, с помощью которых можно построить свои очереди – 01:14:09 AsyncAPI – 01:16:48 Kafka Streams – 01:18:13 Подводим итоги своих впечатлений от Kafka – 01:19:47

28 Jan 2023
Elastic стек всё? Grafana для хранения логов, метрик и трейсов. APM и OpenTelemetry
В 9 выпуске подкаста говорим о наблюдаемости, о логах, трейсах, SRE-метриках, делимся кейсами из нашей практики, где использовали те или иные инструменты. Рассмотрим observability с точки зрения полезности: когда доступность сервисов привязываются к бизнес метрикам. Подробнее остановимся на Grafana, а в заключении по рассуждаем, что имеет смысл использовать на пэт проектах, а что оставить кровавому Энтерпрайзу. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:20 Рассказ про погружение в мир трейсов – 00:00:50 Полезность наблюдаемости в современной архитектуре – 00:01:45 Стандарт open telimetary – 00:03:07 Кейс по OpenTelemetry: Service Level Indicator (SLI) и Service-Level Objective (SLO) – 00:05:46 Как появился стандарт open telimetary – 00:07:42 Что такое логи, трейсы, метрики и спаны – 00:12:00 О трейсах и защите данных, Trace ID – 00:17:00 Что было до трейсов (текстовые логи) – 00:19:45 Подробнее о логах – 00:23:17 О метриках – 00:28:08 Grafana stack и бесплатные APM – 00:35:00 Кейс об использовании трейсов – 00:38:09 Трейсы и APM – 00:40:23 Opensource (бесплатные) APM – 00:48:07 В каких случаях лучше выбрать Grafana stack – 00:50:50 Время, уровень и сообщения в логе – 00:53:44 UI в Grafana – 00:55:06 Grafana Mimir OSS для метрик – 00:55:58 Grafana Tempo OSS для трейсов – 00:57:38 Continuous Profiling – 01:03:36 Инструменты для настройки нового проекта – 01:06:22 Нужны ли эти инструменты для pet проектов? – 01:08:26 Готовые решения – 01:10:50 Какие провайдеры облачных инфраструктур использовать для пет проектов – 01:12:52 Сбор исключений, инструменты: Sentry, Crashlytics – 01:19:02 Заключение – 01:20:50

24 Dec 2022
Python лучший язык для начинающих? Григорий Петров про Go, Rust и Python
Для записи 8-го выпуска мы пригласили нашего коллегу, DevRel Evrone, Григория Петрова. Мы расспросили Гришу об отношении к Go и Rust, и, конечно же обсудили его любимый Python. От разговоров про код мы плавно перешли к обсуждению принципов работы мозга, запоминанию и способам поддерживать свою личную базу знаний в актуальном состоянии. Доклад Григория про персональную Wiki https://youtu.be/q4Ftg63diDs (https://youtu.be/q4Ftg63diDs). Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:32 Почему Григорий Петров выбрал Python – 00:01:28 Go – как второе пришествие Java – 00:04:12 Go – только для простых проектов – 00:08:40 Сравнение производительности Go, Python и Ruby – 00:11:09 Где хорош Rust и в чём его подводные камни – 00:17:12 Надежность и стабильность работы Rust – 00:21:05 Контроль ошибок – 00:22:33 Почему Python – лучший язык для начинающих – 00:27:08 Не одним Django едины, фреймворки для Python – 00:31:47 В чём киллер фича FastAPI – 00:32:40 Ассинхронный Python (в один поток) – 00:34:25 Tornado и Flask умерли – 00:39:02 Интерпретаторы для Python – 00:40:19 Линтеры и форматеры в Python – 00:44:52 Использование OpenTelemetry в Python – 00:46:02 Примеры использования gradual typing в Python – 00:48:37 Написание кода с точки зрения нейрофизиологии – 00:52:25 Однозадачность мышления – 00:59:55 Немного про внимание – 01:05:32 Методология подготовки к выступлениям от Григория Петрова – 01:08:52 Personal knowledge management или «Второй мозг» – 01:14:14 Собственные методы написания заметок и необходимость в систематизации знаний – 01:19:23

9 Dec 2022
REST или RPC лучше? Service Mesh зачем нужен? Плюсы и минусы gRPC, и немного о Nats
Сегодняшний выпуск посвящен синхронному взаимодействию. Большую часть времени мы обсуждали REST и RPC подходы, сравнивали с gRPC и порассуждали о том, каким бы был Service Mesh для людей. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:24 Плюсы и минусы REST – 00:00:58 OpenAPI на практике – 00:08:29 API-First подход в межсервисном взаимодействии – 00:09:49 Уровни использования REST – 00:13:55 RPC подход и gRPC – 00:16:35 Разбор gRPC плюсы и минусы – 00:22:15 Про ProtoBuf – 00:23:43 Форматы сериализации – 00:28:35 Еще о минусах gRPC – 00:31:39 Несовместимость gRPC и Kubernetes по умолчанию – 00:39:07 Балансировка запросов с gRPC – 00:40:25 Service Mesh для людей – 00:45:16 Одиночные запросы и стриминг данных в gRPC – 00:54:22 RPC c Nats.io в качестве транспорта – 00:57:23 Ещё об RPC – 01:01:08

15 Nov 2022
Опять ругаем Go? Говорим о спорных моментах в языке Go (но мы его любим)
В 6-м выпуске обсудили спорные стороны Go – пакеты стандартной библиотеки, роутеры, работу с JSON и timezone. Разобрали по косточкам константы, garbage collector, структурные теги. Как всегда провели сравнение с Rust и рассуждали о том, что стоило бы сделать, чтобы разработчикам было проще жить. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:23 Минусы реализации http сервера в Go – 00:01:04 Работа с контекстом – 00:04:12 Роутеры в Golang, маршрутизация в Go – 00:05:15 Тесты для пакетов net/http – 00:07:55 Минусы http сервера в Go – 00:09:54 Маршрутизация с Chi in Go – 00:12:50 Плюсы и минусы fast http – 00:13:25 Советы новичкам по роутерам в Go – 00:15:44 Сериализация JSON с Golang – 00:16:40 Сокращаем время сериализации с easyjson – 00:18:55 Работа с JSON, костыли с zero value и другие минусы – 00:21:24 Криптография в Go (Golang Crypto Package) – 00:26:20 Еще пара [нелестных] слов про smtp сервер – 00:28:55 Пакет time или выстрел себе в ногу – 00:33:53 Узкое место методы After, Before у time – 00:39:20 Работа с query параметрами и url – 00:42:00 ООП в Go – 00:43:00 Константы в Go – 00:46:46 Сборщик мусора (GC) в Go – 00:49:10 Спорный момент в объявлении переменных – 00:55:08 Структурные теги в Go, дополнительное поведение структуры – 00:56:20 Контекст как альтернативный API в Go – 01:00:25 Спорные стороны и непредсказуемость SSA – 01:04:50 Итоги выпуска – 01:10:55

5 Oct 2022
Go – худший язык программирования? О минусах и недостатках Golang
Сегодня поговорим о минусах Go. О том, на какие грабли наступают разработчики, которые только начали писать на Go. Собственный компилятор, вместо LLVM. Скудная документация, работа со слайсами и мапами, и другие «подводные камни» «легкого» в освоении Go. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:28 Компилятор Go – 00:00:40 В чем минус того, что Go не на LLVM – 00:02:12 Проблемы со слайсами и мапами – 00:07:12 Как правильно работать со слайсами – 00:11:36 Место, в котором декларация явного дала сбой – 00:12:57 Проблемы при инициализации мапы – 00:16:20 Что делать разработчику, который только пришел в Go – 00:22:46 Дженерики в Go – 00:24:30 Концепция каналов в Go – 00:27:07 Неуместное использование горутин, каналов, селектов в Go – 00:30:00 Мьютексы в каналах – 00:32:50 Использование sync/atomic в golang – 00:34:18 Работа с WaitGroup – 00:37:15 Еще пара слов о Mutex – 00:39:11 Аллокация памяти – 00:45:33 Если бы Go был на LLVM – 00:50:50 Пустые интерфейсы – 00:52:07 Внутренние типы – 01:01:10 Сравниваем систему типов с Rust'ом – 01:03:24 Многословность Go – 01:05:50 Подводим итоги и не смотрим на минусы Go – 01:08:30

15 Sept 2022
Горутины – главная киллер фича Go? О вытесняющей и кооперативной многозадачности
В новом выпуске мы обсудили технологические плюсы Go: главную киллерфичу – многопоточность, конкурентное/ассинхронное выполнение, и вытесняющую многозадачность. Поговорили о Goroutine, каналах, о кодогенерации и использовании профилировщиков. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:24 Многопоточное программирование как киллер фича в Go – 00:00:40 Концепция GMP модели – 00:01:49 Сравнение с многопоточностью на C# – 00:04:00 Как вытесняющая многозадачность выполняется в Go – 00:04:40 Как это выглядит на Python и С# – 00:07:18 Быстродействие горутин – 00:09:22 Расшифровываем GMP – 00:11:57 Переход от одной горутины к другой – 00:14:16 Механизмы синхронизации между горутинами – 00:16:45 Самые частые вопросы на собеседовании по Go (про каналы) – 00:17:31 Про Nats – 00:20:09 Еще пара слов о каналах (как в Go работает select) – 00:20:36 Понимание defer в Go – 00:22:14 Кейсы использования кодогенерации в Go – 00:26:22 Go-swagger – 00:32:30 Когда First API подход не приживается – 00:33:53 Опыт использования pprof golang – 00:36:21 Когда нужен debugger – 00:39:27 Режимы профилировщика – 00:42:06 Сравнение работы со строками в Rust – 00:43:46 Механизм создания исключения и его отлова (panic и recover) и когда её стоит использовать – 00:44:40 Еще немного о горутинах – 00:48:40

19 Aug 2022
Go – лучший язык программирования? Действительно ли Go простой? Достоинства Golang
В третьем выпуске подкаста мы поговорили о том, насколько хорош язык Go и почему его считают легким для изучения (что ошибочно). Обсудим феномен длинного кода, механизм возврата ошибок (в сравнении с другими языками), отсутствие дженериков и вопросы безопасности. Проведем сравнение с Python и Rust, и другими технологиями-конкурентами. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:00 Действительно ли Go простой? – 00:01:45 Как упростить читабельность кода – 00:05:05 Философия возврата ошибок в Go (result option) – 00:08:03 Мнимые проблемы в Go (по мнению пользователей Хабра) – 00:11:43 Использование дженериков - когда они нужны? – 00:13:00 Производительность – 00:15:40 Go на продакшене – 00:19:34 Зависимости (go mod vendor) и безопасность – 00:25:00 Крупные проекты на Golang – 00:30:16 Что нужно, чтобы хорошо писать на Go – 00:31:45 Тестирование в Go – 00:33:19 Многословность – 00:36:00 Еще немного про философию Go и отсутствие «магии» – 00:39:50 Про стандартные библиотеки – 00:47:15 Антипаттерны или «выстрел в ногу» – 00:48:35 Про Enums – 00:52:04 Очевидность лучше простоты – 00:57:30 Code Style в Go – 00:59:15 Ошибки как инстанты – 01:01:25 Развитие Go – 01:05:45 Технологии-конкуренты – 01:10:35

3 Aug 2022
TypeScript решит все проблемы? Альтернатива JavaScript. Webpack и стрельба в ногу
В этом эпизоде мы говорим о JavaScript и TypeScript с его проблемами. На каких ещё языках, кроме JS, можно писать фронтенды. Про кроссбраузерность и кроссплатформенность. Про инструменты сборки и транспиляции. А так же про SEO, SSR и любовь к jQuery. Иван Соловьев – Про Snowpack https://youtu.be/McR7Tb2EJOo (https://youtu.be/McR7Tb2EJOo) Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:00 Есть ли альтернатива JavaScript – 00:00:23 Про ClojureScript – 00:01:17 Идеальный язык будущего – 00:04:52 SEO и SSR (Server Side Rendering) – 00:06:23 Зачем JS если можно рендерить на Go – 00:09:53 Bootstrap, готовые шаблоны и SPA (Single Page Application) – 00:11:32 В среднем у пользователей слабые устройства, SSR помогает – 00:14:44 jQuery люблю и ненавижу – 00:17:13 Браузерные движки – 00:19:07 Проблемы кроссбраузерности – 00:21:20 API браузеров – 00:27:56 Единый движок для отрисовки интерфейсов и Canvas – 00:28:44 Как поменялся JavaScript за последнее время – 00:30:57 Линтеры и стандартизация – 00:36:34 Snowpack и Webpack – 00:39:05 Webpack и стрельба в ногу – 00:40:40 Проблемы TypeScript – 00:44:12 Про типизацию в TypeScript – 00:51:08 TypeScript живёт и будет жить – 00:56:11

21 Jul 2022
Фронтенд для бекэндера
В этом эпизоде мы обсуждаем фронтенд. Иван, в прошлом фронтендер, рассказывает о текущей ситуации во фронтенде с позиции бекенд разработчика. Зачем бекендеру знать фронтенд, зачем фронтендеру знать Чистую архитектуру. Много слов про Angular, React, Vue и немного про Svelte, Ember, Riot, Elm. Ведущие Иван Соловьёв (https://solovev.one) Михаил Непряхин (https://t.me/neprja) Темы Приветствие – 00:00:00 Как возникла идея этого подкаста – 00:01:09 Про зоопарк технологий фронтенда – 00:03:37 Почему Иван ушел из фронта в бекенд – 00:04:53 Фронтенд разочаровал? – 00:06:27 Снова про зоопарк – 00:07:47 Сравнение фронтенда с бекэндом – 00:09:36 Внезапно про NodeJS и зависимости – 00:13:43 Какие есть проблемы во фронтенде – 00:18:25 Про стандартизацию подходов к организации кода – 00:21:56 Зрелость бекэнда и отставание фронтенда – 00:26:41 Про архитектуру – 00:29:06 Про Angular, React, Vue – 00:31:59 Можно ли использовать архитектурные подходы не зная бекенд – 00:35:05 Изменения после знакомства с Чистой архитектурой – 00:36:22 Все пишут в разных стилях и нет стандартов – 00:37:50 Про JavaScript и TypeScript – 00:39:17 Снова про зоопарк – 00:40:07 Про Ember – 00:41:42 Мертв ли Ember – 00:42:47 Не парься, учи React! – 00:43:54 Про Svelte – 00:46:30 С чего начать учить фронтенд – 00:47:19 Прощание, выводы – 00:48:18
Reach and audience
Public platform figures. Ratings count people who left a rating, not total listeners.
- Spotify
- 5.0 / 5
- 1 ratings
Contact Немного IT
- Guest appearances
- Does not typically book guests
Based on episode analysis; this does not confirm that the show is currently accepting guests.
Host of Немного IT?
Claim your podcast to manage its listing and keep your show details accurate.
Pod Engine is an independent podcast discovery and analytics service and is not affiliated with or endorsed by this podcast. Artwork and show content belong to their owners. Full legal notice.
Explore this show
Podcast research with Pod Engine