закон Хофштадтера:
«Это всегда занимает больше времени, чем вы ожидаете, даже если вы принимаете во внимание закон Хофштадтера».
Я считаю, что это потому, что:
- Работа расширяется, чтобы заполнить время, доступное для ее выполнения. Независимо от того, насколько безжалостно вы удаляете ненужные функции, вы были бы более жестокими, если бы сроки были еще жестче.
- Неожиданные проблемы возникают во время проекта.
В любом случае сравнивать анекдоты действительно неверно, отчасти потому, что у людей избирательная память. Если я скажу вам, что однажды мне потребовалось два часа, чтобы написать полностью оптимизированную быструю сортировку, тогда, возможно, я забыл тот факт, что знал, что выполнил эту задачу за неделю, и обдумывал идеи. Может быть, я забыл, что в нем была ошибка, которую я потратил еще на два часа, исправляя неделю.
Я почти наверняка пропускаю всю непрограммистскую работу, которая продолжается: встречи, проектирование архитектуры, консультации с другими, кто застрял на чем-то, о чем я случайно узнал, админ. Поэтому несправедливо думать о скорости работы, которая кажется правдоподобной с точки зрения «сидящего кодирования», и ожидать, что она будет поддерживаться постоянно. Это источник многих чувств после того, что вы «должны были быть быстрее».