Главная страница


ru.cisco

 
 - RU.CISCO ---------------------------------------------------------------------
 From : Slawa Olhovchenkov                   2:5030/500     20 Dec 2002  18:58:58
 To : All
 Subject : (c) мне не известен
 -------------------------------------------------------------------------------- 
 
 
 This is how things work in Information Technology.
 
 Любой русский программист после пары минут чтения кода, обязательно вскочит
 и произнесет обращаясь к себе: переписать это все нафиг.
 Потом в нем шевельнется сомнение в том, сколько времени это займет, и
 остаток дня русский программист потратит на то, что будет доказывать самому
 себе, что это только кажется, что переписать это много работы. А если
 взяться и посидеть немного, то все получится. Зато код будет красивый и
 правильный. Hа следующее утро русский программист свеж, доволен собой и без
 единой запинки докладывает начальству, что переписать этот кусок займет один
 день, не больше. Да, не больше. Hу, в крайнем случае, два, если учесть все
 риски. В итоге начальство даст ему неделю и через полгода процесс будет
 успешно завершен. До той поры, пока этот код не увидит другой русский
 программист.
 А в это время, в соседних четырех кубиках, будет ни на секунду не утихать
 работа китайских программистов, непостижимым образом умудряющихся прийти
 раньше русского программиста, уйти позже, и при этом сделать примерно втрое
 меньше. Эта четверка, давно не пишет никакого кода, а только поддерживает
 код написанный, в свое время индусом и дважды переписанный двумя разными
 русскими. В этом коде не просто живут баги. Здесь их гнездо. Это гнездо
 постоянно воспроизводит себя при помощи любимой китайской технологии
 реиспользования кода - copy/paste. Отсюда баги расползаются в разные стороны
 посредством статических переменных и переменных переданных по ссылке
 (поскольку, китайский программист не может смириться с неудобствами
 вызванными тем, что он не может изменить значение внешней переменной
 переданной в его функцию модулями, которые переписывает русский
 программист). Вспоминая об этой функции русский программист, как правило на
 время теряет дар английской речи, и переходит к какой-то помеси русского и
 китайского. Он давно мечтает переписать весь кусок, над которым работают
 китайцы, но у него нет времени.
 Hа китайцах висят серьезные баги, о которых знает начальство и постоянно их
 торопит. Китайцы торопливо перевешивают баги друг на друга, поскольку знают,
 что попытки их починить приведут к появлению новых, еще худших. И в этом они
 правы. Разобраться в том, в каком порядке меняются статические переменные, и
 как приобретают свои значения, способен только один человек на фирме -
 индус. Hо он пребывает в медитации.
 Поэтому, когда всю четверку уволят во время сокращения... А кого еще
 увольнять? Русский - еще не переписал свой кусок, а индус - главная ценность
 фирмы - он редко обращает внимание на проект, но когда обращает, все
 понимают, что так как он, архитектуру никто не знает. Так вот, когда
 китайцев увольняют, у их кода возможны две основные судьбы. Первая - он
 попадет к русским и его перепишут. Вторая - он попадет к местному,
 канадскому программисту.
 О, канадский программист это особый тип. Он ни на минуту не задумываясь, как
 рыцарь без страха и упрека, бросится фиксить самый свирепый баг китайского
 кода. Этот Баг живет там уже три года, и китайцы уже четырежды (каждый по
 разу) сообщали начальству, что он пофиксен. Hо Баг каждый раз возвращался,
 как Бетмен в свой Готхем.
 Итак, канадский программист сделает то, чего китайцы не рисковали делать в
 течении трех долгих лет. Он, при помощи дебагера, отследит место, где
 статическая переменная приняла значение -1 вместо правильного 0, и
 решительным движением заведет рядом вторую переменную с правильным
 значением. Баг погибнет в неравной схватке с канадским программистом. Hо
 победа будет достигнута тяжелой ценой. Работать перестанет все, включая
 только что переписанный русским программистом код. Это повергнет русского
 программиста в задумчивость на целых два дня, после чего он сделает, в
 общем-то, предсказуемый вывод о том, что дизайн с самого начала был
 неправильным, и все надо переписать. Hа это нам нужна неделя. Да, неделя, не
 больше.
 Канадский программист смело бросится налаживать все, и станет еще хуже, хотя
 казалось бы... Эта суета выведет из медитации индуса, который придумает и
 вовсе гениальное решение - отбранчить код. Согласно его плану, мы теперь
 будем поддерживать две версии одного и того же кода - одну работающую но с
 Багом, другую без Бага, но не работающую. Русский программист услышав об
 этом плане, сломает линейку об стол и дома обзовет жену дурой, но на митинге
 возразить не решится.
 К счастью, все это не сильно влияет на дела фирмы, поскольку продукт
 продается и так. Поэтому менеджмент ходит в целом довольный и не устает
 напоминать всем, что они отобраны как лучшие среди лучших. И что мы давно
 доказали свою способность выпускать продукт тем, что выпускаем его иногда.
 ... Упакуй, Господи, душу его...
 --- GoldED+/BSD 1.1.5
  * Origin:  (2:5030/500)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 (c) мне не известен   Slawa Olhovchenkov   20 Dec 2002 18:58:58 
Архивное /ru.cisco/22213e03311e.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional