38 минут в день на кнопку «да»: диссипация, которую я померил
В аудите «7 из 14» я честно записал в красное: мой день живёт на бумажном стикере, а в среду я захожу «героически». Одной из причин я называл всплывающие окна подтверждений - каждое действие агента в чувствительной зоне требует моего «да», и ощущение было, что я половину работы просто сижу и жму кнопку. Ощущение - это жалоба. Я решил превратить её в число.
Попросил агента посчитать по его же журналам за две недели: каждый вызов инструмента там имеет таймстамп запроса и результата, и пауза между ними - это я. Метод честный, с оговорками (пауза включает и моё отсутствие у экрана, и исполнение самой команды; хвосты длиннее десяти минут считали отдельно), но порядок цифр он даёт.
Итог: 392 окна за 13 активных дней. Примерно 30 окон в день. Медианное окно - 30 секунд. Суммарно - около 38 минут в день, вилка честной оценки за две недели - от 2 до 8 часов. Плюс отдельные почти 10 часов, когда окно просто висело, пока меня не было у экрана.
Дальше начинается самое интересное - структура этих окон, потому что она разбила два моих предположения.
Первое: я думал, окна - это цена безопасности. Опасные команды, приватные зоны, вот это всё. Реальность: «опасные» команды дали 6% окон. А 45% - это безопасная рутина, которая упирается в форму команды, а не в её риск: агент писал файлы через конструкцию, которую правила не узнают; клеил безобидные git-команды в связки, ломая совпадение с разрешением; вызывал служебный скрипт с префиксом, из-за которого правило не срабатывало. И вишенка: 100% окон пришли из сессий, запущенных не из того каталога - там, где мои настройки вообще не действуют. Половина моей «бюрократии» лечится четырьмя инженерными правками, не трогая ни одного правила безопасности.
Второе: я думал, окно - это контроль, который меня защищает отказами. Реальность: из ~400 окон отказом закончились 17 - четыре процента. Но вот что важно: медианный отказ занимал 104 секунды - это не рефлекторное «нет», это время, за которое я читал дифф и дописывал агенту указание. Окно у меня работает не как шлагбаум, а как место, где я уточняю задачу. Это меняет вопрос с «как убрать окна» на «какие окна оставить намеренно».
Рамка, которая помогла мне это уложить (из FPF): любая затраченная работа раскладывается на воплощённую - ту, что осталась в результате, - и рассеянную, которая ушла в трение. Рассеяние нельзя запретить, оно есть всегда. Но его можно померить и назначить ему бюджет. Мои 38 минут в день были невидимым рассеянием; теперь это строка в учёте с планом сокращения вдвое - и с осознанным остатком: окна на зоне с чувствительными данными я оставляю. Это не трение, это цена приватности, и теперь я знаю её точную величину: 45 минут за две недели. Плачу спокойно.
Практический вывод для тех, у кого тоже есть ощущение «я всё время что-то подтверждаю»: не спорьте с ощущением и не терпите его. Ощущение не оптимизируется - оптимизируется число. Один запрос к журналам, час на разбор, и у вас вместо раздражения - список из четырёх правок и одной осознанной платы.
P.S. Пока пост лежал в черновиках, история получила продолжение - про второй вид трения.
Окна - это трение на входе действий. А на следующий день после замера обнаружилось трение в самих данных: три источника показали три версии моего утреннего пульса - бумажный дневник, скриншот приложения и официальная выгрузка браслета. Раньше я поверил бы самому свежему скриншоту - и ошибся бы: выгрузка доказала, что экран приложения ещё показывал вчерашнюю ночь. За сутки разночтение превратилось в правило, зашитое в конвейер: иерархия источников, у каждой цифры - происхождение. Мораль у обоих сюжетов одна: то, что раздражает или путает, - не повод терпеть и не повод спорить. Это повод померить и записать правило!