«Это мелкая правка» превратилась в проект на месяц

Заказчик приходит и говорит: «Там мелкая правка, сделайте». Вы отвечаете: «Ну если мелкая, то пара дней и небольшие деньги». Называете цифру. Он кивает и уже мысленно потратил сэкономленное на что-то другое. Потом вы садитесь разбираться. Спрашиваете: «А что именно нужно?» И оказывается, что «мелкая правка» состоит из двух томов хотелок. Тут кнопку поправить, там пересчитать, здесь поменять логику, а ещё вот в том разделе, который «тоже связан». Всё размазано по разным частям приложения. И тестов нет. Совсем. Значит, писать их придётся нам, потому что без них трогать это страшно. Это как просили «подкрутить кран», а под раковиной стоит вся квартирная разводка, склеенная скотчем. Подкрутить можно. Но стоит потянуть за один конец, и потечёт в трёх местах, а виноват будешь ты, последний, кто трогал. В итоге честная оценка вырастает раза в пять: вместо пары дней выходит месяц. И вот тут начинается самое неприятное. Не техника, а совесть. Человек уже посчитал бюджет. Он уже кому-то сказал «это недорого». А тебе стыдно идти и говорить: «Оказывается, всё иначе». Будто ты его обманул, хотя обманули скорее обстоятельства. Но если вдуматься, стыдиться тут нечего. Первая оценка была оценкой слов, а не работы. Вы оценили то, что вам описали. Описали одно, принесли другое. Цена изменилась потому, что изменился предмет, а не потому, что вы передумали или решили заработать. Молчание обойдётся дороже. Можно взять деньги по первой оценке и сделать «как получится». Тогда заказчик получит хрупкую правку, которая сломает соседнее, и заплатит второй раз, уже с претензией. Или вы сделаете всё честно и в убыток, и через месяц начнёте злиться на человека, который ни в чём не виноват. Плохо в обоих случаях. И ещё одно. Заказчик редко злится на высокую цену. Он злится на сюрприз. Если вы говорите «стало дороже» на второй день, это разговор. Если на двадцатый, это скандал. Сумма может быть одна и та же. Как я поступаю: 1. Не называю цену, пока не увижу объём. «Пара дней» звучит как обещание, даже если вы добавили «примерно». Люди запоминают цифру, а оговорки теряют. 2. Если уже назвал, говорю сразу, как только вижу реальную картину, а не в конце. Чем раньше, тем меньше ощущение обмана. 3. Показываю расклад, а не просто новую сумму: вот что вы просили, вот что за этим стоит, вот почему так. 4. Даю выбор: сделать всё, сделать только исходную мелочь, или разбить на этапы. Решает он, а не я за него. Часто после этого «два тома» схлопываются до трёх действительно нужных пунктов. 5. Отдельной строкой закладываю тесты. Не как «бонус», а как условие безопасной работы. Без них любая правка это лотерея. Иногда заказчик уходит. Это тоже нормальный результат. Лучше потерять заказ, чем получить проект, на котором никому не хорошо. А стыдно должно быть не за то, что вы подняли цену, а за то, что тянули и не сказали. А у вас бывало, что «мелкая правка» вырастала вдвое, втрое или больше? Как вы об этом говорили заказчику?