Неделя классики: Зов Кодтулху

2007-05-08

Что может быть лучше, чем начать неделю классики тем, на чем мы закончили в 2006? Изначально опубликованная 20 декабря 2006 статья Зов Кодтулху моя любимая, особенно с иллюстрацией от Джорджа Е. МакДугала. И, кстати говоря, ждите появления у нас его новых работ...


Это выглядело как любая другая работа: "для работы по контракту на срок от одного до трех месяцев в целях поддержки проприетарного ПО управления цепочками поставок требуются контрактники со знанием Java/J2EE". Конечно Джеймс С мог подождать, пока не найдет чего-нибудь более интересного, но оплата была фантастической, а контракт был краткосрочным, поэтому он решил, что не так уж много и потеряет. Пока не столкнулся лицом к лицу с Кодтулху.

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

Великие Древние Консультанты работали денно и нощно, чтобы создать великую систему, которую затем нарекут Кодтулху. Они использовали только самые дьявольские материалы: серверы Dell SatanicEdge, J2EE (Java 2 Evil Edition (зловещее издание), не путать с Java 2 Enterprise Edition), и души тысячи сирот. Когда их работа была завершена, Великие Древние Консультанты исчезли, чтобы уже никогда не явиться снова.

Как только не старалась компания, но ей так и не удалось вызвать назад Великих Древних Консультантов. Это было особенной проблемой, потому что Великие Древние Консультанты забрали с собой - исходный код. Без исходного кода просто не было способа исправлять ошибки и вносить изменения в их специализированное, многомиллионное ПО. Пока одному из инженеров не пришла в голову идея - они могли декомпилировать байт-код Java.

Декомпилированный код - не очень приятная штука. Множества удобств Java - комментариев, имен переменных, отличий между циклами FOR и WHILE - просто не существовало. А когда исходный код начертан Великими Древними Консультантами, он становится гораздо хуже чем "не очень приятным". Он становится абсолютным злодейством.

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

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

Печально, но Джеймс теперь часть Кодтулху, а Кодтулху часть Джеймса. К тому времени пока Джеймс осознал это, было уже слишком поздно. Его последней вспышкой разума была отправка относительно связного послания, которое предупреждало всякого о его печальной участи и предостерегало о J2EE контрактах, которые выглядят "как и любая другая работа".


А если вы никогда не верили в то, что Java 2 Evil Edition реальный продукт, взгляните на логотип который откопал Jackal von ÖRF


(в высоком разрешении)

Оригинал:http://worsethanfailure.com/Articles/Classics-Week-The-Call-of-Codethulhu.aspx

Комментариев: 7Добавить комментарий