Трекер, который не стыдит

У бегуна есть часы, которые считают километры. У изучающего язык — сова, которая напоминает про урок. У писателя — файл, который молчит. Роман пишется месяцами, у него нет ни дедлайна, ни тренера, ни таблицы результатов; единственная обратная связь — число страниц внизу окна, и оно растёт так медленно, что смотреть на него больно. Автор садится писать в понедельник, пропускает вторник, в среду садится с чувством вины, в четверг вина уже такая, что проще не открывать файл вообще. Знакомая спираль?
При этом сама механика давно придумана и работает: серии, цели, видимый прогресс. NaNoWriMo двадцать лет доказывает, что «50 тысяч слов за месяц» с публичным счётчиком дописывает романы, которые без счётчика лежали бы в столе. Проблема в том, что счётчик обычно живёт отдельно от текста: табличка в Excel, куда надо руками вписывать «сегодня 800 слов», — и через неделю табличка умирает первой.
Мы решили встроить мотиваторскую механику прямо в стол — так, чтобы она питалась от самого письма и не требовала от автора ни одного лишнего действия. И с одним жёстким принципом, вынесенным в заголовок: трекер должен болеть за автора, а не стыдить его.
Сессии считаются сами. В основе всего — писательские сессии. Никакой кнопки «начать тренировку»: вы просто пишете, а Стол замечает это по сохранениям текста. Правите сцену — сессия открылась; продолжаете — продлевается; отошли больше чем на полчаса — закрылась, следующий подход станет новой сессией. Для каждой сессии запоминается, сколько слов было до и сколько стало после, — то есть считается настоящая дельта написанного, а не «активность». Переименовали главу, поправили заметки — это не письмо, и в статистику оно не попадает. Счётчик невозможно обмануть и невозможно забыть включить — идеальные качества для инструмента, который должен прожить с автором год.
Профиль как дневник тренировок. Из сессий собирается статистика в профиле: сколько всего написано, сколько дней вы писали, текущая серия, рекордная серия, средний темп за месяц. Под цифрами — ритм последних четырёх недель: столбики по дням, где видно, как вы на самом деле пишете — ровно по чуть-чуть или запоями по выходным. А ниже — год целиком: та самая «грядка» из квадратиков, знакомая каждому разработчику по GitHub, — 52 недели, тинт по интенсивности. Двадцать восемь дней отвечают на вопрос «как у меня дела»; год отвечает на вопрос «кто я как пишущий человек» — и это другой, более важный ответ.
Отдельная карточка — темп: средняя скорость в словах в минуту за месяц и лучшая сессия за всё время. Микроподходы «открыл на две минуты, поправил запятую» из расчёта выброшены — они не темп, а шум. По скорости профиль честно называет ваш стиль: быстрый, ровный или вдумчивый — и все три слова мы выбирали без оценки, потому что вдумчивые пятьсот слов в час дописывают романы не хуже быстрых полутора тысяч.
Серия, которая прощает вечер. Стрик — самая мощная и самая опасная механика из всех: одно неверное решение, и мотиватор превращается в надзирателя. Наше главное решение тут — серия не сгорает в полночь. Если вчера вы писали, а сегодня ещё нет — серия жива и ждёт вас до конца дня. Сгорает она только по-настоящему пропущенным дням. Писатель — не приложение для медитации; вечер с семьёй не должен обнулять сорок дней работы.
Цели, какими они бывают у писателей. Целей три вида, и они намеренно разные. «Объём» — дописать N слов к дате: классика, готовый шаблон NaNoWriMo (50 тысяч за месяц) прилагается. «Темп» — держать N слов в день: тут мы считаем честно, по календарным дням, а не по «дням, когда писалось», — пропуски снижают средний темп, потому что настоящий темп — это включая пропуски. И «серия» — писать N дней подряд. Прогресс любой цели считается на лету из тех же сессий: ничего отмечать не надо, цифра растёт сама, пока вы пишете.
Активных целей может быть несколько сразу — реальные авторы хотят «50k за месяц» и «писать каждый день» одновременно, и это не противоречие, а система. На дашборде цели живут компактными строками с прогрессом, на странице мотивации — стопкой карточек. Пересекли четверть, половину, три четверти — тост с поздравлением; закрыли цель — конфетти с обоих краёв экрана. Звучит несерьёзно? Дофаминовая петля вообще несерьёзная штука — но именно она дописывает вторую половину черновика.
А когда целей накопится история, над ней появляется строка правды: «из 8 поставленных — выполнено 3, средняя длительность 11 дней». Это не стыд, это калибровка: посмотрев на неё, следующую цель вы поставите ту, которую действительно закроете.
«Вы только что переписали Чехова». Наша любимая деталь. В базе лежит полсотни эталонных произведений русской и мировой классики с их объёмами — от «Каштанки» (девять с половиной тысяч слов) до «Войны и мира» (пятьсот восемьдесят семь тысяч). Профиль сравнивает ваш суммарный написанный объём с этой линейкой и показывает три точки: где вы сейчас («вы на уровне „Собачьего сердца“»), что недавно прошли и сколько осталось до следующей планки («до „Мастера и Маргариты“ — 31 тысяча слов»). Абстрактное «у меня 113 тысяч слов» ничего не говорит даже самому автору; «я уже написал больше, чем „Двенадцать стульев“» — говорит всё. Это ещё и лучший ответ на вечное «да сколько можно возиться с этой книгой» от близких.
Цитата дня — одна на всех. Наверху страницы мотивации — цитата: Чехов, Толстой, кто-то из великих о ремесле, из курируемого пула в шесть десятков. Тонкость в том, что цитата дня у всех пользователей одна и та же — она выбирается от даты, а не случайно на человека. Мелочь, но она превращает цитату из обоев в общий контекст: «сегодняшнюю» можно обсудить в чате с товарищами по перу, как обсуждают вордловское слово дня.
Блок «Сегодня». Под цитатой — крупная цифра слов, написанных сегодня, пламя серии рядом и мини-график последней недели. Если сегодня ещё ноль — там кнопка прямиком в редактор. Страница мотивации вообще не место, где надо задерживаться: посмотрел, кивнул, пошёл писать. На телефоне всё то же самое живёт во вкладке «Цели» — проверить серию с утра можно, не открывая ноутбук.
Что у нас впереди по этому разделу.
Первое — цитаты, которые попадают в состояние. Сейчас цитата дня одна на всех и слепа к вашим делам. Хотим разметить пул по настроению — «возвращение», «дисциплина», «финишная прямая», «процесс» — и подбирать под контекст автора: серия оборвалась — цитата про то, что вставать после падения и есть ремесло; до цели осталось десять процентов — про последнее усилие. Маленькая вещь, после которой приложение начинает чувствоваться как «оно меня знает».
Второе — уведомления, когда серия под угрозой. Стрик-механика без напоминаний работает вполсилы: про серию надо вспомнить до полуночи, а не после. Мягкий push на телефон — «серия 14 дней ждёт сегодняшних слов» — вместе с PWA-инфраструктурой десктопно-мобильного этапа. Обещаем не превращаться в сову: одно напоминание, без пассивной агрессии и грустных лиц.
И третье — годовой отчёт писателя. Раз мы уже считаем сессии, темп, серии и объёмы, в декабре из этого собирается «ваш писательский год»: сколько слов, сколько дней, самый продуктивный месяц, кого из классиков переписали. Красивая страница, которой хочется поделиться, — и повод оглянуться на год, в котором вы, оказывается, написали повесть, даже если кажется, что «весь год ничего не успевали».
Во всей этой механике для нас важен один принцип: статистика — не табель, а зеркало заднего вида. Мы сознательно не показываем рейтинги «вы пишете меньше 80% авторов», не рисуем красным пропущенные дни, не шлём «мы скучаем» после недели тишины. Письмо — занятие, в котором стыд не топливо, а тормоз: пристыженный автор не пишет больше, он перестаёт открывать файл. Всё, что мы показываем, устроено так, чтобы на это хотелось смотреть, — а смотреть на свой прогресс и есть самый честный способ завтра снова сесть за стол.
— команда Стол Писателя