Many thanks to Tristan Morris for creating a beautiful illustrated hardcover print edition of the site

tcc-case-title

Учитель Баван поставил перед своими разработчиками дилемму:

“При исследовании странного поведения на производстве, нашим самым мощным оружием всегда были отладочные сообщения: чем они более многочисленные и подробные, тем лучше. Тем не менее, при широком использовании, формирование таких сообщений становится ресурсоёмким - настолько ресурсоёмким, что мы отключаем отладочные сообщения, когда мы не занимаемся исследованием проблем. Итак, какой путь лучше? Безопасный, но медленный? Или беспечный, но быстрый?”

“Уф”, - сказала одна из монахинь. “Все сообщения могут быть записаны с минимальными затратами. Надо писать каждый отладочный вызов в if-блоке, проверяющем необходимость записи сообщения перед его формированием. Мы будем медленными только только, когда надо быть безопасными”.

Услышавший это Баван казался довольным. Он велел монахине реализовать её подход в приложении, разрабатываемом в настоящее время. В качестве дополнительного вознаграждения за её ум он подарил ей две эмалированных коробки.

“Красную коробку откройте сразу”, - сказал Баван, - “а чёрную оставьте плотно закрытой. Со временем она Вам пригодится”.

Внутри красной коробки монахиня обнаружила небольшую миску, полную сочных киви, личи и белых груш, лежащих на ягодах годжи. Тем же вечером она наслаждалась ими. Потом поставила обе коробки на верхнюю полку и, в конце концов, забыла о них.

Два года спустя, после того, как система претерпела ряд усовершенствований, появились незначительные проблемы на производстве - впервые за много версий. Монахиня попросила перезапустить систему в отладочном режиме.

Внезапно, на экранах каждого пользователя стали печататься исключения NullPointerException. Система стала полностью непригодной для использования. Пока монахиня в ужасе стояла среди этого хаоса, учитель Баван незаметно подошёл к ней и прошептал: “А теперь достань чёрную коробку”.

Когда она открыла крышку, появился неприятный запах. Внутри была небольшая миска с заплесневелыми и сморщенными остатками бывших киви, личи, груш и ягод годжи.

Монахиня попросила выключить отладочный режим, а затем закрыла коробку, просветлённой.