Стратегирование 2025-W09

< Предыдущая | Следующая >


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


Рефлексия по прошедшей неделе

  • Всего учтено времени: 33 hrs, из них инвестированное время - 1 hr 10 mins, а время на важные задачи: 10 hrs 3 mins .
  • Созданныe рабочие продукты:
    • Основной рабочий проект:
      • написал Работающий программный код по нескольким задачам, на этой неделе были интересные и довольно запутанные инфраструктурные штуки, вроде возможности настраивать заглушки на тестовом стенде индивидуально для каждого пользователя.
    • Постановка практик саморазвития
      • Пополнил Список неудовлетворенностей. Решил, что сортировать их буду по убыванию силы эмоции, для этого пришлось как-то навскидку сравнительно их оценить. Не факт, что получилось адекватно текущей реальности, но первая тройка вроде “на месте”.
      • Составил и опубликовал Стратегию на неделю 08.
      • Составил подробный План работ на первые три дня недели, а дальше “запал пропал”.
      • Пробовал подводить Итоги дня в письменной форме, но пока что не пошло.
    • Экзокортекс для учета питания
      • Промоделировал предметную область в графовой БД Neo4J, получил модель учета питания и скрипт создания тестовых данных
    • Развитие экзокортекса
      • Настроил Аналитические отчеты по практике Инвестирование и учет времени, чтобы отслеживать прогресс в достижении уровня “Умение”
  • Мысли и наблюдения:
    • Провал планирования. С энтузиазмом взялся за составление плана работ, расписал блоки времени на первые три дня (среда-пятница). План, конечно же, “рассыпался” в первый же день, но я вроде как был к этом готов и гибко подстраивался. Но потом пришли выходные, которые прошли без плана и без работы/обучения (судя по статистике учтенного времени), и к началу следующей недели я подошел уже безо всякого желания что-либо планировать.
    • Снижение объема инвестиций времени. На прошлой неделе я закончил чтение и моделирование по курсу “Практики саморазвития” и на этом все мое обучение / инвестирование времени практически закончилось. Так я уровень “Умение” не получу. Да и вообще, за последние 7 недель я только один раз вышел на объем инвестированного времени 7 часов за неделю, а для уровня “Умение” нужно не менее 10 часов.
    • Кайф от работы. Потоковые переживания, удовольствие от процесса работы над задачами программирования. Не факт, что результат по-настоящему хорош :slight_smile: но поставленные цели достигнуты, и я кайфовал в процессе их достижения.

Неудовлетворенности

  • Сформулировал неудовлетворенность Невнятные выходные без плана, нужно ее проработать, как минимум выдвинуть гипотезу по устранению. Собрал в Coda аналитический отчет, показывающий, во сколько раз количество учтенного времени в рабочие дни больше количества в выходные. Есть метрика (датчик), теперь нужно искать способ влияния на нее (актуатор). Целевое значение метрики пока неясно, но понятно желаемое направление - уменьшать ее значение (для справки - на прошедшей неделе это 6.8).
  • Снижение инвестиций времени - тоже вполне себе неудовлетворенность: проблема (как расхождение желаемого и действительного) есть, и я по этому поводу ощущаю беспокойство, разочарование и уныние. Тоже возьму в детальную проработку на неделе, но уже сейчас с гипотезами все понятно - нужно начать читать полезный нон-фикшн и, возможно, пойти дальше по программе ШСМ. Метрика тоже есть, инвестированное время учитываю, на прошедшей неделе это всего час с хвостиком. Целевое значение метрики тоже есть, это 10 часов в неделю. Нужны конкретные задачи и работы в плане.

Проекты

  • В рамках проекта Постановка практик саморазвития собираюсь и дальше работать с практикой Инвестирование и учет времени. Здесь у меня есть как минимум задачи по формированию списка литературы для медленного чтения (и собственно чтения) и по формированию плана дальнейшего обучения.
    • Бюджет - 7 часов, большую его часть нужно инвестировать, выделил блок времени на медленное чтение по утрам, выбрал книгу This is strategy как потенциально полезную для стратегирования.
  • Отменил проект Самописная графовая QSDB, так как решил, что лучше сначала начать делать (учитывать питание, время и финансы) на основе имеющихся реализаций, чем неопределенно долгое время проектировать и создавать инфраструктуру. Требований-то внятных нет, так что надо сначала пробовать, а там будет ясно, чего мне не хватает в имеющихся реализациях БД. Данные (для сохранности) выгрузить в текстовый формат я и из Neo4J смогу.
  • Это разблокировало проект Экзокортекс для учета питания, и он поднялся в списке приоритетных на первое место. На неделе получилось продуктивно по нему поработать: я сформировал модель учета питания и реализовал ее прототип в Neo4J. Запрос, собирающий сводный отчет по питанию тоже почти готов, осталась только агрегация по датам.В этом проекте остаются еще задачи по моделированию бюджета питания (с точки зрения пищевой/энергетической ценности) и по созданию хоть какого-то UI для ввода данных и получения аналитических отчетов.
    • Бюджет - 7 часов, на уровне прошлой недели.
  • Основной рабочий проект. Тут есть интересные задачи по гибкой настройке заглушек прямо в рантайме плюс написание автоматизированных приемочных тестов по пропущенным пользовательским сценариям, которые мы восстановили на прошлой неделе. Здесь же, скорее всего, будут инвестиции в изучение use-cases 3.0.
    • Бюджет - 11 часов, на уровне прошлой недели. 6 часов на рантайм-настройку заглушек, 3 часа на автотесты пропущенных сценариев, 2 часа на срочные работы.

Задачи по приоритетным проектам

  1. Постановка практик саморазвития
    • Чтение This is strategy (инвестирую время, практикую медленное чтение, получаю новую информацию для стратегирования)
    • Составление списка литературы для медленного чтения
  2. Экзокортекс для учета питания
    • Моделирование бюджета питания
    • Разработка UI для ввода данных (бюджет, блюда, ингредиенты, состав, приемы пищи)
    • Разработка UI для аналитических отчетов
  3. Основной рабочий проект
    • Реализовать возможность в рантайме загружать свои ответы для заглушек.
    • Автоматические тесты на пропущенные пользовательские сценарии
    • Изучение use-cases 3.0

26 Февраля, среда

Созданные в течение дня рабочие продукты:

  • Стратегия на неделю - главный результат дня
  • План работ на остаток рабочей недели

Общий итог:

  • Запланированных работ по основному рабочему проекту оказалось недостаточно для получения желаемых результатов. Задача оказалась объемнее и сложнее, это в принципе нормально для историй с рефакторингом - заранее неизвестно, где и что именно придется изменять. К тому же у меня есть пунктик насчет отвлечений на косвенно относящиеся к основной задаче изменения - за этим нужно будет последить особо. Тем не менее, промежуточные результаты есть, процесс идет, изменения вносим, код продолжает стабильно работать.
  • Снова начал читать художественную литературу перед сном. 20-30 минут расслабленного чтения. Рассчитываю за неделю прочитать таким образом “Королеву Ойкумены” Г.Л.Олди.
  • Вспомнил штук пять мелких дел, часть из которых нужно, а часть - хотелось бы завершить до конца недели. Включил в план, но без блоков времени, т.к. они должны быть совсем небольшими.

27 Февраля, четверг

Учтено времени: 7 hrs 34 mins, из них инвестировано: 0 hrs 37 mins.

В целом очень доволен результатом дня, потому что удалось выполнить все запланированные дела (в том числе 3 мелких дела, о которых вспомнил вчера), получить все запланированные рабочие продукты, преимущественно по Основному рабочему проекту.

Главная практика дня - Парное программирование, учел 4 часа 40 минут, реализовал вместе с напарником функциональность индивидуальной настройки заглушки мастер-системы прямо в рантайме. Это должно сильно облегчить жизнь фронт-разработчикам и тестировщикам.

Основная задача рабочего проекта выполнена, теперь можно сосредоточиться на проекте Экзокортекс для учета питания. В пятницу планирую смоделировать бюджет питания в графовой БД и выбрать (и может быть даже начать реализовывать) способ создания UI для ввода данных. Запланировал на это минимум 4,5 часа.

28 февраля, пятница

Учтено времени: 5 hrs 49 mins, из них инвестировано: 0 hrs 47 mins

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

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

Законченные рабочие продукты:

  • Дашборд по результатам прошедшего дня - чтобы ускорить подготовку таких комментариев-отчетов к стратегии.
  • Настроенная русская озвучка для Tropico 3 - потому что ностальгирую :slight_smile: хочу какое-то время поиграть в эту веселую игру.

Дашборд по результатам дня показывает явное падение ощущаемого уровня энергии в середине дня, даже часовой послеобеденный сон не помог восстановиться, вторую половину дня провел довольно бестолково. Начал с помощью perplexity.ai генерить список Use Cases для экзокортекса по учету питания, это у меня такая форма прокрастинации, потому что не хочу и не люблю начинать проекты разработки с нуля :frowning:

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

1 марта, суббота

Учтено времени: 4 hrs 17 mins, из них инвестировано: 0 hrs 37 mins

Главная активность - работа над Экзокортексом по учету питания с помощью практики Vibe-программирования. Кажется, что начинаю “ловить Vibe” и лучше понимать, как общаться с AI-агентами.

С помощью Perplexity (в режиме Deep Research с моделью Claude 3.7 Sonnet) примерно за час составил исчерпывающий список вариантов использования, разделил их на “ломтики” (slice) и распределил slice’ы по трем версиям приложения: proof-of-concept, MVP и версия 1.0. Затем предложил этой же LLM составить список технических задач, выстроить их в логическую последовательность с учетом зависимостей и подробно описать предполагаемые шаги решения.

Получился документ, описывающий 11 технических задач для версии proof-of-concept, который я скормил Github Copilot’у с той же Claude 3.7 Sonnet под капотом и попросил разделить на 11 отдельных файлов-описаний в спец.директории проекта. Github Copilot в режиме агента может использовать файлы из этой директории в качестве промптов. Ну и осталось только дать команду “Выполни задачу №1” и пару раз подтолкнуть в нужном направлении.

Результат дня:

  • Список вариантов использования для экзокортекса по учету питания
  • Список задач (детализированных до отдельных шагов) для AI-агента
  • Настроенная среда для разработки и запуска приложения (конфигурация контейнеров, настройки подключения к БД, вот это вот все)

Наблюдения:

  • Вообще не получил никакого удовольствия от сессии игры в Tropico 3. Скорее даже было стыдно, что ли, в общем, я разочарован в итоге. Время потеряно, хотя рассчитывал на какое-то внутреннее восстановление.
  • Vibe-кодинг (по крайней мере, на текущих задачах) вполне себе работает короткими помидорками. LLM не теряет контекст, история чата остается, файлы промптов тоже можно править прямо по ходу беседы, чтобы следующие реплики учитывали новое состояние. То есть, можно программировать “набегами”, чуть ли не в “крошки времени”.

Дальнейшие планы:

  • Продолжать Vibe-кодинг. Я, кстати, попросил LLM оценить время, требуемое на реализацию всех поставленных задач, исходя из времени работы над первой. Получилось 18 часов, вот и проверим качество оценки :slight_smile:
1 лайк

2 марта, воскресенье

Учтено времени: 3 hrs 40 mins, из них инвестировано: -

День домашних дел (уборка) и развлечений (поход в ресторан/прогулка).

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

Завтра буду продолжать работу над экзокортексом по учету питания, и, вероятно, возникнет что-нибудь срочное по основному рабочему проекту.

1 лайк

3 марта, понедельник

Учтено времени: 5 hrs 35 mins, из них инвестировано: 0 hrs 41 mins

Физическое состояние ухудшается, чувствую, что заболеваю, поэтому уровень энергии в течение дня ощущался как очень низкий. Тем не менее, сделал несколько отностительно небольших дел.

В части крупных дел результаты таковы:

  • Обнаружен и исправлен дефект в коде приложения на основном рабочем проекте. Оказалось, что используемая для валидации запросов библиотека (c >6k звездочек на Гитхабе) не проверяет объявленные непустыми списки на пустоту :frowning: ну или я что-то не понимаю в синтаксисе и особенностях graphql. Попробую написать изолированный кейс и завести им issue, а еще лучше - попробовать написать провальный тест на такой кейс прямо у них в новой ветке.
  • ИИ-агент, с которым мы пишем экзокортекс для учета питания, тупеет на глазах. Каркас приложения собрал быстро, приложение вроде даже делает вид, что работает. Но за пределами этого каркаса начинаются проблемы на ровном месте - агент не учитывает (или не понимает) модель данных БД, не знает особенностей им же созданных docker-контейнеров, в общем, вчера у меня ничего толком продвинуть не получилось. Хотя формально код сущностей и репозиториев я получил. Но недоволен.

Планы на вторник:

  • Релизнуть доработку по динамическим заглушкам на основном рабочем проекте
  • Написать пачку уточняющих промптов для ИИ-агента (маленькие шаги, постоянное тестирование)
1 лайк

4 марта, вторник

Учтено времени: 4 hrs 27 mins, из них инвестировано: -

Чувствовал себя отвратительно бОльшую часть дня, тем не менее, немного продвинулся в разработке экзокортекса по учету питания. Отказался от эксперимента по разработке исключительно силами AI-агентов, потому что очень уж много времени уходит на уточнения и правки. Скорее всего, это сигнал о необходимости точнее и “правильнее” формулировать запросы, я попробовал создать несколько уточняющих запросов и включать их в виде контекста в основной запрос, но пока что не понял, как формулировать их наиболее эффективно.

Рабочие продукты за день:

  • Контейнеризованная среда разработки и конфигурация приложения по учету питания, скорректированная на мои “хотелки” по nullables и A-Frame architecture.
  • Код, выполняющий CRUD операции для единиц измерения.
  • Пачка мелких дополняющих промптов (про nullables, про many more much smaller steps, в частности)

Главная задача на среду - провести сессию стратегирования (анализ прошедшей недели, планы на следующую), опубликовать стратегию в Клубе.