Дед отваливает на каникулы на пару недель, погреть кости, собраться с мыслями. А если вы что-то пропустили - вот вам дайджест.

Также напомню, что канал развивается благодаря вам - если нравится мой контент, поделитесь ссылкой с другьями-коллегами. Я ценю релевантную и читающую аудиторию, а расти она может только благодаря сарафанному радио.

Важный дисклеймер (есть в закрепе)
Предыдущий дайджест

Разработческое:
Inner-source
Подарок на новый год
Дорогу молодым!
200 OK

Менеджерское:
Когнитивная ловушка
Точность - это число повторений
Как по маслу
Нутром чую

Мотивационное:
Успех неизбежен
Как не устать навсегда
Бездействие
Самомотивация

Гастро-путешествия:
ʁиvɐdɯɔʚⱯ
La vita è troppo breve per mangiare male
Непал
Je ne mange pas six jours
Nok fisk, jeg vil ha kjøtt, vær så snill
Чехия

#лёха_строит_бэху
С иголочки одет
Как зайцу - стопсигнал
Да будет свет! (на самом деле, пока нет)
Да будет свет! (теперь - точно)
Вишенка на морде
Fairlady Z

Дедовское:
С новым 56-м годом
Чтобы ракета летела, ее задняя часть должна гореть
Стой, стрелять буду
Трое в лодке, не считая ИИ
Где подвох?

Подписаться - https://t.me/vit_ded
Веб-версия - https://tg-vit-ded.github.io/tg-to-gh-pages/
RSS - https://tg-vit-ded.github.io/tg-to-gh-pages/feed.xml
atom - https://tg-vit-ded.github.io/tg-to-gh-pages/atom.xml
969 просмотров · 7 реакций Открыть в Telegram · Открыть пост на сайте
Чехия

Наши молитвы о мясе были услышаны, и в этот раз попалась Чехия. Кстати, Чехия - одна из наших любимых стран. Архитектура, природа, кухня, пиво, сам дух страны - хорошо попадают в нас, и потому мы там были раза 4, хотя редко ездим в одно место дважды.

В этот раз мы даже вместо традиционно чтения википедии с сыном просто пересматривали фотографии из путешествий в Чехию. А заодно - экспресс-курс чешского языка для Лёхи, из которого мы на удивление много помним. Млувим, але нерозумим.

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

Вепржево ко'лено (запеченая свиная рулька) в сопровождении тушеной квашеной капусты с тмином - практически символ Чехии - открывал неделю под тмаве пивечко.
Свичкова на смэ'тане (говяжья вырезка в соусе из овощей и сливок) в компании кнедликов - менее известное, но более традиционное блюдо - сложно, долго, хорошо, но вырезка подкачала.
Трдельники (в них мы влюбились еще в те времена, когда у нас про них особо не слышали) всегда хороши, но рекомендую наматывать потолще, тонкое тесто пересыхает.
Завтра нас ждут утопенцы - колбаски/шпикачки, всю неделю маринующиеся в овощах и уксусе - пойдут закуской под пятничное пенное.
А на выходных снова классика - гуляшова полевка в хлебовем котлику - густой наваристый мясной суп, подаваемый в котелке из хлеба.

А выбор следующей страны будет неслучаен, так как билеты туда были куплены давно. Но об этом - в следующий раз.
774 просмотров · 18 реакций Открыть в Telegram · Открыть пост на сайте
200 OK

Телеграм - отличный мессенджер и площадка для контента. Но есть некоторые нюансы. Например, паршивая индексация поисковиками. А еще его не читают те, кто принципиально пользуется только мессенджером MAX.

Поэтому мои коллеги из Yandex ML Brand запилили зеркалирование тг-каналов на github pages. Во-первых, это красиво. Во-вторых, теперь у этой колонки тоже есть вебная инкарнация - https://tg-vit-ded.github.io/tg-to-gh-pages/

Работает просто, эффективно и надежно - пушишь репо, сохраняешь в секретах телеграмовские api_id, api_hash, генерируешь скриптом сессию, указываешь в переменных окружения канал, далее через github actions запускается периодический воркфлоу синхронизации, страница сервится на github pages. Умеет в статику, роботс, рсс/атом. Спасибо ребятам (и лично Пете) за такой крутой проект.

All credits to https://github.com/ml-brand/tg-to-gh-pages
688 просмотров · 18 реакций Открыть в Telegram · Открыть пост на сайте
Дорогу молодым!

Лучший способ быстро вырасти - через стажировку. А лучший способ вырастить себе крутую команду - нанимать стажеров. Я знаю, о чем говорю - сам приходил в Яндекс стажером-разработчиком на С++, будучи на третьем курсе. И как-то затянуло. С тех пор я менторил с десяток стажеров, наблюдал за ростом и развитием ~сотни экс-стажеров, и даже на цифрах статистики стажеры растут быстрее и добиваются большего. Особенно если следовать нескольким простым правилам.

Сами стажерские программы в Яндекса за эти годы преобразились до неузнаваемости. От полного хаоса (когда я приходил в 2008 году, никто толком не понимал, что вообще делать со стажерами) до четких процессов и целой культуры Young&&Yandex сейчас. Смотрю и завидую - хоть второй раз на стажировку врывайся.

Раньше стажировка могла длиться и год, про стажера могли немножко забыть, процесс перехода в штат был случайным, что именно нужно делать было не всегда понятно. Сейчас - отточенный найм, четкий онбординг, реальные задачи, прозрачные процессы и даже отдельные крутые мероприятия для стажеров. А все ради молодых, талантливых и амбициозных ребят, на которых будет опираться компания в дальнейшем. Хочешь светлое будущее - создавай его!

Яндекс запускает новый сезон стажировок и расширяет набор до рекордных 3200 человек - это на 500 больше, чем в 2025 году. Ключевой фокус сезона - машинное обучение. Помимо ML, стажировки открыты по фронтенду, бэкенду, аналитике и мобильной разработке. Есть и нетехнические направления — финансы, продуктовый и проектный менеджмент, HR, закупки и юриспруденция. Стажировка оплачивается, длится от 3 до 6 месяцев и проходит по гибкому графику. Стажёры работают над реальными проектами вместе со штатными командами, за каждым закреплён ментор. А 24 марта в московском офисе Яндекса в «Красной Розе» пройдёт мероприятие для знакомства с командами и направлениями, участие — по регистрации. Подробности тут - https://yandex.ru/yaintern/whywhy
678 просмотров · 17 реакций Открыть в Telegram · Открыть пост на сайте
Fairlady Z

Аркадий Петрович еще 6 лет назад говорил, что Зетка валит и рулится. Даже Георгий Тумасович пару лет назад пересел со столь привычного s-chassis на z-chassis. Я решил, что и мне пора.

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

Зато трушная, с иероглифами, и строится за пару часов. Из необходимых инструментов - лишь кусачки и пинцет. С некоторыми деталями (и, особенно, наклейками) пальцами вообще никак не совладать, даже детскими. Но штука классная. И пока бэха ждет очереди на прием в студии тюнинха, #лёха_строит_зетку.

Но, вероятно, однажды эта зетка станет настоящей. Нужно лишь подождать, пока они станут проходными. Или взять 370z, тем более что по сути это почти один автомобиль, а по костям и шасси они, кажется, идентичны.
605 просмотров · 11 реакций Открыть в Telegram · Открыть пост на сайте
Nok fisk, jeg vil ha kjøtt, vær så snill

В качестве гуманитарной помощи бездарным детям уставшим мужьям, сегодняшний выпуск кулинарной рубрики будет моего авторства. Позвольте представиться - Ира, жена Деда, но совсем не бабка. И не IT, прости господи.

На этой неделе со дня бокала к нам всплыла Норвегия со всеми ее островами. Я же посчитала это подставой в свою сторону, и вот почему.

Википедия считает ее королевством в северной Европе с населением в три раза меньше населения Москвы. Территория Норвегии тянется узкой полосой вдоль северо-западного побережья Скандинавского полуострова и включает в себя все острова, островки и скалы, находящиеся в ее территориальных водах. Она крупнейший производитель нефти и газа в северной Европе, а рыбоперерабатывающая промышленность для Норвегии почти так же важна, как добыча нефти и газа.

Поэтому норвежцы очень сильно любят рыбу (а куда они денутся). Среднестатистическая семья ест рыбу 3 раза в сутки в совершенной разных видах. И готовят они ее самыми извращенными способами. К примеру - столь любимый норвежцами Лютефиск - сушеную рыбу (треску, сайду, морскую щуку, мольву) вымачивают в щелочном растворе каустической соды трое суток, затем несколько дней вымачивают в воде. Потом едят. У меня только один вопрос: какой больной уб… человек додумался так пытать несчастную рыбу?!

Или вот Рёммегрот - традиционная норвежская каша. Готовится из смеси сметаны, муки, жирного молока и соли. Аппетитно звучит? Вот и я такую дичь для своей семьи готовить не стану, даже ради расширения кулинарного кругозора и поиска новых вкусовых откровений. Но третий раз за две недели варить рыбный суп даже мне уже не хотелось.

Поэтому порадовать деликатесами высокой кухни на этой неделе я своих домашний не смогла. Как наименьшее из зол, для начала я приготовила Кьетболлер - мясные шарики (состав как у ГОСТовских советских котлеток, но размер как у фрикаделек из Икеи), а чтобы добавить им аутентичности, пришлось залить их «белым соусом» - обжаренная в сливочном масле мука, разведенная молоком. И это их просто погубило. Соус отвратителен, а мои румяненькие нежненькие котлеточки-тефтелечки от него просто развалились. Остались вкусны сами по себе, но соус вид подпортил.

На закуску к ним пошел Агурксалат (ага, как слышится, так и пишется). Ничем не испорченный салат из огурцов, зелени какую любите, в заправку - соль, сахар, какой-нибудь уксус. Смешать, встряхнуть, кайфануть.

Пройти мимо селедки в Норвегии все-таки нельзя, поэтому лениво открываем баночку селедки в любимой заправке, вареную картошечку с укропчиком к ней под бочок. Черный хлеб и запотевшая рюмочка напрашиваются сами. Не спрячешь русскую душу!)

Далее попробуем поиздеваться над блинами (хотя больше похоже на лепешки) - назовем их Лефсе, добавим к картофельному пюре муку, сливки, масло, пожарим и посыпем корицей и вареньем польем. Или сметанки и сыра с зеленушкой внутрь, как хотите, кто я такая чтобы вам что-то запрещать. Получается сытно, тягуче, в общем - неплохая альтернатива классическим тонким блинам на грядущую масленицу.

Вот так прошла эта неделя. Пожалуйста, пусть в субботу нам выпадет что-нибудь кавказское - я мяса хочу!!
711 просмотров · 28 реакций Открыть в Telegram · Открыть пост на сайте
Самомотивация

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

Это действительно важно, так как от мотивированности напрямую зависит перформанс команды, ее стабильность и отток, способность ставить амбициозные цели и достигать их. Задачка не из легких, поэтому для любого руководителя нет большего счастья, чем самомотивирующаяся команда. Кого-то нужно регулярно "подкармливать" факторами мотивации, а кто-то находит их сам, "подножным кормом". Я и сам из таких, и ценю это в людях.

Как же можно самомотивироваться? Приведу несколько вариантов:
• Умейте ценить свои успехи и подмечайте успехи коллег. Вы - молодец и капитальный красавчик, и никогда в этом не сомневайтесь.
• Интересуйтесь, зачем нужна задача или проект, какую пользу они принесут, как повлияют на бизнес. Вы ведь тоже влияете на успех компании.
• Ищите новые зоны роста своего продукта, предлагайте инновации. От вас тоже зависит вектор развития, вы должны быть услышаны.
• Фокусируйтесь на поиске решений, а не на мрачной констатации проблем. Ворчать все умеют, а решать проблемы куда продуктивней.
• Любите свое дело и смотрите с оптимизмом на пару шагов вперед. Без цели и плана можно погрязнуть в рутине и заскучать.

Закончу метафорой. Самомотивация - это как часы с автоподзаводом. Для зумеров поясню: раньше были такие механические часы, которые сами принимают завод от движения. Вы в них просто ходите, и от движений руки через систему маховика, шестеренок и пружины часы поддерживают завод. Если положить их на тумбочку и долго не носить - они встанут. Мораль: не лежите на тумбочке, будьте всегда в движении, самозаводитесь, и тогда у вас не сядет батарейка.
670 просмотров · 15 реакций Открыть в Telegram · Открыть пост на сайте
Где подвох?

За ужином после работы мой изможденный ум долго всматривался в коробочку пирожных с надписью "набор эклеров". К самим эклерам вопросов нет. Но что смутило - эклеры в ней были все одинаковые. Сидел и думал - а должно ли название "набор" подразумевать разнообразие видов внутри? Или несколько одинаковых предметов - тоже набор?

Если вы купите набор цветных карандашей, а там все карандаши - красные, вы будете испытывать легкий диссонанс. Вроде набор, вроде цветные, но ощущение, что вас обманули. При этом же набор синих ручек явно состоит из нескольких одианково синих ручек.

Как набор по-агнлийски? Правильно, set. Вы заказываете мега-сет роллов на компанию и вам приезжает 100 одинаковых роллов. Разочарование? Однозначно. Набор конфет - тоже подразумевает некоторую вариативность. Но тоже - не всегда. Набор бокалов - напротив, будет выглядеть странно, если все бокалы в нем разные.

В моем любимом C++ (как и примерно везде) контейнер std::set вовсе требует уникальности содержимого, а не просто разнообразия. Иначе вам уже нужен std::multiset.

Так что же такое набор? Видимо, кому как удобно. Хотите разных эклеров - заказывайте ассорти. А когда мозг ломается от подобного несовершенства мира - пора идти спать.
685 просмотров · 27 реакций Открыть в Telegram · Открыть пост на сайте
Нутром чую

На той неделе упоминал принятия решений через подбрасывание монетки. Но точно ли это - единственный способ, если не хватает явных вводных для принятия осознанного решения? Конечно же, нет. Есть еще интуиция. Что это такое и можно ли ей доверять?

Вообще я был уверен, что уже писал об этом. Но в прежних постах этих мыслей не нашел, хотя они навеяны книгой Даниэля Канемана "Думай медленно… Решай быстро", которую я читал как раз в прошлом году. Исправляюсь, потому что это важно знать, чтобы понимать, как мы принимаем решения.

Если упрощать, то интуиция - это разновидность процесса узнавания. Ваш мозг по нечетким данным может опознать ситуацию, сопоставить с опытом, закрепленным в подсознании, и подсказать решение.

Как вы узнаете, что перед вами яблоко? Вы же каждый раз явным образом не прокручиваете в голове - "ага, круглое, зеленое, с хвостиком, наверное яблоко". Вы просто видите его и знаете, что это яблоко. На уровне подсознания.

Так и интуиция задействует ту часть системы мышления, которая все понимает, но не может объяснить. Нутром чует. Потому что что-то похожее уже было. Почти как нейросеть. И если у вас богатый опыт и насмотренность, чуйке обычно можно доверять.

Но не всегда. Самая частая ошибка - это подмена вопроса. Бывает, подсознание подкидывает ответ на какой-то другой, более простой и знакомый вопрос. Просто потому что это легче. И если научиться это замечать, уточнять у самого себя, переспрашивать, четко формулировать мысли в голове, то будет легче такую подмену обнаружить. Критическое мышление никто не отменял.

Итого, доверять интуиции можно, но только если добавить к ней немного осознанной рефлексии и четкую постановку задачи. А подробней - почитайте в упомянутой книге, она очень даже полезна.
726 просмотров · 18 реакций Открыть в Telegram · Открыть пост на сайте
Вишенка на морде

Финальных штрих в преображении фронтальной части бэхи - новые хромированные ноздри. В упор не понимаю антихрома на классических авто - янгтаймер должен блистать! Посему старые черные ноздри сразу отправляются в мусорку, а их место занимают новенькие и блестящие. Но если б все было так просто. У нас же, как всегда, не без нюансов.

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

Во-вторых, снизу решетка крепится на четыре усика. И у новой решетки три оказались отломаны. Хотя казалось бы. Благо, сидит она все же крепко и так. А то я уже боялся, что придется скатываться либо в стяжки, либо в саморезы, а не хотелось.

В-третьих, сверху решетка крепится штырьком, заходящим в отверстие в телевизоре. Но так как машинка, видимо, не раз получала по морде, отверстие оказалось неотцентрировано относительно места установки. Пришлось сверлить новое.

Итого, теперь анфас полная красота. А впереди еще несколько кардинальных преображений, work in progress. #лёха_строит_бэху
717 просмотров · 23 реакций Открыть в Telegram · Открыть пост на сайте
Je ne mange pas six jours

Если вы, как и я, знаете по-французски только эту фразу, значит, вам тоже далеко за 30, и будем учить язык вместе.
Из Непала наша гастро-экспедиция отправляется прямым рейсом во Францию.

Что мы знаем про Францию?
• Имеет ошибрные заморские владения, хотя, казалось бы, времена колониальных империй давно позади (нет).
• Галлия (вместе с Астериксом и Обеликсом) - часть современной Франции.
• В VIII веке там правил король по имени Пипин Короткий (кек).
• Устроили революцию, когда это еще не было мейнстримом.
• Страна - член НАТО, ВТО, ОБСЕ, ООН и Большой Семерки (кому-то это вообще интересно?).
• "Высадка на Луне была, а в Нормандии - нет"... Хотя не, это из другой оперы.

С кухней, впрочем, все куда понятней, чем в случае Непала. Кухня Франции нас порадовала обилием мяса (и не только лягушачьих лапок), рыбы и морских гадов, вкусными сырами и десертами. Все свое, родное. В меню этой недели:
Сroissants - хорошее начало воскресного дня под чашечку кофе, тут все ясно, беспроигрышно.
Vichyssoise - приятный крем-суп из порея, картофеля и сливок, с обожженными креветками и кальмарами (фаер-шоу в процессе - обязательно, накидайте огонёчков шефу!).
Coq-au-vin - петух, тушеный в красном вине с луком и беконом, очень пряный, нежный и насыщенный - однозначный лайк. Как минимум, это красиво.
Ratatouille - это, оказывается, не крыса, а запеченые овощи под маринадом из запеченых протертых перцев - а хорошо.
Bouillabaisse - марсельская уха на овощном бульоне и с 5-6 видами рыбы и морепродуктов, что тут может не понравиться. В наших сетях застряли креветки, кальмары, мидии, семга, тилапия и тунец, которые потом дружной толпой занырнули в овощной бульон с помидорками. Такое обилие гадов оказалось даже несколько чрезмерным - выкинуть оттуда тилапию, тунца и мидий, и суп бы не отдавал тиной. Но стал бы похож на Вишисуаз.
Cassoulet - рагу из белой сухой фасоли со всеми видами мяса, что нашлись в морозилке, дальний родственник солянки. Вкусно, но муторно - чтобы приготовить сухую фасоль, нужно потратить почти двое суток: сначала сутки ее вымачивать, потом час варить, потом час тушить с жареной свининой и копченой грудинкой, потом упихать ее с сардельками в глиняный горшок и 2 часа томить в духовке. И после этого всего она не потеряет ни вкус, ни форму! Желаю вам всем иметь такую же стойкость в жизни, как у белой сушеной фасоли!
Escargots - те самые улиточки по-бургундски с маслом, чесноком и непременным crouton. Они у нас давно в рационе. Долой предрассудки! Их полюбил даже восьмилетний ребенок.
• Ну и вполне известные закуски и десерты - brie, camembert, tête de moine, eclair, profiterole, macaron - тоже никто не отменял.
Это мы берем, это мы любим. Bon appétit!
745 просмотров · 21 реакций Открыть в Telegram · Открыть пост на сайте
Бездействие

Порой перед нами возникает дилемма - пусть варианты ее разрешения будут А и Б. И мы можем долго ломать голову, какой путь выбрать. Мусолим pro и cons обоих вариантов, оцениваем размены и последствия. Кстати, об одном из принципов принятия решений подробно разгонял тут - почитайте, если не видели.

Однако, надо понимать, что почти всегда есть еще вариант В - ничего не делать. И его также нужно оценивать наравне с А и Б. Притом тут бывают разные ситуации - от "можно ничего не трогать, и так норм" до "бездействие приносит проблемы само по себе". Так что в уравнение добавляется еще одна переменная - срок принятия решения.

И в случае, когда бездействие (даже на время принятия решения между опциями А и Б) приносит ущерб, может оказаться так, что цена ошибки в случае неверного выбора будет ниже, чем ущерб от этого бездействия. А тогда даже выбор через подбрасывание монетки будет выгодней, чем сохранение статуса-кво. Такую ситуацию важно вовремя распознать и, при необходимости, быстро "оторвать пластырь". Возможно, будет больно.
768 просмотров · 19 реакций Открыть в Telegram · Открыть пост на сайте
Как по маслу

В очередной раз убеждаюсь, что меня окружают талантливые люди. Вот на неделе выяснил, что продакт-лид из соседнего подраздления Лавки - Миша - тоже ведет отличный канал (@justhappymisha). Хочу поделиться его метафорой про трение и приложенные усилия.

Определение работы в физике - это произведение силы на пройденное расстояние. Расстояние при постоянной силе зависит от трения. Чем меньше трение, тем больше расстояние, которое вы можете пройти, применяя ту же силу. Так что, чтобы делать больше работы, не прилагая больше сил, можно снижать трение.

Трение в нашей работе - это все шероховатости, которые возникают на пути приложения усилий. Неоптимальные процессы, неэфективные коммуникации, нехватка информации. Стоит "отполировать" поверхность приложения усилий - синки, статусы, автоматизация, чек-листы - тут вы сами подберете релевантные методы.

От себя дополню, что стоит еще разделять понятие перемещения и пройденного пути. Насколько я помню школьный курс физики, если начальная и конечная точки совпадают (модуль перемещения - 0), то работа равна нулю. То есть, если вы ходите кругами, то результата 0, а вот затрачиваемые усилия на преодоление силы трения ненулевые, так как сила трения всегда противоположна вектору движения. Нужно минимизировать путь для достижения цели и не ходить кругами, тогда и силы для работы потребуется меньше на том же временном отрезке.

И про силу трения покоя. Сдвинуть увесистный и неухватистый проект с места - обычно, та еще задачка. А вот начать что-то катить - куда проще. И лучше на старте уже срезать углы и покатить. Декомпозиция, MVP, моки, контракты - все как всегда, глаза боятся - а руки делают.
875 просмотров · 16 реакций Открыть в Telegram · Открыть пост на сайте
Как не устать навсегда

У вас было такое, что уже дома жуете свой ужин, а продожаете думать о работе?
Случалось ли вам просыпаться среди ночи и часами не мочь уснуть из-за нерешенной профессиональной дилеммы?
Всегда ли вы после выходных чувствуете себя готовым к новой неделе?
А после длинных праздников или отпуска - правда же вы полны сил и энтузиазма?
Часто ли вы по утрам думаете "да едрить, опять?"
Не боитесь ли вы однажды устать навсегда и больше никогда не восстановиться?

Если вы над несколькими вопросами едва сдержали слезы - значит, вам нужно научиться отдыхать.
Откуда брать новые силы, чтобы воодушевленно жить дальше эту жизнь?
Возьму на себя смелость предложить неполный список советов, как не загнать себя.

1. Научитесь "хард-стопиться". Просто переключаться и разграничивать кванты рабочего и не-рабочего времени вашего мозга. Сначала нужно себя прямо осаживать, потом войдет в привычку. Поймали себя на тяжелых мыслях о работе - имейте смелость сказать себе "нет, не сейчас".

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

3. Не пишите людям после 20 часов и по выходным, а если вам пишут - либо не читайте, либо вежливо скажите, что ответите позже. Очевидно, это тоже не касается urgent-кейсов, тут скорее про нашу always-on привычку, когда текущие рядовые обсуждения вяло продолжаются 24/7. Кстати, про культуру коммуникаций уже писал тут и тут.

4. Не тешьте себя иллюзиями, что вы успеете сделать ВСЁ. Этого не будет никогда. А если пытаться - вы себя просто загоните. Приоритизируйте важное. Остальным заполните пустоты в рабочее время. Планируйте и адаптируйтесь. Лучше вы хорошо выполните важную часть, чем как зомби будете хвататься за все подряд, и все будет валиться из рук.

5. Отбросьте культ достигаторства. Я не предлагаю спокойно работать с 10 до 18 и дальше хоть трава не расти. Но во-первых, нужно как минимум ценить умение работать по плану и без косяков (это уже дорогого стоит), а во-вторых, у каждого достижения должна быть своя цель и профит. Найти новый способ эффективно и элегантно решить проблему - круто. Превзойти ожидания и перевыполнить план по важным для компании показателям - супер! Запустить что-то полезное on-top - молодец! Поставить амбициозную цель, потому что мы хотим построить самый классный сервис - да. Но культ достижений ради достижений - не ок. Челленджите себя, зачем вы что-то делаете. Точно ли это достижение кому-то нужно?
1 097 просмотров · 58 реакций Открыть в Telegram · Открыть пост на сайте
Да будет свет! (теперь - точно)

Ранее мы остановились на поисках электрической рассыпухи - фишки, провода. Ушел примерно месяц, чтобы собрать это в 5 заказах из 3 магазинов и авито. Наконец, можно было приступить к сборке. Сначала, правда, пришлось немного восстановить надорванные проводки и закатать все в термоусадку в два слоя.

Потом нужно было припаяться к проводке автомобиля, чтобы дальше уже фары сели на фишки по красоте. До этого мне никогда не доводилось паять, поэтому я не знал, умею ли я это делать. Оказалось - не умею. Получалась ну полная ерунда - припой скатывался шариками и отваливался, вместо того, чтобы образовать хороший связующий слой. Пока мучался - думал, сейчас снова приедет Азат и поможет, покажет, как правильно. Приехал Азат - оказалось, он тоже не умеет паять. Зато владеет кунг-фу особо прочных скруток. И по сложившейся традиции - два слоя термоусадки сверху.

Отдельная боль была в поиске нужных проводов под каждый вид света. Проводка автомобиля настолько уколхожена, что найти сигнал габаритов слева так и не удалось, пришлось завести габариты на туманки. Ну да ладно. Осложнялась диагностика тем, что машина не ездила уже месяца полтора. И в очередной раунд прозвона сигнала мультиметром мы долго не понимали, почему на ближний свет идет 6 вольт, а не 12. Это же на габариты идет 6? Или там тоже должно быть 12? Ах да, это просто сел аккум. Пришлось подкидывать пускач, чтобы хотя бы найти провода с нужным сигналом.

Зато в конце мы были вознаграждены потрясным луком со свежими и чистыми "как-бы Hella Black" фарами. Мне кажется, выглядит бомбически. Но еще посмотрим на целостный вид, когда продвинемся дальше. Впереди еще немало преображений. #лёха_строит_бэху
704 просмотров · 16 реакций Открыть в Telegram · Открыть пост на сайте
Непал

Гастро-глобус на этой неделе остановился на Непале. Что вы знаете о Непале? Ну, это небольшая страна в Гималаях, где-то между Индией и Китаем. Там еще Эверест растет. Все?

Почти. Саму страну мы с Лёхой на глобусе, конечно, нашли, и там было очевидно, что почти вся страна лежит высоко в горах. Еще из википедии почерпнули, что на природные зоны страна делится не по широте, а по высоте. Что по сути это была yet another колония Англии. И что большинство непальцев - индуисты. Отдельно сын удивился с того, что добрая половина страны - неграмотные. Да, было непросто объяснить не по годам развитому и начитанному ребенку, как полстраны может не уметь читать и писать. Но в таком мире живем.

Еще дополнили нашу традицию просмотров фильмов, связанных со страной недели. В этот раз посмотрели "Эверест" 2015 года. Заодно закрыли долг за Италию просмотром "Неверостных приключений итальянцев в России". Долг по Австралии и Ливии пока на нас.

А что, собственно, по кухне? Там все довольно специфично. С одной стороны - похоже на смесь китайской и индийской - карри, рис, имбирь. Мясо, кстати, почти не едят, но это мы, пожалуй, проигнорируем. С другой - есть какая-то своя логика блюдообразования в соответствии со спецификой географии и историей страны. Наш рацион пополнился такими экспериментами:

- тхукпа - пряный суп с капустой, стручковой фасолью/горошком, имбирем, лапшой и курицей. Мне, если честно, не зашел. Домашним понравился.
- алу таматар - тушеный картофель с томатами и специями. Вкусно, но не слишком экзотично. У нас он сопровождал куриные бедра со шпинатом в сливках.
- момо - колоритные пельмешки, похожие на японские гёдза. У нас было два вида - с говядиной и со свининой и кимчи. В обжаренном виде - топчик.
- рис с курицей карри. Тут все понятно. Правда наш карри больше напоминал том-ям, ну да ладно, пойдет.

Итого - мушленовскую звезду не даем, чемоданы в Непал не пакуем (восхождение на Эверест - явно не наша цель).
758 просмотров · 17 реакций Открыть в Telegram · Открыть пост на сайте
Успех неизбежен

Ну как минимум - если вы правда этого хотите и все делаете правильно. Так что дело за малым - 1) правда этого хотеть, 2) все делать правильно. А дьявол, как всегда - в деталях.

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

Целью должно быть какое-то качественное изменение, какой-то норд-стар, в который вы верите. Лучше даже не просто верить, а быть уверенным (не путать с самоуверенностью). Вам должно нравиться делать хорошо, а плохо не делать. И не потому что так сказали, а потому что это ваша идеология.

Но в одиночку вы - песчинка в океане мироздания. Без команды ничего не выйдет. Нужно окружать себя правильными людьми. К этому тоже нужно прилагать усилия и искать людей, разделяющих вашу точку зрения. Людей подходящей формации. Которые с вами не только за деньги, но и за идею.

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

Тут важно все - от образования до ценностей. Про образование я уже разгонял тут. Вкратце - образование дает в первую очередь умение выстраивать логические цепочки и полезный навык "решалова". А ценности должны совпадать с вашими, бить в цели команды, быть когерентными стратегии. Иногда даже самый классный спец не фитится в команду из-за мисмэтча в ценностях.

И я искренне ценю, что в Лавке (как и в других командах Яндекса) меня окружают как раз такие люди. Мы любим свое дело и верим в него. Мы собираем классные команды и разделяем общие ценности. Так что, видимо, успех неизбежен.
867 просмотров · 28 реакций Открыть в Telegram · Открыть пост на сайте
Точность - это число повторений

Я эту фразу приписываю Аркадию Петровичу Цареградцеву. Как минимум, я ее впервые услышал от него. И полностью с этим согласен.

Нам частенько требуется выполнять какую-то работу, требующую высокой точности. И когда после первого раза не получается - есть соблазн опустить руки или начать оправдывать себя, что это нормально. Но на самом деле самый верный способ научиться выполнять работу точно - это наращивать число повторений.

Конечно, эти повторения должны перемежаться некоторой рефлексией и поиском точек роста. Но также для правильной организации этих повторений нужна хорошая самодисциплина и подходящие процессы. И им нужно уделять особое внимание. С первого раза, обычно, ни у кого ничего не получается. Так мы учились ходить и читать-писать. У нас был инструментарий (ходунки и азбуки-прописи) и процессы (заботливые мамы и чуткие педагоги).

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

Хочешь уметь хорошо планировать спринты - скрам тебе в помощь, и потребуется не один месяц, чтобы спринты начали сходиться.
Хочешь нормальное квартальное планирование - дашборды и гринлайты тебе в помощь, и потребуется не один квартал, чтобы научиться попадать в свои оценки.
Хочешь точно проезжать дрифт-конфиг по клипам - нужен большой накат, споттер и телеметрия, и это только в детстве было судейство "кто не развернулся - тот уже победил".

Точность - это число повторений.
905 просмотров · 15 реакций Открыть в Telegram · Открыть пост на сайте
Трое в лодке, не считая ИИ

Когда ИИ начал рисовать картины, я молчал: это же все баловство.
По мере развития ИИ, появилась шутка: "Нам говорили, что ИИ снимет с нас рутину и позволит людям заниматься более творческими задачами. В итоге как раз ИИ рисует картины, а посуду я все еще мою руками".

Когда люди начали бояться, что ИИ их заменит, я молчал: я в это не верил.
Потом пошла тема "ИИ нас всех заменит". Но на тот момент еще, вроде бы, не заменил.

Когда начался кризис gpu, я молчал: я не гамаю, а для работы мне гпу не нужен.
Потом начался кризис gpu-карточек, потому что все ушло на ллм. Сейчас, говорят, память люто подорожала. Но ее можно оптимизировать.

Когда они пришли за нашими ставками - заступиться за них было уже некому.
Но теперь ИИ пришел за нашими зарплатами и хэдкаунтами. Начинают встречаться пассажи типа "СЕО McKinsey рассказал, что в компании сейчас работают 60+ тыс. сотрудников: 40 тыс. человек (humans) и 25 тыс. ИИ-агентов (AI Agents)". ИИ-агентов он counts as “people” that Firm “employs” (считает наравне с другими нанятыми сотрудниками).

Вот мне интересно - они считают ИИ-агентов как сотрудников, потому что они уже стоят одинаково? Или потому что польза сопоставима? Или просто чтобы красиво сложить численность?

ИИ - это же, вроде как, про эффективность. Но если ИИ-employee окажется дороже живых людей, потому что ему нужно больше дорогостоящего железа, где мы окажемся? Начнем увольнять агентов и заменять их более дешевой рабочей силой кожаных мешков?

В общем, какая-то нездоровая история. На мой взгляд, лучше отделять мух от котлет. Капекс (компьют) - отдельно, опекс (фот) - отдельно. Инструменты - отдельно, мозги - отдельно. Иначе докатимся до того, что, не разобравшись, поставим куда-то ИИ-онли команду, а потом будем удивляться результатам.
743 просмотров · 28 реакций Открыть в Telegram · Открыть пост на сайте
Да будет свет! (на самом деле, пока нет)

В прошлой серии было про задние фонари, но передние еще сильнее просились под замену. Почти кричали своими надписями "сделано в России", потому что часть компонентов были позаимствованы то ли у 2106, то ли у нивы, то ли у уазика. Плюс там были приколхожены какие-то неуместные "ангельские глазки" и лишние туманки за ноздрями. Вообще не тот подход. Посему были заказаны новые фары "под оригинал", а-ля Hella Black.

Сняли ноздри, очки, открутили фары, а там - мама дорогая - месиво проводов на скрутках, спайках и изоленте. Куча лишней проводки, какие-то посторонние реле для сигналки, какие-то провода брошены сразу на контакт лампочки, где-то роль патрона выполняет сантехническая труба. И ни одной фишки. А новые фары то, по штату, должны подключаться тремя фишками. Быстро стало понятно, что тут вам не плаг-н-плей.

Полез искать фишки - а с ними натуральный дефицит. Ждать долго, замен нет, на досках нет. И даже когда часть фишек до меня доехала, обнаружился еще один ошеломляющий нюанс - фишки приходят пустые. Без контактной группы. Просто голый пластиковый разъем. А вот проводки с мама-разъемами нужно искать отдельно. И вот их уже вообще почти не найти. Даже в европе (сербский бмв-чат пытался помочь, но тщетно)! Спас случай - на просторах авито нашлось объявление "какая-то проводка на какую-то бмв", где на фото была рандомная некатегоризированная рассыпуха, среди которой я заметил нужные проводочки. Хоть и в весьма грустном состоянии.

Что было дальше - расскажу в следующий раз. Машина надолго осталась "без лица". Но ничего, сдюжим! А пока еще отмечу интересный кейс. После начала проекта #лёха_строит_бэху мне иногда писали подписчики с шуточной просьбой их тоже усыновить. Но в каждой шутке - лишь доля шутки, и один из подписчиков на серьезном предложил вписаться в проект - просто приехать и помочь что-то поковырять, благо он тоже бмвшник-некровод. В общем, спасибо Азату за помощь - вместе и быстрее, и веселее!
588 просмотров · 19 реакций Открыть в Telegram · Открыть пост на сайте
La vita è troppo breve per mangiare male

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

На глобусе страна была найдена по надписи Рим и всем известной форме сапога. А википедия нам поведала, что эта небольшая страна подалила нам множество писателей, композиторов, архитекторов и художников эпохи возрождения. А еще что местность там сейсмически активна и есть вулканы (как потухшие, так и действующие). Хотел рассказать сыну про Муссолини, но жена почему-то была против.

Кухня Италии, пожалуй, в представлении не нуждается. Но тем интересней было поискать и в ней что-то новое для себя.

• Открыли неделю супом из чечевицы и томатов с пряностями. Легкий, в меру острый суп с ярким вкусом поедается легко и незаметно. Лайк.
• Австралийские креветки, попавшие на рубеж недель разных стран, сопровождались соусом песто и цуккини с шапочкой из пармезана. Тоже хорошо.
Паста аматричиана в Италии считается самой базовой - паста, бекон, томаты - но у нас не так популярна. А зря, вполне беллиссимо.
• И, конечно, пицца. Правда, не совсем обычная - в качестве основы взят армянский лаваш (в общем-то армяне и итальянцы во многом похожи), а авторский форм-фактор рулетиками добавляет колорита. Внутри - три вида - чорризо, мортаделла и маринованые шампиньоны, карпаччо с мариноваными огурчиками, моцареллой и пармезаном. Перфекто.
• Ну а сын запитонил коробочку рафаэлло, потому что компания ферреро - тоже итальянская. Попробуй тут запрети.
Чао!
687 просмотров · 16 реакций Открыть в Telegram · Открыть пост на сайте
Когнитивная ловушка

Недавно слышал фразу: "Я в ответе за то, что сказал, а не за то, как вы это поняли". Мысль простая, и даже почти умная, вот только не всегда правильная. Например, в профессии руководителя, да и любого публичного лица, бремя особенностей восприятия ваших слов тоже ложится на вас. Ну или потом все равно придется разгребать последствия.

И это касается не только слов, но и действий. Точнее, восприятия и оценочных суждений этих действий. Разберемся на конкретном примере. Предположим, вы тимлид. И одна из ваших перманентных обязанностей - это давать сотрудникам обратную связь. И вот вы ее даете - иногда хвалите, иногда указываете на точки роста - притом даже регулярно. А потом в опросе самочувствия команды ваши ребята указывают, что не получают обратную связь. И вы можете сколько угодно доказывать обратное, бить себя пяткой в грудь и быть тысячу раз правым. Но если люди сказали, что не получали, значит не получали, и вы не правы. И не потому что вы плохой тимлид или давали мало обратной связи, просто значит нужно делать это как-то иначе.

И так с любыми действиями, целью которых (единственной или сопутствующей) является как раз восприятие или оценочное суждение. Как бы вы не оценивали свои действия сами, каковыми ни были они в объективной реальности, целиться нужно в правильное субъективное восприятие адресатов этих действий. И, при необходимости, менять тактику до достижения желаемого эффекта.

Тут как с телевизором. Давняя поговорка - "если по ТВ сказали так-то, значит так и есть". Потому что критическая масса аудитории услышит и не усомнится, и фиг вы когда-либо докажете кому-то обратное. Иногда приходится работать с искаженным восприятием, потому что бороться с искажениями выйдет дороже.

Так что, порой, я в ответе за то, как вы меня поняли. Но только не в этом канале, тут я с себя всякую ответственность снимаю. В конце концов, предъявлять что-то ворчливому деду - занятие неблагодарное.
700 просмотров · 31 реакций Открыть в Telegram · Открыть пост на сайте
Стой, стрелять буду

Думаю, по этому каналу заметно, что ко всяким новомодным ИИ-штукам у меня есть некоторый скепсис. Доверять искусственному интеллекту в мишн-критикал вопросах без перепроверки пока не стоит. Про попытки засунуть ИИ в каждый утюг, просто чтобы хайпануть, я вообще молчу, это просто баловство и надувательство. Я тут в предложке маркета видел кофемолку с ИИ-контролем помола. Рили? Туда то зачем? Ну да ладно.

Но ИИ потихоньку начинает проникать на более прикладной уровень, и уже не в качестве абстрактной модной технологии, а как конкретное решение насущных задач. И это уже больше похоже на будущее. Приведу пару примеров.

Первый пример, который меня впечатлил еще несколько лет назад, это робот-пылесос, который через камеру распознает "эксцессы" домашних животных, чтобы не размазывать их по ковру (кстати, на днях пожалел, что мой так не умеет). Да, это не дженерик-ИИ, а просто CV (computer vision) плюс простой алгоритм. Но это был шаг в нужную сторону.

Второй пример - появившаяся в конце прошлого года умная камера от Яндекса, которая умеет выполнять уже более сложные сценарии. По сути это развитие первого примера, но к CV еще прикручена более гибкая логика триггеров и действий. Ей можно задать сценарий "Если кошка начинает грызть кактус, произнести фразу "Брысь!"". Или любые другие сценарии, завязанные на умные устройства в доме. Система через гпт/ллм понимает, как и на что нужно настроить триггер, а дальше уже CV сравнивает сцены с камеры, чтобы обнаружить его. Из этого собрали VLM-модель, и тут уже вау-эффект поболе.

Мне эта фишка понравилась. Я аж задумался, какие сценарии я бы задал этой камере. Но пока не придумал. Моя кошка окриков не боится. Разве что отправлять за ней в погоню робот-пылесос, к нему она относится с почтительной опаской. Может, у вас есть мысли?
678 просмотров · 11 реакций Открыть в Telegram · Открыть пост на сайте
Как зайцу - стопсигнал

Очевидно, к 42-му году жизни автомобиля оптика уже изрядно уставшая. Мутная, выцветшая, морально устаревшая. К текущему моменту удалось заменить задние фонари. Новые - слегка затемненные, нарядные, яркие - благородно заняли свое место в задней панели без особых приключений. Хотя и тут не обошлось без подвохов.

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

Также было подмечено, что работать из багажника (а фонарь крепится изнутри) легче Лехе. Мне скручиваться в три погибели было не с руки, а сыну там было вполне уютно. Да и для наживления мелких 8-мм гаечек его пальцы подходят лучше моих.

Результат - налицо. Точнее, на заднюю часть. Но все равно красиво. #лёха_строит_бэху
714 просмотров · 23 реакций Открыть в Telegram · Открыть пост на сайте
ʁиvɐdɯɔʚⱯ

Мы продолжаем изучать гастро-географию, и на этой неделе выпала Австралия.

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

Потому что какой-то своей ярковыраженной гастрокультуры там почти нет. Изначально кухня Австралии, по понятным причинам, формировалась из английской. Потом туда понаехали из самых разных стран и, как в любой стране нового света, получился фьюжн. В последнее время там, говорят, сильно увлеклись азиатской кухней, но своего придумали немного.

Да, какой-то локальный колорит все же присутствует. Могут и кенгуру зажарить, и крокодила схомячить. Но почему-то мяса кенгуру не нашлось ни в Лавке, ни в Еде. Однако, жене удалось наскрести каких-то местных рецептов и получилось следующее.

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

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

В-третьих, на выходных нас ожидает что-то из креветок. Что именно - не знаю, просто видел, что креветки появились в морозилке. Оно и немудрено, когда у тебя страна со всех сторон окружена океанами. Да и креветки как ни приготовь - будет классно. Но что выйдет - вы так и не узнаете, потому что на следующей неделе будет уже новая страна, новые локал спешиэлитиз и новые факты о мире. Стэй тьюнд.
846 просмотров · 20 реакций Открыть в Telegram · Открыть пост на сайте
Подарок на новый год

Не знаю, что Дедушка Мороз принес под елку вам, но я своему подарку подивился знатно. А получил я фикс ранее зарепорченного бага в опенсорсной либе (видимо, хорошо себя вел). Это было совсем не то письмо, которое я ожидал увидеть в почте на праздниках. Даже сначала подумал, что это какой-то спам. Потому что ждал я этого ... 14 лет!

Летом 2012 года, когда я работал бекенд-разработчиком в Яндекс Почте, делал я одну тасочку про отображение приаттаченных картинок в веб-интерфейсе почты. Я даже нашел тикет в jira (да-да, тогда еще jira, сейчас он смигрирован в трекер) - WMI-303 (WMI == Web Mail Interface). Задача звучала так: "Разворачивать картинки согласно EXIF". И при решении этой задачи мне нужно было перезаписать данные об ориентации изображения, чтобы уже повернутая картинка имела "нормальную" ориентацию при скачивании из браузера.

Однако, при разработке я столкнулся с багом в библиотеке GraphicsMagick, которую я использовал для работы с жпегами - судя по моему комментарию к тикету, там "расходятся сишная реализация библиотеки и плюсовый интерфейс". Ну мы не гордые, мы поправим. Пара строк с приведением типов между C и C++ и полсотни строк с магией битовых масок и оффсетов. Я отправил фикс в опен-сорс, но его реджектнули (почему - уже не вспомню, а в тикет не написал). Поэтому я локально запатчил GraphicsMagick, админы его пересобрали и разложили, проблема ушла. Но ишью все же завел.

И вот, спустя почти 14 лет, мейнтейнер либы сообщает, что проблема исправлена! Некоторую нерасторопность он объясняет тем, что, мол, тяжело менять код, от которого ожидают, что он будет работать как раньше. Понимаю. Но лучше поздно, чем никогда. Или нет?

P.S. Если меня читает кто-то из Яндекс Почты - осторожней обновляйте GraphicsMagick, может что-то отвалиться на вебаттачах.
767 просмотров · 27 реакций Открыть в Telegram · Открыть пост на сайте
Inner-source

Представьте себе две команды разработки. И ребятам из одной частенько нужны изменения в коде второй для решения своих бизнес-задач. Как водится, есть два варианта - либо "заказывать" разработку у оунеров, либо контрибьютить самим.

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

Остается второй вариант - контрибьютить к соседям. Тебе надо - ты и делай. И вроде все понятно. Но всегда начинаются какие-то тёрки. Первая команда приносит какую-то фигню в PR-ах, вторая долго ревьювит и не хочет аппрувить. Переделай. Нет, так тут не принято. А вы вообще нам тесты сломали. В общем, конфликт. А мы конликты не любим.

На помощь приходит методология inner-source, которая фиксирует пререквизиты, процесс и обязательства сторон в более-менее четкий контракт. Эдакие правила игры, которые, если обе стороны договорились соблюдать, снижают градус полемики вокруг "гостевых" изменений в чужом монастыре. Набор практик, направленных на ослабление кордонов и призванных повысить гибкость и эффективность нашей работы. В зрелых командах инженерная культура должна позволять кодить у соседей в мирном и продуктивном ключе.

Поделюсь некоторыми правилами, которые были написаны кровью в одной из наших команд пару лет назад. Надеюсь, будет полезно. И можете в комментарии докинуть свои пункты, если у вас такие принципы есть и работают.

1. Тот, кто хочет внести какие-то изменения, должен перед этим рассказать свою задумку мейнтейнерам и согласовать примерный способ решения задачи.
2. У команды, в которую часто приходят иннер-сорсить, должна быть краткая и понятная документация на сервис, чтобы гостевой разработчик лучше понимал специфику сервиса, и как его случайно не сломать.
3. Должен быть документ, коротко и понятно описывающий принятые в конкретной команде подходы и традиции - от код-стайла до отношения к слоям абстракции - во избежание комментариев на код-ревью в духе "у нас тут так не принято", когда весь код уже написан.
4. Существует и выполняется разумный SLA на ревью (притом в каждой итерации, если их >1). Зеркально: автор ПР-а вносит требуемые правки достаточно оперативно, чтобы не размывать фокус ревьювера (спустя 2 недели ревьюверу трудно вспомнить, о чем был ПР).
5. В сервисе должно быть высокое покрытие тестами (юниты, авто, любые не-ручные), чтобы иметь достаточную степень уверенности в безопасности прошедших тесты правок. Количество флапов и ситуаций "а, да, этот тест сломан, не обращай внимание" должно быть околонулевым.
6. Если одна и та же гостевая команда часто вносит правки в сервис, в ней можно выбрать trusted-коммитера. Его коммиты можно ревьювить не так придирчиво (то есть как от своих), и он сам может ревьювить и аппрувить коммиты от других участников гостевой команды.
7. Гость, в свою очередь, в полной мере отвечает за качество своего коммита, стабильность релиза, возможные багфиксы, поддержку этого кода, как за свой сервис. Соблюдает подходы из п.3, разбирается в специфике из п.2, следит за тестами из п.5 и добавляет тесты на свой код.
8. Любые разногласия устраняются в конструктивном ключе, без лишних препонов. В случае необходимости обсуждаются лично или с эскалацией до лидов. Главное - помнить, что мы тут одно дело делаем, а работаем - в коллективе.
720 просмотров · 24 реакций Открыть в Telegram · Открыть пост на сайте
С иголочки одет

Наконец удалось забрать сиденья с перешива. Настал момент установки. И, вроде, невелика наука - 4 гайки и всех делов. Но нет, возиться пришлось несколько часов, умотавшись аки пёс.

Сначала вне машины синхронизировать салазки, чтобы были в одном положении. Потом попасть, чтобы все дырки "стреляли". Потом насадить салазки на шпильки так, чтобы стояло ровно, а шпильки торчали достаточно для наживления гаек (тут пришлось прибегнуть к умеренному кувалдингу). И осложняется это все тем, что ты не имеешь одновременного доступа ко всем отверстиям. Подвинул сидушку на салазках назад - можешь подобраться к передним отверстиям. Подвинул вперед - теперь к задним. Снова назад, потому что спереди соскочило. И так далее. А незакрепленное сиденье по салазкам ездить отказывается... Ну и для доступа к гайкам нужно особое сочетание рожкового ключа, торцевых головок, карданчика и трещоток разных размеров, потому что что-то постоянно куда-то упирается и не лезет. Ах да, пришлось еще переставить замки ремней от прежних кресел, потому что новые были без оных.

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

В задним диваном все проще - 2 крюка, 2 защелки и готово. Но и там был подвох. Нужно было установить замки задних ремней. Там два болта под разные сиденья. Выкрутил один, закрепил замки, закручиваю - не держит. Ну конечно - сгнила резьба и болт прокручивается. Ладно, средний ремень нам не нужен, крепим во второе место. Тут держит. Ура! Но вот незадача - пряжки не подходят к замкам... Видать, не та версия. Что ж, значит, задние ремки будут пока носить декоративный характер. Все равно толпой мы на бэхе ездить не планируем.

Зато результат, кажется, получился отменный. Кресла теперь аутентичные (ранее стояли какие-то левые от е90, их продал на авито, притом спрос на них оказался бешеный - мне за день написало и позвонило 15 человек) и в нарядной ткани. Это что-то среднее между оригинальным motorsport-исполнением и ваговской gti-клеткой. Мне нравится. #лёха_строит_бэху
666 просмотров · 25 реакций Открыть в Telegram · Открыть пост на сайте