программистское
Dec. 10th, 2007 06:26 pmА бывает вот такое, например. Представьте, что вы долго чинили какой-то довольно запутанный баг, но вот вы наконец в нем разобрались, продумали, что в точности ваши изменения должны делать, написали их, запустили - не работает - исправили несколько проблем, запустили еще раз - ура, все в порядке!
И вы уже готовы отослать ваше решение на code review (для непрограммистов: послать коллегам, чтобы посмотрели и проверили), как вдруг вы смотрите на него еще раз свежим взглядом и видите, что в имени одной из переменных есть ошибка, оно просто написано неверно, и поэтому ваш код не делает то, что вы думаете, что он делает.
(во время компиляции это не отловилось, например, потому, что это Джаваскрипт и "имя переменной" на самом деле ключ хэша, или что-то в этом роде. Неважно)
Вы исправляете ошибку, перезапускаете - и, конечно, ничего не работает.
И тут возникает такая дилемма. С одной стороны, "if it ain't broke, don't fix it": у вас есть работающее решение, оно проверено на всех браузерах. Тот аргумент, который из-за описки не передавался, можно просто удалить. С другой стороны, вы не понимаете, почему оно работает, а когда делаете так, как понимаете, оно не работает. И разобраться, что там именно происходит и какие тонкости поведения браузеров и кода, который изначально вообще не вы писали, может легко еще пол-дня отнять, скажем, а то и больше. Как бы вы поступили?
И вы уже готовы отослать ваше решение на code review (для непрограммистов: послать коллегам, чтобы посмотрели и проверили), как вдруг вы смотрите на него еще раз свежим взглядом и видите, что в имени одной из переменных есть ошибка, оно просто написано неверно, и поэтому ваш код не делает то, что вы думаете, что он делает.
(во время компиляции это не отловилось, например, потому, что это Джаваскрипт и "имя переменной" на самом деле ключ хэша, или что-то в этом роде. Неважно)
Вы исправляете ошибку, перезапускаете - и, конечно, ничего не работает.
И тут возникает такая дилемма. С одной стороны, "if it ain't broke, don't fix it": у вас есть работающее решение, оно проверено на всех браузерах. Тот аргумент, который из-за описки не передавался, можно просто удалить. С другой стороны, вы не понимаете, почему оно работает, а когда делаете так, как понимаете, оно не работает. И разобраться, что там именно происходит и какие тонкости поведения браузеров и кода, который изначально вообще не вы писали, может легко еще пол-дня отнять, скажем, а то и больше. Как бы вы поступили?
no subject
Date: 2007-12-10 04:42 pm (UTC)мне очень хочется думать, что я бы влезла разбираться.
но на самом деле есть масса неучтённых факторов.
то есть если проект, скажем, сдавать надо было вчера, и если удаление той части, где есть описка, действительно ничего не испортит ни мне, ни тем, кто будет с этим проектом работать после меня — тогда, вероятно, отдала бы как есть.
или вот если ждать больше нельзя, а у меня именно сегодня - зубы болят или дежурство назначено у немощного дедушки.
но в идеале, конечно, интересно же, что там спрятано внутри.
no subject
Date: 2007-12-10 04:52 pm (UTC)я отчего-то решила, что вы про людей, в общем виде.
а вы по делу.
no subject
Date: 2007-12-10 04:55 pm (UTC)