Блестящий Garnet, проблемы экосистемы, OpenAPI и OpenAI
Подкаст RadioDotNet выпуск №90 от 1 апреля 2024 года
Разговоры на тему .NET во всех его проявлениях, новости, статьи, библиотеки, конференции, личности и прочее интересное из мира IT.
Аудиоверсия: api.mave.digital/storage/podc...
Темы:
[00:00:00] - Приветствие
• Radio.DotNet.Ru
[00:01:09] - Microsoft Garnet
• microsoft.github.io/garnet/
• github.com/microsoft/garnet
• t.me/epeshkblog/154
[00:12:39] - Heap data structure and .NET priority queue
• andrewlock.net/an-introductio...
• andrewlock.net/behind-the-imp...
• andrewlock.net/implementing-d...
[00:21:59] - Tales from the .NET Migration Trenches (Part 2)
• www.jimmybogard.com/tales-fro...
• www.jimmybogard.com/tales-fro...
• www.jimmybogard.com/tales-fro...
• www.jimmybogard.com/tales-fro...
• www.jimmybogard.com/tales-fro...
[00:41:45] - .NET Developers Begging for Ecosystem Destruction
• aaronstannard.com/dotnet-even...
[01:04:01] - Generate OpenAPI specification at build time
• www.meziantou.net/generate-op...
• github.com/dotnet/aspnetcore/...
• github.com/dotnet/aspnetcore/...
[01:20:24] - .NET Task Parallel Library vs System.Threading.Channels
• chrlschn.dev/blog/2023/10/dot...
[01:29:43] - Introducing .NET Smart Components - AI-powered UI controls
• devblogs.microsoft.com/dotnet...
[01:41:42] - Кратко о разном
• devblogs.microsoft.com/dotnet...
Голоса выпуска:
• Анатолий Кулаков
• Игорь Лабутин ( / ilabutin )
Звукорежиссёр:
• Игорь Лабутин ( / ilabutin )
Фоновая музыка:
• Максим Аршинов «Pensive yeti.0.1» (hightech.group/ru/about)
Спасибо за помощь:
• Александр
• Сергей
• Владислав
• Шевченко Антон
• Лазарев Илья
• Гурий Самарин
• Виктор
• Руслан Артамонов
• Александр Ерыгин
• Сергей Бензенко
• Александр Лапердин
• Ольга Бондаренко
• Дмитрий Сорокин
• Сергей Краснов
Почта: Radio@DotNet.Ru
Сайт подкаста: Radio.DotNet.Ru
RSS подписка: cloud.mave.digital/37167
Google Podcasts: podcasts.google.com/feed/aHR0...
Apple Podcasts: podcasts.apple.com/us/podcast...
Яндекс Музыка: music.yandex.ru/album/12041961
KZread Playlist: • RadioDotNet
Boosty (₽): boosty.to/RadioDotNet
Пікірлер: 14
Было бы круто добавить в сравнение обычного TPL и System.Threading.Channels еще и System.Threading.Tasks.Dataflow, которое, как мне кажется, подходит идеально для описанной задачи
@VoroninPavel
3 ай бұрын
DataFlow вообще, на мой взгляд, сильно недооценен.
@tt0nix
3 ай бұрын
Почему-то очень редко вижу его в естественной среде обитания. И ни разу не было ни одного доклада про Dataflow на наших митапах. Создаётся впечатление что пациент больше мёртв чем жив. Ну или ему сильно не хватает хорошего популяризитора.
Контроллеры Энрдю-Джимми мигрирует... А ты попробуй Ремоутинг смигрировать =)
@tt0nix
3 ай бұрын
Ну это не честно. Ибо получится уже не миграция, а переписывание. Про то как написать свой код статей много, а вот как перенести чужой ещё не достаточно :)
" .NET Task Parallel Library vs System.Threading.Channels" - по-моему там написан отборный бред, в версии с каналом он просто стартует одновременно все ожидания, которые конечно же завершатся за примерно 50 мс.
Build-time swagger вроде как умеет NSwag
@tt0nix
3 ай бұрын
Да, многие умеют. Более того, не сложно самому это сделать. Но тут, как всегда, встроенная фича от MS (ASP) всегда «лучше» любой сторонней.
Да, изучения кодовой базы Garnet мотивирует контрибутить туда очень слабо
@bananasba
4 ай бұрын
а поподробнее?)
@guriysamarin6204
4 ай бұрын
В подкасте было довольно подробно. 1. Много unsafe кода 2. Соответственно мало идеоматического C# 3. codeconvensions довольно древние, настолько, что сразу в глаза бросается 4. Сплошное битовое сдвижение одной константы на другую В общем не то, с чем привыкли работать C# разработчики
@bananasba
4 ай бұрын
@@guriysamarin6204 не дослушал - сразу полез в каменты :) Почитал, посмотрел, да, сложно. Я правда не знаю откуда могли взятся надежды на то, что его код будет красивым, предыдущий опыт мне говорит, что МС особо не вкладывается в код либ и тулзов, они лишний раз палец о палец не ударят.
@tt0nix
3 ай бұрын
Мне кажется, что это не тот продукт куда они ждут активного контрибьюшена. Слишком низкоуровневый и нацеленный на производительность. Если хочется помочь с чем-то идиоматичным, то лучше поискать какой-нибудь более высокоуровневый репозиторий.
@guriysamarin6204
3 ай бұрын
@@tt0nix Не знаю чего они там ожидают (судя по up for grubs они как раз ждут контрибьюций), но я не вижу смысла писать проект на С#, ежели в реальности это C++ in disguise. Такое надо писать на Rust