Борода бывшего программиста
183 subscribers
45 photos
2 files
112 links
Сейчас рук. отдела в Озоне, ранее директор по разработке idp.zyfra.com
leotsarev.ru
t.me/leotsarev
Много ссылок на статьи и нытья
Download Telegram
Общим местом является то, что внутреннее ИТ гигантских корпораций не способно к созданию конкурентных продуктов на внешний рынок. Есть этому куча разных причин, в том числе культура, механизмы постановке целей и финансирования.

В последнее время я пришел к убеждению, что есть только одна культура, которая хуже, чем культура внутреннего ИТ в этом отношении: культура заказной разработки
Что-то мануалы стыдливо обходят вопрос hyperthreading и кубера, а у нас есть так сказать HT-озабоченные граждане.

Для начала, у большинства облаков продается 1 физ. ядро с включенным HT как 2 vCPU, и это в документах тихонько пропускается (впрочем я бы тоже так продавал).

Но интереснее вопрос. Положим, что у вас CPU request у вашего контейнера с равен 1. Что гарантирует, что он не окажется на одном физ ядре с кем-то, кто достаточно бодр, чтобы сожрать большую часть ядра? Как кубер это учитывает? Есть что почитать?
Антон прислал ссылку про то, как уебански считается load average в Linux

https://www.brendangregg.com/blog/2017-08-08/linux-load-averages.html

P.S. если хотите, чтобы Антон наконец завел свой канал ставьте звёздочки. Ну или огонечки, ладно
https://browser.engineering/index.html

Как написать свой браузер (полезно для общего понимания, что там вообще внутре)
А идет ли кто-то на Highload? Хочется там с кем-то тусануть.
Forwarded from В поисках подходящего названия...
- и по всем задачам проставьте статусы!
- так мы же только что отчитались, разработка завершена, все протестировано!
- ну так проставьте статусы что "готово"
- админ мой выйдет из отпуска в понедельник и проставит, ладно
- это не ждет до понедельника, проставьте сами!
- слушай, надо срочно 2 договора дотолкать и еще миллион дел, это блин точно задача админа
- ничего не знаю, надо проставить! для порядка и контроля!

и канистры нет...
Открываю документацию Кварца, а там такое.

https://www.quartz-scheduler.net/documentation/quartz-3.x/tutorial/advanced-enterprise-features.html#clustering

2/3 варнингов на этой странице появились в результате тикетов от нашей команды в Fortis. Такой приветик из прошлого.
.NET 9 вышел, а работающего плагина для PostgreSQL для EF Core 9 нет.
Его реально пилят те же программисты, что и EF Core и плагины для SQL Server/CosmosDB, но в свободное время
Сегодня я узнал про существование dotnet nuget why.
Раньше я копался в project.assets.json, а оказывается есть спецкоманда для этого.

Впрочем, как оказалось, загадку уязвимости в System.Private.Uri она решить все-таки не помогает из-за бага
https://github.com/NuGet/Home/issues/13718

И туда же — https://github.com/NuGet/Home/issues/7344 (потому что этот пакет, да и большая часть ссылающихся на него, на самом деле Supplied By Platform — лежат в внутри shared framework, и достается оттуда, а старые версии тупо игнорируются).
https://news.ycombinator.com/item?id=42122690

Очень криво рассказывают (зачем-то ругают Docker compose вместо того, чтобы ругать k8s), но по сути это слой абстракции "выше уровнем", аналогичный тому, что мы предоставляем для сервисов в рамках платформы ZIIoT (zifctl) или абстракции PaaS в рамках Авито Plato.

Посмотрим, что у них выйдет, звучит круто
Я нахожусь в убеждении, что наличие атрибутов куки SameSite=Lax и его дефолт в браузерах полностью отменяет всякую необходимость в CSRF-защите (ну вот все это положили в hidden поле идентификатор сессии и проверили при сабмите) для современных браузеров, и это уже вопрос доп. сложности, которую можно тянуть, чтобы защитить владельцев древних браузеров, а можно не тянуть (и хер с ним для части сайтов). Что думаете?
Иногда горит что-то такое про работу не техническое, но я не пишу в канал, неприлично. Да и не стоит.
А иногда есть вопрос, который в целом выглядит показательным для поста, но не хотелось бы давать повод коллегам выяснять в комментариях сиюминутное: при обсуждении какого вопроса это возникло, и кто из руководителей на какой позиции стоял. Придумал писать в будущее через год. Там сиюминутное будет не важно, а полезное останется. Кинул первый такой пост. Может он не доживёт, удалю. А может и доживёт.
Мы, деды, иногда пишем фронт не SPA (на пет-проектах). У нас там есть разные смешные приколы, например, как бы получить бутстрап в проекте? Раньше мы его тащили нагетом, который при инсталляции (не при билде) запускал скрипт install.ps1, который копировал бутстрап в нужный каталог, и ты его там коммитил в репу. Да, серьезно.

В какой-то момент уважаемые люди из команды SDK сломали это поведение нахер, просто перестали его запускать.
Были недовольные, даже внутри Microsoft, команда Enitity Framework писала открытые письма команде SDK. В общем, перестало это работать.

Есть реально слой потребности людей, которые не хотят тащить в рот полную фронт сборку с npm, node, webpack и другими модными фронт словами — просто потому, что это дополнительная сложность. Для таких людей Microsoft сделала LibMan — простую поделку, которая умеет скачивать и класть в Output дистрибутивы с npm/unpkg. Она встроена в Visual Studio. И вот у этой тулзы есть ее версия Cli и виде MSBuild таски. Выглядит надежно — берем при билде скачиваем все с npm/unkpg и кладем в output. В репе ничего нет, все красиво, все просто, никакой магии, никакого node.js при сборке.

Но есть бага. Спорадические падения. Как хороший мальчик, я добавил в либу ретрай и логирование https://github.com/aspnet/LibraryManager/pull/753. Правда, вслепую, потому что как многие MS либы она собирается хер знает как и на самом деле не опенсорсная, требует сборки через Arcade и доступа к приватным нагет фидам

В общем, несколько месяцев я ждал релиза. И вот он вышел. В Visual Studiio внутри есть мои ченджи. А cli-тулзу и билд таксу не пересобрали.
И вот месяц я жду, пока ее не соберут. Напоминает примерно мои контрибушены в EntityFramework 6, куда я решил добавить трансляцию DateTimeOffset, Guid и создание миграцией в UTF-8 примерно тогда, когда они решили застопорить ее разработку. Правда, большая часть их успела попала в 6.3 (примерно через год после того, как я их сделал). Вот это "через год" это просто каеф, конечно.
https://news.ycombinator.com/item?id=42231489

О расколе в C++ и двух фракциях. Автор статьи утверждает, что эволюцию C++ тормозит ориентация на клиентов с древним тулингом. Тех клиентов, которые не могут внести изменения в свой исходный код.

Интересно, насколько эта аналогия корректна для Ziiot platform:-)
https://news.ycombinator.com/item?id=42239607

Redis пытается захватить контроль над всеми клиентскими либами в попытке борьбы с Valkey
Please open Telegram to view this post
VIEW IN TELEGRAM