Reading view

320 348 строк за 98 дней: что на самом деле меняется, когда у инженера появляется исполнитель

15 мая я впервые в жизни получил исполнителя, который пишет код быстрее, чем я успеваю продумывать требования. К 21 августа на дисках лежало 320 348 строк в актуальных версиях — цифра получена обходом с дедупликацией по SHA-1, а не оценкой; воронка подсчёта приведена в тексте целиком, вместе с шагом, на котором она в черновике не сходилась. Это не восторженный пост: половина текста про то, где я ошибся, что не доделал и какие собственные результаты потом сам же признал недействительными. Отдельно — про то, как первое за 98 дней внешнее ревью пришло из комментариев к прошлой статье через два часа пятьдесят три минуты после публикации и нашло в моём коде то, чего я не искал.

Читать далее
  •  

Тест зелёный, фича сломана: семь случаев, когда проверка совпала по неверной причине

Тест зелёный, а фича сломана — потому что проверка смотрит на форму, а не на эффект: имя поля в файле есть, а в разметку оно не попало. Семь таких случаев из живого проекта на TypeScript и PostgreSQL: колесо мыши, которое убил мой собственный CSS-фикс и диагностика, проверившая defaultPrevented вместо прокрутки; подстрока, совпавшая с другой подстрокой; комментарий в SQL, прочитанный как код; метка источника, из-за которой отчёт показывал ноль и этот ноль читался как «людей нет». С кодом, разбором каждой ошибки и числами мутационного прогона на 13 400 мутантов.

Читать далее
  •  

Полгода делал курсы-игры для тестировщиков. Посчитал всю воронку, и удержание оказалось единственным, что не выросло

Привет, меня зовут Артем Русов. Я автор курсов и образовательных материалов для тестировщиков. Сегодня первое сентября, и это удобный повод подвести итог одной работы.

С февраля я собираю курсы по тестированию, устроенные как игра: Древняя Греция для REST API, Древний Египет для GraphQL, город Цифроград для основ компьютерной грамотности. Сюжет, персонаж-проводник, задания в декорациях мира.

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

Ответ получился неудобным для заголовка. Геймификация улучшила почти всё, кроме одной метрики.

Читать далее
  •  
❌