Признаю, что ошибался
Не так уж и плохо иметь коллег-идиотов, на самом деле. На их фоне намного проще выгодно выглядеть, не прикладывая особых усилий. Надо только позаботиться, чтобы они не смогли повесить своих собак на тебя.
Здравствуйте, Klatu, Вы писали:
K>Признаю, что ошибался K>Не так уж и плохо иметь коллег-идиотов, на самом деле. На их фоне намного проще выгодно выглядеть, не прикладывая особых усилий. Надо только позаботиться, чтобы они не смогли повесить своих собак на тебя.
Или самому стать таким же идиотом как и твои коллеги-идиоты.
Здравствуйте, Klatu, Вы писали:
K>Признаю, что ошибался K>Не так уж и плохо иметь коллег-идиотов, на самом деле. На их фоне намного проще выгодно выглядеть, не прикладывая особых усилий. Надо только позаботиться, чтобы они не смогли повесить своих собак на тебя.
Рассказывай историю.
Здравствуйте, Kernan, Вы писали:
K>Здравствуйте, Klatu, Вы писали:
K>>Признаю, что ошибался K>>Не так уж и плохо иметь коллег-идиотов, на самом деле. На их фоне намного проще выгодно выглядеть, не прикладывая особых усилий. Надо только позаботиться, чтобы они не смогли повесить своих собак на тебя. K>Рассказывай историю.
у меня недавно случился небольшой триумф
предыстория: меня на работе окружают идиоты.
проблемы они решать не умеют — не видят сути. часто решают маскировкой проблемы, либо тупо в лоб.. и вот недавно, я услышала как они в очередной раз что-то обсуждают, какую-то гигантскую проблему, которая им все рушит. в детали не вникаю, т.к. меня не приглашают к обсуждениям, считая недалекой(?), ну или не разбирающейся в этой части приложения. у них там есть "эксперты", которым они доверяют. тем не менее спустя неделю их эксперт приходит к глупейшему и жуткому решению — писать огромный скл запрос, который делает очень сложные вещи — копирует множество записей куда-то по разным таблицам. и все это накануне релиза. трудно поддерживать, потенциально содержит много багов и т.д.
так получилось что я занималась параллельно другим хитрым багом, и быстро выяснила что чтобы его пофиксить достаточно в цмске проставить правильно одну вещь. пока я копалась с багом — до меня дошло что эта проблема родственна той что они так трудно и мужественно долго решают, и что скорее всего (на 99% была уверена) вот это самое "в цмске проставить правильно одну вещь" пофиксит не только мой баг но и их проблему. в это время у них был очередной митинг с привлечением кучи боссов посвященный этой гигантской проблеме. они вышли и я их позвала к своему столу, сказав, что смотрите — это можно решить просто подредактировав цмску. на глазах 5 скептически настроенных боссов отредактировала в цмс, обновила страницу приложения — и оно заработало. Было оочень эффектно! "эксперт" сказал "ухты" и стал на ходу мучительно выдумывать юзкейсы когда мое решение может не подойти. естественно все это было туфта. и боссы мне сказали well done, потому что это избавляло их от головной боли с тем самым жутким запросом, ну и вообще мое решение было гораздо более идеологически правильным
Здравствуйте, зиг, Вы писали:
зиг>Здравствуйте, Kernan, Вы писали:
K>>Здравствуйте, Klatu, Вы писали:
K>>>Признаю, что ошибался K>>>Не так уж и плохо иметь коллег-идиотов, на самом деле. На их фоне намного проще выгодно выглядеть, не прикладывая особых усилий. Надо только позаботиться, чтобы они не смогли повесить своих собак на тебя. K>>Рассказывай историю. зиг>у меня недавно случился небольшой триумф
Это конечно же очаровательная маленькая история но с каких пор ты стала Клату?
зиг>предыстория: меня на работе окружают идиоты.
Если тебя окружают идиоты, то, возможно, ты — центральный.
Здравствуйте, Kernan, Вы писали:
K>Здравствуйте, зиг, Вы писали:
зиг>>Здравствуйте, Kernan, Вы писали:
K>>>Здравствуйте, Klatu, Вы писали:
K>>>>Признаю, что ошибался K>>>>Не так уж и плохо иметь коллег-идиотов, на самом деле. На их фоне намного проще выгодно выглядеть, не прикладывая особых усилий. Надо только позаботиться, чтобы они не смогли повесить своих собак на тебя. K>>>Рассказывай историю. зиг>>у меня недавно случился небольшой триумф K>Это конечно же очаровательная маленькая история но с каких пор ты стала Клату?
с таких, что тоже страдаю из-за того что же и он. у меня ситуация очень похожая на работе
зиг>>предыстория: меня на работе окружают идиоты. K>Если тебя окружают идиоты, то, возможно, ты — центральный.
нет, иначе бы они меня всегда окружали. но такого не происходит. значит делаю вывод — они действительно идиоты, а я нет
Здравствуйте, зиг, Вы писали:
зиг>Здравствуйте, Kernan, Вы писали:
K>>Здравствуйте, зиг, Вы писали:
зиг>>>Здравствуйте, Kernan, Вы писали:
K>>>>Здравствуйте, Klatu, Вы писали:
K>>>>>Признаю, что ошибался K>>>>>Не так уж и плохо иметь коллег-идиотов, на самом деле. На их фоне намного проще выгодно выглядеть, не прикладывая особых усилий. Надо только позаботиться, чтобы они не смогли повесить своих собак на тебя. K>>>>Рассказывай историю. зиг>>>у меня недавно случился небольшой триумф K>>Это конечно же очаровательная маленькая история но с каких пор ты стала Клату? зиг>с таких, что тоже страдаю из-за того что же и он. у меня ситуация очень похожая на работе
Заведи страничку в ЖЖ и поделись о своих проблемах с незнакомцами там или открой/подними топик о своих проблемах на работе.
зиг>>>предыстория: меня на работе окружают идиоты. K>>Если тебя окружают идиоты, то, возможно, ты — центральный. зиг>нет, иначе бы они меня всегда окружали. но такого не происходит. значит делаю вывод — они действительно идиоты, а я нет
Ага. А ещё у тебя есть белое платье и красные туфельки.
Здравствуйте, Kernan, Вы писали:
K>>>>>Рассказывай историю. зиг>>>>у меня недавно случился небольшой триумф K>>>Это конечно же очаровательная маленькая история но с каких пор ты стала Клату? зиг>>с таких, что тоже страдаю из-за того что же и он. у меня ситуация очень похожая на работе K>Заведи страничку в ЖЖ и поделись о своих проблемах с незнакомцами там или открой/подними топик о своих проблемах на работе.
зачем мне заводить отдельный топик если мои проблемы такие же как у клату? не преумножаем сущности без необходимости.
зиг>>>>предыстория: меня на работе окружают идиоты. K>>>Если тебя окружают идиоты, то, возможно, ты — центральный. зиг>>нет, иначе бы они меня всегда окружали. но такого не происходит. значит делаю вывод — они действительно идиоты, а я нет K>Ага. А ещё у тебя есть белое платье и красные туфельки.
нету
Здравствуйте, minorlogic, Вы писали:
M>Бот , ты столь шикарен , что даже кратко боишься описать проблему технически Сиберякс крут.
которую проблему? которую я описала сообщением выше? описывать подробнее — это значит привлекать предметную область, у меня такого желания нет — посвящать вас в детали моей работы. а вдруг это конфиденциально?
пс: мне вы ставите минусы, считая ботом. интересно, а кибераксу то хоть плюсы ставите, за такого шикарного бота??
пс2: ты что пруфпик пропустил что ли? где черным по белому было что я не бот??? ну задолбали уже с этим ботом!
Здравствуйте, Kernan, Вы писали:
зиг>>у меня недавно случился небольшой триумф K>Это конечно же очаровательная маленькая история но с каких пор ты стала Клату?
Это публичный форум, не?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Долго думал о проблеме быдлокодеров, вот что надумал:
Чем быдлокодер отличается от нормального программиста?
Знания. Можно конечно сказать, что быдлокодер знает мало, а нормальный программист много. Но количество знаний измерить трудно, поэтому это не серьёзный критерий различия. И отсутвие каких-то знаний может не влиять на конечный результат.
Стиль кодирования. Стиль кодирования тоже измерить нельзя. Каждый программист работая в одиночку выработает для себя свою систему правил, выбирая все лучшее из чужих правил и собственного опыта, которые у каждого уникален. К любому правилу стиля кодирования можно придраться, типа оно не совсем понятное, оно не будет работать вот в этой ситуации и т. д. Поэтому это тоже не серьёзный критерий различия.
Ошибки. Вот здесь ситуация получше. Ошибки совершают все и нормальные программисты и быдлокодеры. Быдлокодер видит коренную причину ошибки в недостатках ЯП или технологии. Исправить корень ошибки он не может, поэтому продолжает совершать эту ошибку снова и снова, маскировать её, ставить заплатки, переводить стрелки и т. д. Нормальные программист видит корневую причину ошибки в своем недостаточном понимании правильной работы с ЯП или технологией. Ему достаточно 1 раз совершить ошибку, понять где у него пробелы в знаниях ЯП или технологии и минимизировать дальнейшее появление этой ошибки.
Это выливается в следующее главное отличие быдлокодера от нормального программиста: Отношение времени написания кода (ВНК) ко времени его отладки (ВОК) у быдлокодера маленькое (<<1), а у нормального программиста большое (>1). Иными словами быдлокодер больше времени тратит на отладку кода, чем на его написание, а нормальные программист наоборот, тратит основное время на написание и чуть-чуть на отладку.
Метрики кода. Я мало использовал метрики кода, но уверен на 99% у быдлокодера и нормального программиста они будут отличаться.
Итог. Если в компании используется bug tracker, task management system, version control system, то соотношение ВНК \ ВОК, легко измерить для каждого программиста. Можно мерить метрики кода, до и после коммита каждого программиста, вычислять дельту, считать статистику. Можно группировать ошибки по разным критериям (например важность, серьёзность) и смотреть сколько кто какие ошибки делает. У быдлокодера и нормально программиста спектр ошибок будет отличаться. При использовании unit test и Continuous Integration можно следить чьи комиты, чаще приводят к невыполнению unit test'ов. Много чего еще можно придумать, чтобы вывести быдлокодера на чистую воду.
Почему нормальные программисты не хотят терпеть быдлокодеров?
Самореализация. Любой человек хочет самореализации, адекватной его способностям. Если нормальные программист тратит значительное время на обезвреживание продуктов продуктов жизнедеятельности быдлокодера, то это не самореализация, адекватная его способностям. Это время он может сделать что-то более полезное для себя и для общества.
Страх. Халтура быдлокодера может остаться незамеченной во время разработки и проявиться только у заказника или на финальной стадии разработки при развертывании или интеграции. А если система прямо или косвенно связана с жизнью людей? См. Therac-25.
Лень. Кто хочет работать по выходным, устраняя халтуры быдлокодера, которые вылезли на финальной стадии разработки при развертывании или интеграции?
Меркантильные интересы. Если эффективность быдлокодера отрицательная, то зачем ему платят зарплату, лучше его уволить и повысить зарплату нормальным программистам. Продукт компании будет качественней, рейтинг компании выше, зарплаты тоже выше.
Итог. Все хотят работать в преуспевающей компании, которая приносят пользу обществу, при этом не перерабатывать сверхурочно.
Что делать если в команде быдлокодер?
1) Предложите ввести code metrics, bug tracker, task management system, version control system, unit test, Continuous Integration (если их нет) и вычисление статистики. Спросят зачем статистика, можно не стесняясь прямо сказать, чтобы выявить слабых программистов и им помочь, отправить на курсы, скорректировать даваемые им задачи и т. д. Сильным же программистам можно премии давать.
2) если 1 пункт по каким-то причинам не прошел, сказать, что вы с этим человеком работать не хотите. Пускай вас направят на разные задачи. Если Вы у быдлокодера руководитель, скажите что в данные момент на проекте нет задач соответствующих квалификации быдлокодера. Если Вас попросят просто контролировать качество работы быдлокодера (и в какой-то мере нести ответственность на него), скажите что быдлокодер игнорирует Ваши поручения и рекомендации (типа кодит в своем стиле дурацком и меня не слушает). Если спросят Вашу мотивацию, можно прямо сказать о пунктах раздела Почему нормальные программисты не хотят терпеть быдлокодеров?
3) Если 2 пункт не прошел, поставить вопрос о своем увольнении, еще раз более конкретно рассказав о пунктах Почему нормальные программисты не хотят терпеть быдлокодеров?
Отвечайте на это сообщение, только если у Вас хорошее настроение и в Вашем ответе планируются только конструктивные вопросы и замечания http://rsdn.ru/Info/rules.xml
UA>работает только на быдлозадачах которые решаются 100 раз по кругу.
Не понял,
я бы сказал даже наоборот, если задача поставлена плохо то даже нормальный программист потратит большое время на её отладку, в следствии её постепенного уточнения. Если исходная задача меняется то, для соотношения ВНК \ ВОК это должно рассматриваться как новая задача. И количество изменений задачи после её начала реализации программистом это уже показатель качества работы того кто ставит задачу.
Отвечайте на это сообщение, только если у Вас хорошее настроение и в Вашем ответе планируются только конструктивные вопросы и замечания http://rsdn.ru/Info/rules.xml
Здравствуйте, igor-booch, Вы писали:
UA>>работает только на быдлозадачах которые решаются 100 раз по кругу.
Это значит что уникальность и сложность задач для хорошего программиста величина константная.
IB>Не понял, IB>я бы сказал даже наоборот, если задача поставлена плохо то даже нормальный программист потратит большое время на её отладку, в следствии её постепенного уточнения. Если исходная задача меняется то, для соотношения ВНК \ ВОК это должно рассматриваться как новая задача. И количество изменений задачи после её начала реализации программистом это уже показатель качества работы того кто ставит задачу.
Что значит задача плохо поставлена? Хорошему программисту достаточно сказать пару предложений и он все поймет и сделает как нужно, а быдлокодеру хоть нарисуй диаграмму классов со всеми функциями и он все равно будет говорить что задача ему видители плохо поставлена.
Здравствуйте, igor-booch, Вы писали:
UA>>работает только на быдлозадачах которые решаются 100 раз по кругу.
IB>я бы сказал даже наоборот, если задача поставлена плохо то даже нормальный программист потратит большое время на её отладку, в следствии её постепенного уточнения. Если исходная задача меняется то, для соотношения ВНК \ ВОК это должно рассматриваться как новая задача. И количество изменений задачи после её начала реализации программистом это уже показатель качества работы того кто ставит задачу.
Ага, т. е. по-вашему много отлаживать приходится если программист ненормальный или задача ненормальная или ставят ее ненормальные постановщики. Т. е. подразумевается полный контроль за средой, а если что-то идет не так — значит кто-то косячит; это вообще говоря и есть как сказал UA — "задачи которые решаются 100 раз по кругу." Не знаю, если педалить сайты на джумле, наверное, так оно и есть, однако в реальной жизни часто бывают задачи в духе "Нам надо заинтегрироваться с этой хренью (которая много метров и без документации и писалась индусами не один год). За две недели. Выполнять! — Есть выполнять!". Не, конечно, при этом можно собрать митинг, назначить людей на задачу, написать документацию, провести анализ системы, сделать прототип — ну шо там обычно в умных книжках пишут, ах-да — еще юнит-тесты написать, однако сроки будуь про***ы еще на этапе "собрать митинг", не говоря уже про бюджет. Или другой пример: "Надо заимплементить такую вот фичу (а с такими фичами, да может быть и с этой платформой никто в фирме не работал и близко). Через две недели. Справишься? — А куда я денусь." Конечно, можно опять собрать митинг и открыть вакансию разработчика таких вот фич, но результат..
MP>бывают задачи в духе "Нам надо заинтегрироваться с этой хренью (которая много метров и без документации и писалась индусами не один год)".
Согласен такие задачи, могут долго отлаживаться даже хорошим программистом, даже если поставлены хорошим аналитиком. Это проблема.
Для таких задач то, что я написал не подходит, и если в компании такие задачи преобладают, то все-равно кто работает, быдлокодеры или хорошие программисты, потому-что
тут быдлокодер может оказаться даже в выигрыше: индус индуса лучше поймет.
Отвечайте на это сообщение, только если у Вас хорошее настроение и в Вашем ответе планируются только конструктивные вопросы и замечания http://rsdn.ru/Info/rules.xml
Здравствуйте, igor-booch, Вы писали:
IB>Чем быдлокодер отличается от нормального программиста?
Я предлагаю делить программистов на задравших нос и считающих всех остальных тупыми — потому как сам "умный".
Как только такой программист начинает задирать нос и выводить класс людей "быдлокодеров" — гнать его надо из команды, т.к. это "звезда", а со "звездой" каши не сваришь.
Здравствуйте, Alex Dav, Вы писали:
AD>Здравствуйте, igor-booch, Вы писали:
IB>>Чем быдлокодер отличается от нормального программиста? AD>Я предлагаю делить программистов на задравших нос и считающих всех остальных тупыми — потому как сам "умный". AD>Как только такой программист начинает задирать нос и выводить класс людей "быдлокодеров" — гнать его надо из команды, т.к. это "звезда", а со "звездой" каши не сваришь.
А я тоже против деления людей на классы, я как раз попытался уйти от этого в посте, ввести непрерывную шкалу, а не дискретную. Если есть отношения ВНК \ ВОК, есть показатели статистики, метрики кода, то понятия "быдлокодер" и "хороший программист" не нужны. У каждого для каждой задачи свои количественные показатели статистики. То есть человек может иметь большое ВНК \ ВОК для одних задач и маленькое для других. У меня например ВНК \ ВОК при работе с Oracle маленькое, а при работе с MS SQL Server большое. В Oracle я быдлокодер, в MS SQL Server нормальный программист.
А то что я употребил в посте слова "быдлокодер" и "нормальный программист", это тоже самое, что сравнить хорошую и плохую питьевую воду по химическому составу. Вы же не отрицаете что есть хорошая и плохая вода. И вы так же понимаете, что разница между хорошей и плохой водой не качественная, а количественная (количественный химический состав). То есть в разговорной речи разница кажется качественной, а если капнуть глубже разница количественная.
Ещё, отрицать проблему наличия в команде и на рынке труда низкоквалифицированных программистов, которые со временем не повышают свою квалификацию, я думаю не стоит. Топикпастер обратился именно с такой проблемой. Как Вы сами видите решение этой проблемы?
Отвечайте на это сообщение, только если у Вас хорошее настроение и в Вашем ответе планируются только конструктивные вопросы и замечания http://rsdn.ru/Info/rules.xml
Здравствуйте, igor-booch, Вы писали:
IB>Ещё, отрицать проблему наличия в команде и на рынке труда низкоквалифицированных программистов, которые со временем не повышают свою квалификацию, я думаю не стоит. Топикпастер обратился именно с такой проблемой. Как Вы сами видите решение этой проблемы?
Здравствуйте, зиг, Вы писали:
зиг>Здравствуйте, igor-booch, Вы писали:
IB>>Ещё, отрицать проблему наличия в команде и на рынке труда низкоквалифицированных программистов, которые со временем не повышают свою квалификацию, я думаю не стоит. Топикпастер обратился именно с такой проблемой. Как Вы сами видите решение этой проблемы?
зиг>а зачем вы их нанимаете? нанимайте других.
1) Насколько я понимаю, здесь обсуждается ситуация, когда человек страдающий от быдлокодера не имеет полномочий нанимать и увольнять.
2) На собеседовании трудно точно определить квалификацию программиста, можно натренировать проходить собеседования, иногда в компаниях к собеседованиям относятся наплевательски
3) Низкоквалифицированного программиста могут взять на вырост, в надежде что он повысит свою квалификацию через год, а потом с ним трудно расстаться морально (мы с ответе за тех кого приручили)
4) Быдлокодер может быть носителем сокровенных знаний, чьи-то протеже и т. д., за это ему могут многое прощать
5) Быдлокодер может быть очень прилежным и дисциплинированным, много работать, это может понравиться начальству
lyrics — code monkey
Code Monkey get up get coffee
Code Monkey go to job
Have boring meeting with boring manager Rob
Rob say Code Monkey very diligent
But his output stink
His code not functional or elegant
Отвечайте на это сообщение, только если у Вас хорошее настроение и в Вашем ответе планируются только конструктивные вопросы и замечания http://rsdn.ru/Info/rules.xml
Здравствуйте, зиг, Вы писали:
зиг>Здравствуйте, minorlogic, Вы писали:
зиг>пс: мне вы ставите минусы, считая ботом. интересно, а кибераксу то хоть плюсы ставите, за такого шикарного бота??
Ему раньше ставили плюсы, потом он у ехал в США и у него случилось США головного мозга. зиг>пс2: ты что пруфпик пропустил что ли? где черным по белому было что я не бот??? ну задолбали уже с этим ботом!
Сисек не было, так что...
Здравствуйте, зиг, Вы писали:
зиг>Здравствуйте, minorlogic, Вы писали:
M>>Бот , ты столь шикарен , что даже кратко боишься описать проблему технически Сиберякс крут. зиг>которую проблему? которую я описала сообщением выше? описывать подробнее — это значит привлекать предметную область, у меня такого желания нет — посвящать вас в детали моей работы. а вдруг это конфиденциально?
зиг>пс: мне вы ставите минусы, считая ботом. интересно, а кибераксу то хоть плюсы ставите, за такого шикарного бота?? зиг>пс2: ты что пруфпик пропустил что ли? где черным по белому было что я не бот??? ну задолбали уже с этим ботом!
Так ты же не искусственный интеллект, а просто мужик переодетый бабой. Зачем тебе ставить плюсы?
Здравствуйте, denisko, Вы писали:
D>Здравствуйте, зиг, Вы писали:
зиг>>Здравствуйте, minorlogic, Вы писали:
M>>>Бот , ты столь шикарен , что даже кратко боишься описать проблему технически Сиберякс крут. зиг>>которую проблему? которую я описала сообщением выше? описывать подробнее — это значит привлекать предметную область, у меня такого желания нет — посвящать вас в детали моей работы. а вдруг это конфиденциально?
зиг>>пс: мне вы ставите минусы, считая ботом. интересно, а кибераксу то хоть плюсы ставите, за такого шикарного бота?? зиг>>пс2: ты что пруфпик пропустил что ли? где черным по белому было что я не бот??? ну задолбали уже с этим ботом! D>Так ты же не искусственный интеллект, а просто мужик переодетый бабой. Зачем тебе ставить плюсы?
Здравствуйте, зиг, Вы писали:
зиг>Здравствуйте, denisko, Вы писали:
D>>Здравствуйте, зиг, Вы писали:
зиг>>>Здравствуйте, minorlogic, Вы писали:
M>>>>Бот , ты столь шикарен , что даже кратко боишься описать проблему технически Сиберякс крут. зиг>>>которую проблему? которую я описала сообщением выше? описывать подробнее — это значит привлекать предметную область, у меня такого желания нет — посвящать вас в детали моей работы. а вдруг это конфиденциально?
зиг>>>пс: мне вы ставите минусы, считая ботом. интересно, а кибераксу то хоть плюсы ставите, за такого шикарного бота?? зиг>>>пс2: ты что пруфпик пропустил что ли? где черным по белому было что я не бот??? ну задолбали уже с этим ботом! D>>Так ты же не искусственный интеллект, а просто мужик переодетый бабой. Зачем тебе ставить плюсы?
зиг>почему ты думаешь что я мужик переодетый бабой?
Сибирякс мужик, зиг женщина. Как бы другого не дано.
Здравствуйте, denisko, Вы писали:
зиг>>>>пс: мне вы ставите минусы, считая ботом. интересно, а кибераксу то хоть плюсы ставите, за такого шикарного бота?? зиг>>>>пс2: ты что пруфпик пропустил что ли? где черным по белому было что я не бот??? ну задолбали уже с этим ботом! D>>>Так ты же не искусственный интеллект, а просто мужик переодетый бабой. Зачем тебе ставить плюсы?
зиг>>почему ты думаешь что я мужик переодетый бабой? D>Сибирякс мужик, зиг женщина. Как бы другого не дано.
сибирякс сейчас находится в штатах. я в другом месте. ты можешь попросить админов наши айпи чтобы убедиться что мы пишем из географически противоположных локаций.
а еще время. — он пишет в основном когда в россии ночь,а в штатх день. я соответственно наоборот. ни один человек не смг бы не спать ни днями ни ночами чтобы только эмулировать такое поведение
Здравствуйте, зиг, Вы писали:
зиг>он пишет в основном когда в россии ночь,а в штатх день. я соответственно наоборот. ни один человек не смг бы не спать ни днями ни ночами чтобы только эмулировать такое поведение
Хм. У дохтура, не к ночи буде помянут, вроде как получалось
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Как бы не работает. Мне для сложных задач приходиться писать кучу фреймворков и отладочной информации, которая может занимать до 90% всей задачи.
Как пример приведу алгоритмы роутинга (поиска кратчайшего маршрута, картография). В одной из лидирующих фирм по этой теме 5% кода занималось роутингом , остальные отладкой.
Здравствуйте, minorlogic, Вы писали:
M>Как бы не работает. Мне для сложных задач приходиться писать кучу фреймворков и отладочной информации, которая может занимать до 90% всей задачи.
Почему?
Написание фреймворка это тоже задача, причем отдельная от основной задачи.
Создание подсистемы логирования (запись отладочной информации) увеличит время разработки и облегчит поиск и устранение ошибок. Отношение ВНК \ ВОК у Вас повысится.
То есть задачи нужно декомпозировать и для каждой отдельно вычислять ВНК \ ВОК. Это конечно большая нагрузка менеджмент.
Отвечайте на это сообщение, только если у Вас хорошее настроение и в Вашем ответе планируются только конструктивные вопросы и замечания http://rsdn.ru/Info/rules.xml
Здравствуйте, Kernan, Вы писали:
K>Это я видел. Ты расскажи как ты смог отгородится от перевода собак на себя, какие профиты получил от того, что не идиот ну и т.д.
Самое главное — я соорудил систему телеметрии, которая отправляет стектрейсы всех исключений на сервер, заодно информацию о разных событиях. Так что если кто жалуется "твоя программа падает", то я копаюсь в логах, разбираюсь кто на самом деле виноват и иду тыкать его мордой в лужу — с железобетонными доказательствами на руках.
Еще один важный аспект — если я вижу, что кто-нибудь собирается сделать неправильно, то не стоит ему про это говорить, рассказывать ему про сложный/ненадежный код, плохие практики и так далее. Решит, что я под него копаю, и окрысится. Поэтому лучше подождать, пока он как следует залезет в болото, и уже тогда с железобетонными аргументами и готовым решением проблемы идти и дать ему хорошего пинка. При этом, естественно, надо не забывать всем побольше рассказывать, как ты хочешь ему помочь.
В общем, как показал мой неудачный опыт, честный и прямой подход не работает — считают, что я плохо работаю в команде или интриган. Поэтому все-таки приходится плести интриги, и тогда меня считают хорошим работником
А профиты нормальные — повысили, зарплату подкинули.
Здравствуйте, Klatu, Вы писали:
K>Здравствуйте, Kernan, Вы писали:
K>>Это я видел. Ты расскажи как ты смог отгородится от перевода собак на себя, какие профиты получил от того, что не идиот ну и т.д.
K>Самое главное — я соорудил систему телеметрии, которая отправляет стектрейсы всех исключений на сервер, заодно информацию о разных событиях. Так что если кто жалуется "твоя программа падает", то я копаюсь в логах, разбираюсь кто на самом деле виноват и иду тыкать его мордой в лужу — с железобетонными доказательствами на руках. K>Еще один важный аспект — если я вижу, что кто-нибудь собирается сделать неправильно, то не стоит ему про это говорить, рассказывать ему про сложный/ненадежный код, плохие практики и так далее. Решит, что я под него копаю, и окрысится. Поэтому лучше подождать, пока он как следует залезет в болото, и уже тогда с железобетонными аргументами и готовым решением проблемы идти и дать ему хорошего пинка. При этом, естественно, надо не забывать всем побольше рассказывать, как ты хочешь ему помочь.
Кулстори. K>В общем, как показал мой неудачный опыт, честный и прямой подход не работает — считают, что я плохо работаю в команде или интриган. Поэтому все-таки приходится плести интриги, и тогда меня считают хорошим работником
Забавно. Когда ты честный ты интригант, а когда интригант, то честный. Что-то не так в датском королевстве.
Тактически вы выиграли, а стратегически — проиграли. Из-за такого поведения вы всегда будете оставать одиночкой, и ваше мнение не будут слушать, а уже тем более спрашивать. Даже несмотря на то, что вы будете говорить правильные и разумные вещи. Правильнее было бы подсказать команде "как надо", тем самым заработав себе маленький кусочек доверия и авторитета. То что проблему решили именно вы забудется уже через неделю, потому что в конечном итоге руководству это не интересно. Главное чтобы проблема была решена в принципе.
Здравствуйте, Klatu, Вы писали:
K>почему это не будут?
Потому что ты выбрал одиночную игру
K>Ты читал вообще, о чем я писал?
Дай, я угадаю — ты умный, а все уроды
K>Не уроды, а просто глупые. K>А что поделаешь, правило 95% еще никто не отменял.
Обидно когда более глупые занимают более высокие позиции и получают больше денег? А главное — непонятно, почему же так, верно?
Все неудачники, которых мне когда-либо приходилось удалять из команды, почему то всегда были непризнанными гениями, окруженными некомпетентными бездарями-коллегами и неблагодарным начальником-самодуром.
Здравствуйте, abibok, Вы писали:
A>Обидно когда более глупые занимают более высокие позиции и получают больше денег? А главное — непонятно, почему же так, верно?
Да не, почему — понятно. И что с этим делать, тоже понятно. Так что всё нормально, не переживай за меня
A>Все неудачники, которых мне когда-либо приходилось удалять из команды, почему то всегда были непризнанными гениями, окруженными некомпетентными бездарями-коллегами и неблагодарным начальником-самодуром.
Бедняга, одни сплошные неудачники тебя окружают. Может быть, проблема на самом деле в тебе?
Здравствуйте, abibok, Вы писали:
A>Тактически вы выиграли, а стратегически — проиграли. Из-за такого поведения вы всегда будете оставать одиночкой, и ваше мнение не будут слушать, а уже тем более спрашивать. Даже несмотря на то, что вы будете говорить правильные и разумные вещи. Правильнее было бы подсказать команде "как надо", тем самым заработав себе маленький кусочек доверия и авторитета. То что проблему решили именно вы забудется уже через неделю, потому что в конечном итоге руководству это не интересно. Главное чтобы проблема была решена в принципе.
на самом деле я вначале подходила к самому "эксперту" и рассказывала о своем решении, наедине. он его не понял. он вообще узколоб — т.е. я замечаю что не только я не могу ему объяснить каких-то простых вещей, но и другие люди тоже по несколько раз повторяют, вдалбливают... короче когда я поняла что он не хочет меня слушать — ну ладно, пришлось его боссам показывать
Здравствуйте, зиг, Вы писали:
зиг>Здравствуйте, Kernan, Вы писали:
K>>Здравствуйте, Klatu, Вы писали:
K>>>Признаю, что ошибался K>>>Не так уж и плохо иметь коллег-идиотов, на самом деле. На их фоне намного проще выгодно выглядеть, не прикладывая особых усилий. Надо только позаботиться, чтобы они не смогли повесить своих собак на тебя. K>>Рассказывай историю. зиг>у меня недавно случился небольшой триумф
зиг>предыстория: меня на работе окружают идиоты.
1. Когда один человек считает всех вокруг идиотами, это невольно наталкивает на нехорошие мысли. Обычно кто идиот, а кто не идиот, судят по отзывам третьих лиц.
2. Если предположить, что это действительно так, то почему ты работаешь в компании идиотов? В другие не берут?
Длинные "ухания" и увлекательнейшие рассказы про "цмски" поскипаны.
Здравствуйте, Aviator, Вы писали:
A>1. Когда один человек считает всех вокруг идиотами, это невольно наталкивает на нехорошие мысли. Обычно кто идиот, а кто не идиот, судят по отзывам третьих лиц.
так как ни третьих действующих лиц, ни вторых тут нет, то придется судить вам по мнению первого лица, то бишь меня.
A>2. Если предположить, что это действительно так, то почему ты работаешь в компании идиотов? В другие не берут?
а) бросать после полугода работы было бы глупо. таких бегунов никто не любит. свое я здесь взять тоже могу — научилась многим интересным вещам. поменять конечно хочу
б) да, я признаю, найти хорошую работу в чужой стране с чуждым языком сложновато. в россии/украине мне это было не в пример проще.
A>Длинные "ухания" и увлекательнейшие рассказы про "цмски" поскипаны.
A>Обидно когда более глупые занимают более высокие позиции и получают больше денег?
Это, кстати, тема отдельная — и весьма интересная.
Почему во многих случаях как раз более глупые занимают позицию выше, чем их умные коллеги? Я встречал эту ситуацию в России, но, честно сказать, не вижу ни одной причины, почему такое не может происходить в капиталистическом мире.
Тут все очень просто. "Высота позиции" во многих случаях определяется вовсе не умом или грамотностью, а — лояльностью (негативисты, можете назвать это "заднице-лизанием", суть не меняется). Еще фактор — управляемость (простота контроля), умного человека со своим мнением контролировать существенно сложнее. А уж тем более сложно умному человеку "вписать" какую-нибудь гнилую идеологию. Каким бы сильным не было внешнее давление, внутреннее отторжение не даст проникнуться такой идеологией.
Так что, господа, глупость начальников зачастую обусловлена вполне разумными и естественными причинами. Отсюда и конфликты "я начальник — ты дурак".
Здравствуйте, igor-booch, Вы писали:
IB>Отношение времени написания кода (ВНК) ко времени его отладки (ВОК) у быдлокодера маленькое (<<1), а у нормального программиста большое (>1).
Да, в этом что-то есть...
IB>Метрики кода. Я мало использовал метрики кода, но уверен на 99% у быдлокодера и нормального программиста они будут отличаться.
Одно но. "Быдлокодеры", как вы выражаетесь, умеют писать компактный и простой код. Пусть неправильный, без обработки ошибок, глючащий ровно в 5% случаев и т.п. "Настоящий программист" же практически всегда начинает увлекаться overengineering'ом, что ведёт к увеличению сроков, увеличению объёмов работы и программы (которая не лезет в память в области embedded программирования), увеличению сложности (никто потом не разберётся, нужно нанимать более высокооплачиваемых специалистов). Мысль, надеюсь понятна? Ничего не хочу сказать хорошо это или плохо. Скорей хорошо, потому, что потребитель в итоге получает более качественный продукт, который просто и незаметно работает годами как положено и это даже никто не замечает. В случае с "быдлокодом" же имеем постоянное исправление ошибок и fun от этого процесса доставляющий всем. Самому "быдлокодеру", руководству, потребителю. А от overengineering никакого fun. Вот и думай.
IB>Итог. Если в компании используется bug tracker, task management system, version control system, то соотношение ВНК \ ВОК, легко измерить для каждого программиста. Можно мерить метрики кода, до и после коммита каждого программиста, вычислять дельту, считать статистику. Можно группировать ошибки по разным критериям (например важность, серьёзность) и смотреть сколько кто какие ошибки делает. У быдлокодера и нормально программиста спектр ошибок будет отличаться. При использовании unit test и Continuous Integration можно следить чьи комиты, чаще приводят к невыполнению unit test'ов. Много чего еще можно придумать, чтобы вывести быдлокодера на чистую воду.
IB>Меркантильные интересы. Если эффективность быдлокодера отрицательная, то зачем ему платят зарплату, лучше его уволить и повысить зарплату нормальным программистам. [/i]
См. выше. Не такая уж и отрицательная. Где-то лучше, где-то сравнимо, где-то и отрицательная. Но всем доставляет и все рады -- процесс идёт.
IB>1) Предложите ввести code metrics, bug tracker, task management system, version control system, unit test,
Увы, это никому не нужно обычно. Багтрекера боятся, потому, что потом туда смотрит начальство, которое не понимает, что ошибки есть всегда, их много, и все исправить невозможно. task management актуален скорей только для очень больших контор. VCS -- пользоваться не умеют и как следствие не хотят. unit test -- а их писать нужно, а кому это нужно, хотя может и жизнь заставит, как и VCS. Смысл же code metrics ускользает вовсе. Не факт, что чем больше -- тем лучше (overengineering), равно как и наоборот.
IB>2) если 1 пункт по каким-то причинам не прошел, сказать, что вы с этим человеком работать не хотите. Пускай вас направят на разные задачи. Если Вы у быдлокодера руководитель, скажите что в данные момент на проекте нет задач соответствующих квалификации быдлокодера. Если Вас попросят просто контролировать качество работы быдлокодера (и в какой-то мере нести ответственность на него), скажите что быдлокодер игнорирует Ваши поручения и рекомендации (типа кодит в своем стиле дурацком и меня не слушает). Если спросят Вашу мотивацию, можно прямо сказать о пунктах раздела Почему нормальные программисты не хотят терпеть быдлокодеров?
IB>3) Если 2 пункт не прошел, поставить вопрос о своем увольнении,
Ну и катись на все 4 стороны. Незаменимых у нас нет, а "звёзд" не нужно (они выпендриваются дофига, им зарплату бОльшую платить нужно, вобщем будоражат коллектив почём зря). Ага?