Фёдор Борщёв

Вам не нужно на фронтир

В маленьком вебе (надеюсь, вы его читаете) можно найти целый диапазон мнений про AI-хайп — от отрицания до полного поклонения (автор последнего — целый автор Redis). В Х (его вы, надеюсь, не читаете) топ-менеджеры AI-компаний жалуются, как ловят FOMO от скорости появления новых технологий, которые их же компании производят. В общем хайп-поезд всё ещё едет.

Боязнь остаться за бортом характерна для нашей отрасли. И оправдана — если условный сисадмин с нормальным для рынка уровнем знаний в 2016-2018 годах пропустил появление k8s и облачных технологий, зарплата у него не вырастет, пока он не докачает знания до новой планки. Думаю, каждый вспомнит такие революции в своём стеке: фронтендеры вспомнят появление реактивных компонентов, vue, svelte. Бекендеры вспомнят graphql и микросервисы. Деды вспомнят AJAX и MVC. Все вместе вспомнят блокчейн.

Остаться за бортом революции — страшно. Есть три способа справится с этим страхом. Кто-то бросает все силы, чтобы внедрить новое, сабмитит разработчикам баги, мирится с детскими болезнями. Это ранние пташки. Кто-то отрицает всё новое («выросло поколение, которое не может писать без веб-фреймворков») — как луддиты. А кто-то закрывает свои рабочие задачи тем, что есть, изучая новые технологии только тогда, когда от этого уже никуда не деться — как обычные потребители.

Стратегия обычных потребителей — самая выгодная: пока они доходят до новой технологии, она успевает достаточно созреть — обзавестись документацией, встроиться в экосистему, вылечить детские болячки. На этом этапе цена изучения технологии гораздо ниже — сравните, к примеру, первую версию документации react, которая предлагала комплилировать JSX прямо в браузере и современный next.js, на котором собрать сайт можно за 10 минут без помощников.

AI, хоть и отличается скоростью от предыдущих революций, проходит тот же самый путь: какие-то части уже созрели (Cursor, агенты), какие-то — пока на ранней стадии (агенты, которые пишут агентов). А какие-то части уже умерли, или потихоньку стагнируют. Если следить за всеми этими новостями — на работу не останется времени.

Как поступать с AI, придерживая стратегии обычного потребителя? За пару дней подобрать себе удобный зрелый инструмент (cursor/claude cli/opencode/figma), и, применив закон Парето к своему FOMO, просто решать свои рабочие задачи. А если ещё какие-то части AI-инструментария дозреют до того, чтобы заслужить вашего внимания — вы наверняка об этом узнаете, как сисадмины узнали о k8s.

Как смотреть сериалы

Не люблю сериалы, но смотрю.

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

Ритм происходящего в сериалах обычно довольно медленный, и чтобы потребитель не заскучал (а ещё лучше — включил следующую серию), принято подвешивать неразрешённость — ближе к концу серии происходит сюжетный поворот, который вызывает дофаминовую волну: на свадьбе случается массовое убийство, главный герой спит с начальницей, сериал про скорую помощь превращается в сериал про боевой госпиталь и т.д.

К сожалению, совсем не смотреть сериалы у меня не получается — иногда в этом жанре снимают очень крутые вещи: к примеру я в полном восторге от недавнего Adolescence. Чтобы не подсаживаться, изобрёл лайфак — никогда не досматривать серии до конца, а отрываться где-то в середине. Обычно середина — самое скучное время, в которое ничего не происходит и дофамин не выделяется — самое время перейти с ритма сериала на свой собственный. В следующий раз, когда сажусь смотреть — сериальный хук приходится не на конец серии, а на середину, так что соблазн открыть следующую серию станет не таким уж и соблазном — я просто досмотриваю до скучного места и опять оторываюсь.

Не резать косты

Когда в компании начинаются проблемы с деньгами, большинство менеджеров, которых я знаю (включая меня) прямо-таки тянет «срезать косты»: разобраться, на что компания тратит деньги и как это уменьшить.

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

Самый большой минус в резке костов — это самообман. Допустим, я придумал, как сэкономить 500 баксов на SaaS-ах, перенеся часть к себе — и (кроме геморроя в эксплуатации), получаю чувство, что прожил день не зря: это ж половина месячной аренды квартиры! Чувство, к сожалению, ложное — тяжело представить бизнес, для которого плюс-минус 500 баксов имеют решающее значение.

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

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

Форма, функция и красота

В «Коммуникации Систем» мы много говорим о понятиях system form и system function. Форма — это как система выглядит: на какие модули разбита, с какими данными работает. Функция — то, что система делает: как реагирует на ввод, что отдаёт на вывод.

Форма и функция выходят далеко за рамки IT и проектирования. Это, скорее, про красоту. Вещи, в которых форма подчинена функции — красивы. Вещи, в которых функция размыта, а форма сложна — некрасивы и неприятны.

К примеру макбуки, Dell бизнес-серий, дорогие thinkpad — красивы: дают много возможностей владельцу и не отвлекают формой. Игровые ноутбуки и всякие дешёвые асусы — некрасиво, потому что их главная функция — блистать на полке в магазине. Есть и исключение — Framework: вроде бы и красивые штуки, но вот функция, которую они выполняют, — быть ремонтопригодный в домашних условиях, — вряд ли понадобится кому-то в здравом уме.

А сколько же на улице некрасивых машин! Дорогие немцы, в большинстве своём — некрасивы: функции размыты, а форма требует постоянного обслуживания. Исключение — разве что Майбахи, заточенные под перевозку одного пассажира, или BMW M-серии, сделаные для кольца: с такими функциями можно и хрупкую форму потерпеть. Маленькие SUV, которыми забит рынок — некрасивы: форма как у дешёвых ноутбуков, пригодна только стоять в автосалоне и говорить неискушённому потребителю «не думай, купи меня, я сгожусь на любой случай жизни».

Чувство прекрасного отдыхает на утилитарных пикапах вроде Toyota Tundra или том, что в штатах называют «траками»: они много возят, когда надо — быстро едут, а простое шасси и атмосферный мотор будут хоть 20 лет выполнять свою функцию. Очень красивы велосипеды на которых ездят курьеры: быстрые, лёгкие, ничего лишнего.

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

Форма эволюционирует вместе с функцией. К примеру Медиум когда-то был отличным средством для публикации лонгридов, а в процессе эволюции превратился в пейвольную помойку — очевидно, новая форма стала более выгодна владельцам. Или взять любой продукт Яндекса — почти везде его функция со временем перестаёт интересовать владельцев. Так навигатор превратился в тормозные «карты», а сервисы доставки еды и такси превратились в мигающий попапами и требующий кучи лишних кликов Yandex Go. Вообще, «экосистема» это что-то на шейрхолдерском, а не на пользовательском.

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

Как не превратиться из хорошего программиста в плохого менеджера

Выступление с Saint Teamlead Conf 2024 — рассказываю о двух профессиональных путях. В бюро их называют «Маги» и «Полководцы», мы в школе используем метафоры «Хакеры» и «Лидеры»:

Старее