Форум Торонто - Torontovka.com
[Search] [Rules] [Register] [Login]
Forums » Archive » История одной фирмы 
Page: [1]
Author Message
Joined: 7/5/2006
Posts: 2366
Posted on Monday, March 19, 2007 12:04:58 PM
 


Любой русский программист после пары минут чтения кода обязательно вскочит и произнесет, обращаясь к себе: "переписать это все нафиг". Потом в нем шевельнется сомнение в том, сколько времени это займет, и остаток дня русский программист потратит на то, что будет доказывать самому себе, что это только кажется, что переписать это много работы. А если взяться и посидеть немного, то все получится.

Зато код будет красивый и правильный. На следующее утро русский программист свеж, доволен собой и без единой запинки докладывает начальству, что переписать этот кусок займет один день, не больше. Да, не больше. Ну, в крайнем случае, два, если учесть все риски.

В итоге начальство даст ему неделю и через полгода процесс будет успешно завершен.

До той поры, пока этот код не увидит другой русский программист.

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

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

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

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

И в этом они правы. Разобраться в том, в каком порядке меняются статические переменные, и как приобретают свои значения, способен только один человек на фирме - индус. Но он пребывает в медитации. Поэтому, когда всю четверку уволят во время сокращения...

А кого еще увольнять? Русский - еще не переписал свой кусок, а индус - главная ценность фирмы - он редко обращает внимание на проект, но когда обращает, все понимают, что так как он, архитектуру никто не знает. Так вот, когда китайцев увольняют, у их кода возможны две основные судьбы.

Первая - он попадет к русским, и его перепишут.

Вторая - он попадет к местному, канадскому программисту.

О, канадский программист это особый тип. Он, ни на минуту не задумываясь, как рыцарь без страха и упрека, бросится фиксить самый свирепый баг китайского кода.

Этот Баг живет там уже три года, и китайцы уже четырежды (каждый по разу) сообщали начальству, что он пофиксен. Но Баг каждый раз возвращался, как Бетмен в свой Готхем.

Итак, канадский программист, воспитанный на героической патетике американского футбола - бросаться в бой головой вперед, сделает то, чего китайцы не рисковали делать в течении трех долгих лет.

Он, при помощи дебагера, отследит место, где статическая переменная приняла значение -1 вместо правильного 0, и решительным движением заведет рядом вторую переменную с правильным значением. Баг погибнет в неравной схватке с героем.

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

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

Русский программист, услышав об этом плане, сломает линейку об стол и обзовет жену дурой, но на митинге возразить не решится.

К счастью, все это не сильно влияет на дела фирмы, поскольку продукт продается и так. Поэтому менеджмент ходит в целом довольный и не устает напоминать всем, что они отобраны как лучшие среди лучших.

И что мы давно доказали свою способность выпускать продукт тем, что выпускаем его иногда.
-----
Success is not final, failure is not fatal; it is the courage to continue that counts
Last edited by Kroko on Monday, March 19, 2007 12:05:00 PM
 
Joined: 1/27/2006
Posts: 323
Posted on Monday, March 19, 2007 1:42:07 PM
 
Очень реалистично. Руский програмист, ну просто точно :))
Joined: 12/26/2001
Posts: 2250
Posted on Monday, March 19, 2007 7:16:19 PM
 
Во-первых, боян. Во-вторых все не так. Во-третих, этот "русский программист" который якобы проявляет героизм на рабочем месте, по сути мало чем отличается от своих китайских и индусских коллег. И это обидно, т.к. "русский программист" - действительно звучит гордо и не зря.

«переписать это все нафиг»

Уволен!

«Зато код будет красивый и правильный»

Уволен!

«что переписать этот кусок займет один день, не больше»

Сколько-сколько? Уволен!

«Эта четверка давно не пишет ничего нового, а только поддерживает код, написанный в свое время индусом, и дважды переписанный двумя разными русскими.»

Welcome to real life. Те двое русских не хуже китайцев и индусов, так же заслуживают смерти.

«любимой китайской технологии реиспользования кода - copy/paste.»

Увы, любимая техника многих, в том числе и русских. Смертельный грех, без вопросов. Здесь грех не в том, что не знают как иначе, а в том что совершая его у них ничего внутри не содрагается. Смерть.
И увольнение по-сотоянию здоровья.

«ведь, китайский программист не может смириться с неудобствами вызванными тем, что он не может изменить значение внешнего параметра»

Здесь-то что? Оставте китайцев в покое.

«Он давно мечтает переписать весь кусок, над которым работают китайцы, но у него нет времени.»

Он еще здесь? Еще мечтает? Придурок! Ты о тестах сначала "помечтай", а вот потом подумаем про "переписать". Meanwhile - уволен!

«Он уже переписывает два больших куска, и доказал начальству необходимость переписать третий.»

Т.е. тесты так и не написал? Правим в main trunk? Ну-ну... только не вздумай комитить, мудила. Можешь даже не показывать, я не буду тебя увольнять, это сделают за меня другие, когда у них следующий билд сломается, бугага.

«Разобраться в том, в каком порядке меняются статические переменные, и как приобретают свои значения, способен только один человек на фирме - индус.»

Хватить валить на других! Ты на себя посмотри. Где тесты, программист херов! Кстати, твой новый код - отстой. И тебя кажется просили не комитить. Можешь собирать вещи.

«Он, при помощи дебагера, отследит место, где статическая переменная»

Дебагер, любимая игрушка русских программистов. К большому сожалению. Ибо если тебе необходим дебагер, что бы найти проблему, значит ты не до конца понимаешь как работает твоя аппликуха. И то что не ты ее писал - не оправдание. Лучше бы тесты выправил и добавил новых. И билд наконец пофиксил. Уволен.

«Но победа будет достигнута тяжелой ценой. Работать перестанет все, включая только что переписанный русским программистом код. Это повергнет русского программиста в задумчивость на целых два дня, после чего он сделает, в общем-то, предсказуемый вывод о том, что дизайн с самого начала был неправильным, и все надо переписать.»

Допрыгался храбрый-портняшка? Сломал то, что работало? Думал тесты для лузеров? А ты и есть лузер! Ты не русский программист, ты говно. Потому, что русский программист умеет делать так, что бы "работало", причем с минимальными затратами, так как лень - национальная черта русского программиста, и любого другого хорошего порграммиста .

"Переписать с читого листа" это по-духу больше соответствует западной культуре, не русской. Русскому человеку больше свойственна простота, преемственность, итеративность: Russians are agile :)
Last edited by jazzy on Monday, March 19, 2007 7:20:00 PM
 
Joined: 7/14/2002
Posts: 3304
Posted on Monday, March 19, 2007 7:28:42 PM
 
Типа Джаззи праффф.. :)

Без тестов плохая погода, без тестов совсем никуда :)))))

Кстати насчет индусов и китайцев вранье наглое. Есть очень разные те и другие. Равно как и русские.
Joined: 3/14/2003
Posts: 9593
Posted on Monday, March 19, 2007 7:38:10 PM
 
гыгыг, ясно шо есть разные, но типа прейти параньше уйти папожже и пре этом нихуя не сделать это кетайская фича неибацца.
так же как и фича савковых праграмеров - переаценять сваи силы и авралить на пастое.
индус - архитектор это ваще тяжолый случай гыгыг.
пазитивный кэн-ду падход местных тоже нармально падмечен.
паржал, хоть и баян.
Page: [1]
Forums » Archive » История одной фирмы 
Copyright © 2020 Torontovka.com, All rights reserved