Борода бывшего программиста
183 subscribers
45 photos
2 files
112 links
Сейчас рук. отдела в Озоне, ранее директор по разработке idp.zyfra.com
leotsarev.ru
t.me/leotsarev
Много ссылок на статьи и нытья
Download Telegram
10 минутный техтолк со смыслом «если у вас будут компонентные автотесты, будете реже разьебывать прод и общий регрессионный стенд».
С одной стороны не поспоришь, с другой стороны вы вот читаете наверняка и думаете: жаль у нас мало автотестов.
Кстати схерали у вас их мало? Кто это сделал?
https://highload.ru/moscow/2024/abstracts/14009

#highload
Фичи и их внедрение, слайд для платформы #ziiot
#highload
https://t.me/engineering_manager

Прослушал доклад про фейлы, которые были при внедрении платформы в Сбермаркет. В целом полезный доклад про платформенный подход.

Вопрос, который мы все себе задаём: как убедить бизнес в инвестициях на платформу.
А вопрос, который следует себе задавать (и у меня, и у спикера нет ответа): как убедить себя в нужном объеме инвестиций. Как решить, что в платформенной команде должно быть Х инженеров, а не 0.8Х и и не 100Х?

#highload
Программисты регулярно задвигают про то, какие мы гигачадсверхразумы, а гуманитарии лохи. Но я тут слушал на #highload доклад про технологическую архитектуру Алисы, и при задавании вопросов программисты не смогли в простое гуманитарное "оставаться в заданных рамках дискуссии". Вот тебе только что рассказывали, как в Алисе есть рефразер, чем он отличается от сумматора и как оптимизировать EAGLEs модели, а ты такой: расскажите, когда Алиса будет надежно голос ребенка отличать, я озабоченный родитель, подумайте о детях.

С другой стороны вопрос к организаторам конференции, а они чего ожидали, когда поставили этот доклад в главный зал? Что там соберется элитная компания ML-специалистов?
Царев Леонид резюме.pdf
175.1 KB
С 28 декабря я освобождаюсь от ЦИП / Цифры, так что если кому-то я нужен, пишите.

Умею управлять технарями, подбирать команду и помогать ей работать, выстраивать отношения с бизнесом, переводить с технического на нормальный и обратно, налаживать и выстраивать процессы, прилично принимаю технические решения.

Шар, репост, лайк, благодарность в случае успеха!
«Для того, чтобы догнать лидеров, необходимо 5-6 лет. Или если мерять в попугаях 3-4 директора по цифровой трансформации»
https://ruitunion.org/posts/2024-12-20-we-were-exposed/

Коллеги из "профсоюза" немного ущемились моими вопросами в комментариях и выложили пост. Вот и дальше получается, вот есть Синодов (или например я). У нас есть фамилия, имя, отчество, какие-то координаты, история.
И есть простой русский анонимный программист Мыкола, из которого состоит ИТ-профсоюз. Мы абсолютно прозрачное горизонтальное сообщество, в котором есть НОЛЬ людей, которые могут назвать свое ФИО, вступай в чат, борись за права народа!
В одной конторе ИБ отключило на праздники фаерволлом коннекты зарубеж, чтобы злые хацкеры ничего не сломали.

Жалко белорусские заказчики ничего не знали и продолжили слать письма, которые не доходили
https://github.com/dotnet/runtime/pull/111225

Три года обнаружил небольшую багу (подтвержденную) в .NET runtime. Вот сейчас робот решил ее закрыть за неактивность. Психанул, прислал двухстрочный фикс. Посмотрим что будет.
Борода бывшего программиста
Сегодня я узнал про существование dotnet nuget why. Раньше я копался в project.assets.json, а оказывается есть спецкоманда для этого. Впрочем, как оказалось, загадку уязвимости в System.Private.Uri она решить все-таки не помогает из-за бага https://githu…
Оказывается, в SDK 9.0.101 откатили NuGetAuditMode=all по умолчанию, и теперь опять варнинги случаются только из-за прямых зависимостей, а не из-за транзитивных.
Зачем, почему — официального объяснение выглядит как «что-то все взвыли» (UPD), говорят к NET 10 придумают план про включению опять.
Если вы успели зафанететь от этого изменения (а в промышленном программировании весьма полезно выглядит), то включите назад вручную.
Поиграть с друзьями с Factorio →
...
Документация кубера →
...
Исправляю свои скрипты →
...
Запрос в техподдержку Яндекс.Облака →
....
У Ашманова как обычно интересно, на этот раз про историю Лаборатории Касперского. В какой-то степени это могла быть история про войну «основателя-технаря» (Касперского) и «основателя-бизнесмена» (Касперской), но мне, конечно, интереснее тут эта часть: про эффективность и лояльность.

Полная статья увы под paywall
https://sponsr.ru/ashmanov/80813/Baiki_Prekrasnyi_chistyi_mir_IT_voorujennyi_zahvat_ofisa_iuristyvolshebniki/
https://borretti.me/article/composable-sql

Довольно интересная статья о том, каких абстракций не хватает в SQL.
Как обычно, в LINQ они уже есть (особенно с LinqKit).

В комментариях пишут, что проблемы в основном касаются того, что оптимизатор PostgreSQL в разы уступает основным коммерческим БД, и у PostgreSQL не кешируются планы запросов (что? Да).
Интересно, как фактически стала монокультурой база с очевидными архитектурными косяками (ну например process-per-connection).
И вот, у меня упал деплой пет-проекта. Миграции EF6 упали по таймауту (30 секунд). Странно, там ничего такого нет. Я тут же быстренько поправил таймаут на 900 секунд, запушил изменение и накатил заново. По здравому размышлению, это ОШИБКА.

Миграция с увеличенным таймаутом упала молча, без таймаута. :-) Прекрасно. Похоже, надо разбираться.

Мне пришла в голову светлая мысль. А что у нас с SQL сервером?
Мониторинга к нему нет, логи не собираются... Посмотрим логи в кубере:
Could not allocate a new page for database 'tempdb' because the 'PRIMARY' filegroup is full due to lack of storage space or database files reaching the maximum allowed size. Note that UNLIMITED files are still limited to 16TB. Create the necessary space by dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
Version store is full. New version(s) could not be added. A transaction that needs to access the version store may be rolled back. Please refer to BOL on how to configure tempdb for versioning.

О, прекрасно. Что-то такое там про transaction log. PVC под него 1 гигабайт, увеличим до двух (ОШИБКА). Ииииииииии тот же самый результат:
Could not allocate a new page for database 'tempdb' because the 'PRIMARY' filegroup is full due to lack of storage space or database files reaching the maximum allowed size. Note that UNLIMITED files are still limited to 16TB. Create the necessary space by dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
Version store is full. New version(s) could not be added. A transaction that needs to access the version store may be rolled back. Please refer to BOL on how to configure tempdb for versioning.


Хех. Пойдем посмотрим, сколько реально места на нашем PVC. Там занято меньше 20% (!), а после моего изменения — меньше 10%. Ого. Посмотрим на другие PVC, и на том PVC, который под БД master, занято 98%. Стало понятно, увеличиваем его в два раза. Запускаем деплой заново, он проходит за 16 секунд.

Какая ошибка тут была допущена? Я действовал по алгоритму «получение сведений — предположение причины — фикс причины — повторная проверка». Это кажется быстро, но это всегда неправильно. Алгоритм должен быть «получение сведений — предположение причины — проверка предположения — фикс причины — повторная проверка». Миграция на SQL сервере проходит долговато? Почему? С ним все в порядке?

Кончилось место на PV? Даже если мы логически знаем на каком, надо ПРОВЕРИТЬ, прежде чем что-то менять.
Простое правило: исправлять причины проблемы, которую мы не понимаем, запрещается.

Кстати, я допустил еще ошибку. Я так и не знаю, почему БД master сожрала 1 гигабайт. Надо бы узнать.
https://t.me/ruitunion/585

Судя по тому, что написано, один из программистов ЦЗ писал. Если уж решили вынести в СМИ (осуждаю, но понимаю), выбирайте что-нибудь не ЦИПСОное (осуждаю).

P.S. Правдивость или ложность фактов прокомментировать не могу, в том числе потому, что сейчас сам там не работаю и информацией не владею. Печально все это.
Факторио учат нас, как полезны (нет) комментарии в коде. Сверху табличка «не загораживать», снизу построенный друзьями ровно на отводе под жд форт
Философия разработчика. Перефразированы и раскрыты популярные поговорки.
https://news.ycombinator.com/item?id=42920285