Apr 08, 2009 17:13
Прогаю, прогаю... Ну вот не то выводится, хотя код вроде бы и правильный... Что случилось? В чем дело? Непонятно. Зависаю на этом вопросе, пытаюсь поншять. Ищу, делаю новые выводы... Потом понимаю, что дело всего лишь в одном из диагностических выводов, который я забыл убрать. .И прочие столь же идиотские ошбики.
Кстати сегодня в столовой обсуждали проги. И вот, значит, там Саня сказал, что в контрольной и коллоквиуме главное, чтобы компайлилось, но необязательно, чтобы работало. В ответ я ляпнул, что не, гораздо лучше та прога, которая не компайлится, но работает. Сам ляпнул и сам же задумался.
В итоге пришел к выводу, что работающей прогой в таком случае нужно назвать прогу с полностью правильным алгоритмом. И я даже обосновал то, что прога, которая не компайлится, но работает, намного лучше, чем прога, которая не работает, но компайлится.
Дело в том, что если прога не компайлится, то компилятор выдает список ошибок.
Пусть у одного программиста плотность ошибок, отлавливаемых компилятором, постоянна. Тогда длительность исправления ошибок, отлавливаемых компилятором - пропорциональна либо числу строк, либо квадрату числа строк (после каждого исправления программист снова пытается компайлить и ищет следующую ошибку. Но в любом случае при константной плотности опечаток - зависимость полиномиальная. Причем не шибко высокой степени.
Если же имеется одна ошибка в алгоритме, то длительность ее отыскания недетерминирована. Может занять несколько дней. А может - пять минут. Причем дольше всего ищутся самые идиотские и самые сложные ошибки. Средние ищутся быстрее всего. В общем, это уже из области тервера)
прогерство,
гон - и этим все сказано