Микросервисы, контейнеры, SAAS-ы.... вот деды кидали exe файлик по FTP и норм все было... ведь было же? Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:06:00 Зачем оно надо? 00:07:30 CV driven development 00:10:00 Преждевременная оптимизация 00:15:40 А как же IIS? 00:18:00 Что делать если урвал сервак? 00:22:00 Кубер это дорого...
Mar 07, 2025•3 hr 33 min•Ep 143•Transcript available on Metacast Астрологи объявили месяц новогодних выпусков. Посмотрим что было с нашими любимыми технологиями в уходящем году, куда это все ведет в будущем и просто повангуем. Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:10:50 Загнулся ли C#? 00:51:15 .Net в 2025 00:59:15 Unity в 2025 Ссылки: - https://www.tiobe.com/tiobe-index/ : Рейтинг...
Dec 21, 2024•1 hr 17 min•Ep 142•Transcript available on Metacast Анемичная или богатая модель? Время холиварить... Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:02:05 Чем отличается анемичная модель от богатой? 00:05:00 Плюсы анемичной модели 00:09:15 Минусы анемичной модели 00:13:00 Плюсы богатой модели 00:26:40 Минусы богатой модели 00:28:00 При чем тут GRASP 00:42:00 Как принимать решен...
Dec 13, 2024•1 hr 4 min•Ep 141•Transcript available on Metacast Этот выпуск должен быть самым полезным ... ведь в нем мы расскажем, что нужно сказать тому, кто привнесет реактивщину в Ваш код Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:03:20 Что такое реактивщина 00:08:00 event vs reactive 00:14:40 RX провоцирует говнокод 00:29:50 RX и многопоточность 00:36:35 RX и дебаг 00:43:00 Как НЕ...
Dec 04, 2024•1 hr 8 min•Ep 140•Transcript available on Metacast Новый C# вышел, и в нем таааааак много нового .... стоит обсудить ;) Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:14:30 Самое крутое - ref struct interfaces 00:30:40 Нужно ли ref and unsafe in iterators and async methods? 00:43:35 Хана всем - verload resolution priority 00:46:45 System.Threading.Lock 00:52:20 Урааа - params ...
Nov 22, 2024•2 hr 1 min•Ep 139•Transcript available on Metacast Мы обсуждали смысл метрик качества кода, но как они работают изнутри? Для этого у нас будет специальный гость .... ;) Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:04:10 Code Coverage - лучшая метрика? 00:16:00 Изнутри Code Coverage 00:29:20 Бесполезные метрики 00:36:00 Метрика - количество коммитов 00:39:20 Cyclomatic comple...
Nov 15, 2024•2 hr 50 min•Ep 138•Transcript available on Metacast ООП против ФП ... ну что тут еще говорить? Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:08:40 ООП 00:34:00 ФП Ссылки: - https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/object-oriented/ : ООП в C# - https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/functional/pattern-matching : ФП в C# Видео: https://y...
Nov 08, 2024•1 hr 1 min•Ep 137•Transcript available on Metacast В прошлый раз мы разобрали единую метрику от Microsoft, сегодня же пройдемся по другим популярным способам запихнуть качество кода в одно число. Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:09:00 Зачем Cyclomatic complexity? 00:27:00 Метод, который вызывается один раз, code smell? 00:31:55 Code Smells метрика 00:43:00 Securi...
Nov 01, 2024•1 hr 2 min•Ep 136•Transcript available on Metacast Мы часто называем что-то "говнокодом", но можно ли быть объективным и просто выделить ключевые метрики "говнистости"? Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:08:50 Что такое Code Quality метрики? 00:13:20 Maintainability Index это то что нужно? 00:30:20 Что говорят наши зратели? 00:33:00 Код - как литература 00:47:00 Cy...
Oct 25, 2024•1 hr 3 min•Ep 135•Transcript available on Metacast Все любят чистую архитектуру, но не будет ли больше грязи от нее в нашем коде? P.S.: в процессе записи мы случайно остановили стрим ... и не смогли перезапустить. Так что выпуск может показаться "неоконченным". Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:05:00 Зачем нужна Чистая Архитектура? 00:11:00 Unit тесты не нужны? 00...
Sep 27, 2024•2 hr 31 min•Ep 134•Transcript available on Metacast На AutoMapper многие накидываются, но проблема не в самой библиотеке, а в подходе, недостатки которого забивают автомаппером. Об этом и поговорим. Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:07:10 Копирование Dto в модель 00:24:50 AutoMapper для версионирования 00:32:10 AutoMapper и условия 00:36:45 Сущность per layer Ссылк...
Sep 22, 2024•58 min•Ep 133•Transcript available on Metacast Когда говорят о качестве кода, часто упоминают DDD. Но реально ли так сильны эти три буквы? Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:04:20 Что такое DDD? 00:13:20 На сколько сильно программист должен знать предметную область? 00:36:20 Стратегические паттерны DDD 00:41:00 Самое главное - единый язык 00:44:00 Инфраструктур...
Sep 07, 2024•2 hr 25 min•Ep 132•Transcript available on Metacast MediatR они б.. ставят, MediatR! Он нам и на..й не нужон MediatR ваш. Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:04:30 MediatR нужон? 00:07:15 Шо такое этот ваш MediatR? 00:25:10 Накуа мне MediatR этот ваш? 00:30:25 MediatR в деталях 00:42:50 Защищаем MediatR Ссылки: - https://github.com/jbogard/MediatR : Предмет обсуждени...
Aug 30, 2024•1 hr 10 min•Ep 131•Transcript available on Metacast Разбираем говнокод, защищаем говнокод, обмаз... проникаемся говнокодом и не только. Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:05:00 Код на русском 00:07:00 Неправильное использование API 00:14:35 Generics Madness 00:20:40 Layout кода 00:28:40 Pattern Matching сложно читать? 00:39:00 История Code Behind 00:43:55 Однострочн...
Aug 23, 2024•1 hr•Ep 130•Transcript available on Metacast Было время, когда паттерны спрашивали на все собеседованиях, но ... прошло. Попробуем "откопать стюардессу" ... Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:14:40 Зачем нужны паттерны 00:16:50 Паттерн = шаблон? 00:23:00 Нужны ли паттерны GoF в 2024 году? 00:40:45 Виды паттернов 00:53:30 Протекающие паттерны 00:55:00 Так заче...
Aug 16, 2024•2 hr 17 min•Ep 129•Transcript available on Metacast Есть 2 стула: на одном бесконечный рефакторинг, на втором говнокод. Оба варианта приводят к архивации репозитория. А как писать код "для души", чтобы и результат был, и душа не страдала? Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:06:30 Как рефакторить пет проекты 00:19:10 Как сделать расширяемое и простое решение 00:33:40 ...
Aug 09, 2024•2 hr 1 min•Ep 128•Transcript available on Metacast Есть два стула: на одном программист пишет пет проект и никогда не заканчивает, на другом менеджер орет под ухом "говнокодь и в прод". А есть ли золотая середина? Спасибо всем, кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:12:00 Манагеры - мудаки 00:16:00 Как объяснить что такое легаси тупому манагеру 00:26:40 "А почему вы пишете легаси ко...
Aug 02, 2024•2 hr 56 min•Ep 127•Transcript available on Metacast C# развивается с немыслимыми темпами, но не вызывает ли подобная скорость рост говнокода? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:05:50 Generics 00:11:30 Префиксы ref, readonly, scoped 00:13:30 Primary Constructors 00:18:10 Tuples 00:24:20 Pattern Matching 00:34:30 Что такое говнокод? 00:39:50 Ranges 00:43:50 Asyn/Await ...
Jul 26, 2024•1 hr•Ep 126•Transcript available on Metacast Выбор имени не просто сложно, а ... очень сложно. И сегодня мы поделимся супер-пупер принципом выбора имен: NURGLESS. Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:03:00 Почему нейминг - самое главное? 00:10:00 NURGLESS Принцип 00:12:25 Ubiquitous Language 00:34:50 Referenced names 00:39:40 Google it 00:45:00 Local terminology...
Jul 19, 2024•1 hr 23 min•Ep 125•Transcript available on Metacast Код это не только бизнес логика, но и 3-4 килограма логгов, трейсов, проверок, ассертов, которые не прибавляют в читабельности. Что же делать? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:03:40 Что такое замусоривание кода? 00:32:00 Что делать: хулиганство 00:37:30 #region 00:42:30 Выделение логики в отдельный класс 00:51:00 ...
Jul 12, 2024•1 hr 6 min•Ep 124•Transcript available on Metacast Люди убеждены, что следование правилам SOLID сделает их код действительно хорошим... но так ли это? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:03:30 Что такое CUPID? 00:13:00 SOLID как философия 00:20:00 Single-responsibility principle 00:27:00 В чем вред философии SOLID? 00:32:15 Open–closed principle 00:37:50 Liskov subst...
Jul 07, 2024•1 hr 28 min•Ep 123•Transcript available on Metacast Новый формат: Адвокат Нургла! Разбираем примеры говнокода, пытаемся оправдать автора, думаем как превратить говно в конфетку. Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:07:00 Разбираем говнокод Ссылки: - https://govnokod.xyz/language/cs/ : Источник вдохновения Видео: https://youtube.com/live/4igB2SOk30Y Слушайте все выпуски...
Jun 28, 2024•1 hr 8 min•Ep 122•Transcript available on Metacast "Вы написал говнокод, сэр" - многие из нас боятся это услышать. Но что такое говнокод? Можно ли "дружить с говнокодом"? Что делать, если Вы поняли, что пишете говнокод? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:03:00 Легаси = Говнокод? 00:08:10 Что такое "Читаемость кода"? 00:16:00 Говнокод - код, сложный в поддержке 00:22...
Jun 14, 2024•1 hr 14 min•Ep 121•Transcript available on Metacast Что такое интеграционные тесты? Как их писать? Можно ли перевернуть тестовую пирамиду? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:05:10 Что такое интеграционный тест? 00:15:40 А что если только интеграционные тесты? 00:20:30 Как работают интеграционные тесты в Rider/Resharper? 00:33:40 Интеграционные тесты для бекенда 00:52...
Jun 07, 2024•1 hr 4 min•Ep 120•Transcript available on Metacast TDD - это не про тесты! TDD - это не "правильно и обязательно"! TDD - это ... узнаете в новом выпуске :) Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:07:00 Что такое TDD? 00:15:40 Test Frist или TDD 00:34:00 TDD на легаси 00:45:55 Чем TDD плох? 00:49:00 TDD и состояние потока Ссылки: - https://youtu.be/TmY3AuoW_PU : Test Last...
May 31, 2024•1 hr 1 min•Ep 119•Transcript available on Metacast Писать тесты "за деньги" мы привыкли, но пет проекты же для души! Так есть ли смысл? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:05:40 Зачем писать тесты на пет проекты? 00:13:00 Тесты для gamedev 00:18:00 Чем отличаются pet-project тесты от production тестов? 00:21:30 Бюджет пет проекта 00:29:20 Мотивация писать тесты 00:39...
May 24, 2024•1 hr 6 min•Ep 118•Transcript available on Metacast В C# принято создавать отдельный интерфейс для каждой сущности ради обеспечения тестируемости. Но так ли это нужно? Можно ли обойтись без создания дублирующего кода? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:02:50 В чем проблема интерфейсов для тестов? 00:18:45 protected virtual метод вместо выноса интерфейса 00:34:40 Мока...
May 10, 2024•1 hr 1 min•Ep 117•Transcript available on Metacast Вы решились отрефакторить тесты, но как? - Следовать принципу "Сложные тесты результат сложного кода" и переделать код? - Неинвазивно поменять только тесты? Что же выбрать? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:11:55 Сколько тестов надо писать? 00:21:00 Меняем и тесты, и тестируемый код 00:46:45 Рефакторим только тесты...
Apr 27, 2024•1 hr 4 min•Ep 116•Transcript available on Metacast Присоединяйтесь к брейншторму "как улучшить тесты", добавляйте свой Pull Request в https://github.com/dotnetmore/shit-tests Тесты должны быть понятные, говорили они. Тесты должны быть короткие, учили они. Но что делать, если только arrange занимает 20 строк? А если act - больше чем просто вызов метода? А если логика кода достаточно сложная, так что в однострочный assert не влезает? Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": http...
Apr 20, 2024•1 hr 8 min•Ep 115•Transcript available on Metacast На читаемость тестов мало кто обращает внимание, а зря - тут много проблем и неочевидных решений. Спасибо всем кто нас слушает. Ждем Ваши комментарии. Бесплатный открытый курс "Rust для DotNet разработчиков": https://www.youtube.com/playlist?list=PLbxr_aGL4q3S2iE00WFPNTzKAARURZW1Z Shownotes: 00:00:00 Вступление 00:04:00 Сферический тест в вакууме 00:13:20 Какими кейсами жертвовать? 00:15:00 Нейминг 00:24:40 Вычисления в тесте 00:30:00 Ссылка на тикет в тесте 00:47:10 Ненужный Verify Ссылки: - ht...
Apr 12, 2024•1 hr 2 min•Ep 114•Transcript available on Metacast