Many thanks to Tristan Morris for creating a beautiful illustrated hardcover print edition of the site |
|||||||||||||
Учитель Баван поставил перед своими разработчиками дилемму: “При исследовании странного поведения на производстве, нашим самым мощным оружием всегда были отладочные сообщения: чем они более многочисленные и подробные, тем лучше. Тем не менее, при широком использовании, формирование таких сообщений становится ресурсоёмким - настолько ресурсоёмким, что мы отключаем отладочные сообщения, когда мы не занимаемся исследованием проблем. Итак, какой путь лучше? Безопасный, но медленный? Или беспечный, но быстрый?” “Уф”, - сказала одна из монахинь. “Все сообщения могут быть записаны с минимальными затратами. Надо писать каждый отладочный вызов в if-блоке, проверяющем необходимость записи сообщения перед его формированием. Мы будем медленными только только, когда надо быть безопасными”. Услышавший это Баван казался довольным. Он велел монахине реализовать её подход в приложении, разрабатываемом в настоящее время. В качестве дополнительного вознаграждения за её ум он подарил ей две эмалированных коробки. “Красную коробку откройте сразу”, - сказал Баван, - “а чёрную оставьте плотно закрытой. Со временем она Вам пригодится”. Внутри красной коробки монахиня обнаружила небольшую миску, полную сочных киви, личи и белых груш, лежащих на ягодах годжи. Тем же вечером она наслаждалась ими. Потом поставила обе коробки на верхнюю полку и, в конце концов, забыла о них. Два года спустя, после того, как система претерпела ряд усовершенствований, появились незначительные проблемы на производстве - впервые за много версий. Монахиня попросила перезапустить систему в отладочном режиме. Внезапно, на экранах каждого пользователя стали печататься исключения NullPointerException. Система стала полностью непригодной для использования. Пока монахиня в ужасе стояла среди этого хаоса, учитель Баван незаметно подошёл к ней и прошептал: “А теперь достань чёрную коробку”. Когда она открыла крышку, появился неприятный запах. Внутри была небольшая миска с заплесневелыми и сморщенными остатками бывших киви, личи, груш и ягод годжи. Монахиня попросила выключить отладочный режим, а затем закрыла коробку, просветлённой. Перевод Sergey Malenkov. Отрывок из The Codeless Code, созданная Qi (qi@thecodelesscode.com). При условии, в соответствии с условиями Creative Commons Attribution-NonCommercial 3.0 Unported License. |