Как русские программисты работают в Америке
pora_valit — 09.09.2014 Любой русский программист после пары минут чтения кода, обязательно вскочит и произнесет обращаясь к себе: переписать это все нафиг. Потом в нем шевельнется сомнение в том, сколько времени это займет, и остаток дня русский программист потратит на то, что будет доказывать самому себе, что это только кажется, что переписать это много работы. А если взяться и посидеть немного, то все получится.Зато код будет красивый и правильный. На следующее утро русский программист свеж, доволен собой и без единой запинки докладывает начальству, что переписать этот кусок займет один день, не больше. Да, не больше. Ну, в крайнем случае, два, если учесть все риски. В итоге начальство даст ему неделю и через полгода процесс будет успешно завершен. До той поры, пока этот код не увидит другой русский программист.
А в это время, в соседних четырех кубиках, будет ни на секунду не
утихать работа китайских программистов, непостижимым образом
умудряющихся прийти раньше русского программиста, уйти позже, и при
этом сделать примерно втрое меньше. Эта четверка, давно не пишет
никакого кода, а только поддерживает код написанный, в свое время
индусом и дважды переписанный двумя разными русскими. В этом коде
не просто живут баги. Здесь их гнездо. Это гнездо постоянно
воспроизводит себя при помощи любимой китайской технологии
реиспользования кода - copy/paste. Отсюда баги расползаются в
разные стороны посредством статических переменных и переменных
переданных по ссылке (поскольку, китайский программист не может
смириться с неудобствами вызванными тем, что он не может изменить
значение внешней переменной переданной в его функцию модулями,
которые переписывает русский программист).
Вспоминая об этой функции русский программист, как правило на время
теряет дар английской речи, и переходит к какой-то помеси русского
и китайского. Он давно мечтает переписать весь кусок, над которым
работают китайцы, но у него нет времени. На китайцах висят
серьезные баги, о которых знает начальство и постоянно их торопит.
Китайцы торопливо перевешивают баги друг на друга, поскольку знают,
что попытки их починить приведут к появлению новых, еще худших. И в
этом они правы.
Разобраться в том, в каком порядке меняются статические переменные,
и как приобретают свои значения, способен только один человек на
фирме - индус. Но он пребывает в медитации. Поэтому, когда всю
четверку уволят во время сокращения... А кого еще увольнять?
Русский - еще не переписал свой кусок, а индус - главная ценность
фирмы - он редко обращает внимание на проект, но когда обращает,
все понимают, что так как он, архитектуру никто не знает. Так вот,
когда китайцев увольняют, у их кода возможны две основные судьбы.
Первая - он попадет к русским и его перепишут. Вторая - он попадет
к местному, канадскому программисту.
О, канадский программист это особый тип. Он ни на минуту не
задумываясь, как рыцарь без страха и упрека, бросится чинить самый
свирепый баг китайского кода. Этот Баг живет там уже три года, и
китайцы уже четырежды (каждый по разу) сообщали начальству, что он
починен. Но Баг каждый раз возвращался, как Бетмен в свой Готхем.
Итак, канадский программист сделает то, чего китайцы не рисковали
делать в течении трех долгих лет. Он, при помощи дебагера, отследит
место, где статическая переменная приняла значение -1 вместо
правильного 0, и решительным движением заведет рядом вторую
переменную с правильным значением. Баг погибнет в неравной схватке
с канадским программистом. Но победа будет достигнута тяжелой
ценой.
Работать перестанет все, включая только что переписанный русским
программистом код. Это повергнет русского программиста в
задумчивость на целых два дня, после чего он сделает, в общем-то,
предсказуемый вывод о том, что дизайн с самого начала был
неправильным, и все надо переписать. На это нам нужна неделя. Да,
неделя, не больше. Канадский программист смело бросится налаживать
все, и станет еще хуже, хотя казалось бы... Эта суета выведет из
медитации индуса, который придумает и вовсе гениальное решение -
отбранчить код. Согласно его плану, мы теперь будем поддерживать
две версии одного и того же кода - одну работающую но с Багом,
другую без Бага, но не работающую. Русский программист услышав об
этом плане, сломает линейку об стол и дома обзовет жену дурой, но
на митинге возразить не решится.
К счастью, все это не сильно влияет на дела фирмы, поскольку
продукт продается и так. Поэтому менеджмент ходит в целом довольный
и не устает напоминать всем, что они отобраны как лучшие среди
лучших. И что мы давно доказали свою способность выпускать продукт
тем, что выпускаем его иногда.
© Наш Техас, номер 73
Нравится блог? Добавляй в друзья. Хочешь взаимности, отпишись в
верхнем посте.
|
</> |