Фёдор Борщёв

Заметки с тегом «Продуктивность»

Рассказываю, как постичь дзен — перестать страдать и начать много делать. Поскольку это невозможно — просто делюсь советами, как за меньшее время успеть больше.

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

В маленьком вебе (надеюсь, вы его читаете) можно найти целый диапазон мнений про 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.

Перестал вести учёт расходов

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

Причина в том, что я за 9 лет не принял ни одного решения на основе данных о расходах. Что толку знать, что каждый месяц я трачу на жильё 1500 евро, если принимая решение об ипотеке, я и так могу легко посчитать стоимость всех арендных платежей? Что изменится от того, что в прошлом месяце я потратил на еду 700 евро вместо 400? Зачем знать, сколько обходится автомобиль, если идиоту понятно, что такси в Москве стоит дешевле?

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

Но это же неправда! Завтра могут заболеть родственники, центробанк может опустить ставку, я захочу сделать идиотски дорогой подарок супруге, сосед сверху зальёт квартиру, или я сам залью квартиру соседу снизу. Контроля над этим у меня нет.

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

Ищем, куда девается время программистов

В октябре 2024 года прочитал в Алматы короткий вводный доклад о том, чем полезен DevEx, и как он вообще работает. Если никогда не слышали — посмотрите, если слышали — посмотрите школьный курс.

GPT-ассистенты мешают джунам учиться

Всё чаще встречаю джунов, которые плотно сидят на GPT-ассистентах, типа Copilot или Codeium. Кажется у каждой крупной корпорации, связанной с программированием появляется свой робот-помощник. Спрашиваешь такого робота «как добавить JS в Джанго-алминку?» и получаешь готовый код, который скорее всего даже заработает. Сразу чувствуешь, что будущее наступило.

Только вот будущее это — не для тех, кто бездумно пользуется такими ассистентами. Довольно мало ценности в том, чтобы переводить просьбы бизнеса в вопросы роботу — в какой-то момент такой посредник станет просто не нужен.

Профессионального роста от такого программирования тоже немного. Самое главное, что должен делать джун — это учиться: разбираться, как устроены библиотеки и как мыслят их авторы, учить языки, учиться учиться в конце концов. В общем, планомерно нарабатывать свои 10 000 часов за счёт работодателя.

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

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

Day One → Obsidian

Несколько месяцев назад я решил отказаться от Day One, которым пользовался 5 лет для ведения личного дневника. Причин было несколько:

  • Невозможные тормоза. Дело тут даже не в электроне, или на чём он там написан: кажется Day One — это просто плохой софт. Удивляюсь, откуда у разработчиков берётся энергия, чтобы писать столько кода, чтобы тормозило даже на новом макбуке, где давно уже даже ноушен летает.
  • Фокус на метаданных. Day One с самого начала обвешивает привычку писать дневник всякими ненужными вещами, которые не представляют интереса уже через день — предлагает логать погоду, место и даже музыку, которую я слушаю. Чтобы ненужных данных было ещё больше, Day One ломает паттерн, привычный людям уже несколько сотен лет — вместо обычных ежедневных заметок, вас заставляют писать по одному посту на каждое событие. Добавил фотку — пост, записал мысль — ещё пост.
  • Переусложнённый формат хранения. Возможно следствие предыдущего пункта, но внутри у Day One довольно сложный формат хранения данных. Вроде бы и маркдаун, но он зарыт внутри довольно сложного JSON, который непонятно как парсить. То есть я как бы владею собственными данными, но вот считать их без Day One я скорее всего не смогу. А если и смогу сегодня — никто не гарантирует, что я смогу повторить это через 10 лет, когда формат переживёт ещё 3 инкарнации, а контента в дневнике станет в 4 раза больше.

Для замены Day One я выбрал Obsidian — он показался мне самым надёжным из всех инструментов для ведения заметок. Самое главное преимущество Obsidian перед специализированным софтом — все данные хранятся в виде MD-файлов на диске. То есть я владею своими данными, бекаплю их как хочу, и они никогда и никуда от меня не денутся.

От встроенной синхронизации решил отказаться, потому что iCloud работает быстрее, а на экосистеме Apple я сижу давно и плотно. Так же пришлось почистить слегка перегруженный интерфейс — помогло, что Obsidian проектировали как инструмент для программистов. Довольно легко мне удалось убрать всё лишнее — отключить штатные плагины вроде Canvas или записи аудио, попрятать ненужные детали интерфейса при помощи Hider.

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

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

Старее