Приехал жрец. Любимый ученик Рабиндраната Тагора, Бьерна Страуструпа, Кернигана и Ричи. И приехал не куда-нибудь, а прям в нашу скромную фирму, которая уже не знает, как это счастье пережить.
А, если серьезно, приняли к нам на работу нового кодера. Супермозг, владеет пятью языками программирования. Правда, локалку у себя на машине полдня не может настроить, да еще жалуется, что это не его работа, а системного администратора, понимаешь.
Ничего толкового товарищ пока еще не сделал, но уже все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
Уж мы и намекали товарищу, что у нас не Майкрософт, и начальнику говорили, чтобы его куда-нибудь подальше от нас убрал — все бесполезно. Товарищ молчит, как рыба об лед, начальник смеется, и обещает, что "все еще наладится". Знает ли кто-нибудь гуманный способ перевоспитать этого чудо-кодера, или проще всем отделом скинуться и нанять киллера эконом-класса?
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>Приехал жрец. Любимый ученик Рабиндраната Тагора, Бьерна Страуструпа, Кернигана и Ричи. И приехал не куда-нибудь, а прям в нашу скромную фирму, которая уже не знает, как это счастье пережить. S>А, если серьезно, приняли к нам на работу нового кодера. Супермозг, владеет пятью языками программирования. Правда, локалку у себя на машине полдня не может настроить, да еще жалуется, что это не его работа, а системного администратора, понимаешь.
Отчасти он прав.
S>Ничего толкового товарищ пока еще не сделал, но уже все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так
Если отсутствует "контроль версий" то у вас и в правду проблемы.
S>, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
Вообще прежде чем учить людей жить и работать приличные люди разбираются в том что есть на сегодня, делают что то полезное, устанавливают рабочие отношения. А потом уже лезут с рацпредложениями, иначе только отношения с коллегами испортишь. А что плохого в дебаггере?
S>Уж мы и намекали товарищу, что у нас не Майкрософт, и начальнику говорили, чтобы его куда-нибудь подальше от нас убрал — все бесполезно. Товарищ молчит, как рыба об лед, начальник смеется, и обещает, что "все еще наладится". Знает ли кто-нибудь гуманный способ перевоспитать этого чудо-кодера, или проще всем отделом скинуться и нанять киллера эконом-класса?
Надо поставить ему конкретную задачу и посмотреть как справиться.
Make flame.politics Great Again!
Re[2]: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>Ничего толкового товарищ пока еще не сделал, но уже все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
А матом-то он хоть умеет ругаться?
El pueblo unido jamás será vencido.
Re[2]: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, bl-blx, Вы писали:
BB>А матом-то он хоть умеет ругаться?
требование "профессиональное владение матом" является необходимым только для сисадмина и системного инженера
если эту способность проявляет разработчик, то скорее всего это плохой разработчик
(исключение можно сделать для писателей драйверов и т.п.)
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>Приехал жрец. Любимый ученик Рабиндраната Тагора, Бьерна Страуструпа, Кернигана и Ричи. И приехал не куда-нибудь, а прям в нашу скромную фирму, которая уже не знает, как это счастье пережить.
Милостивый государь, а извольте нам поведать ваш опыт работы и возраст, чтоб наши скромные советы были приближены к "реальности".
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>Приехал жрец. Любимый ученик Рабиндраната Тагора, Бьерна Страуструпа, Кернигана и Ричи. И приехал не куда-нибудь, а прям в нашу скромную фирму, которая уже не знает, как это счастье пережить.
S>А, если серьезно, приняли к нам на работу нового кодера. Супермозг, владеет пятью языками программирования. Правда, локалку у себя на машине полдня не может настроить, да еще жалуется, что это не его работа, а системного администратора, понимаешь.
S>Ничего толкового товарищ пока еще не сделал, но уже все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
S>Уж мы и намекали товарищу, что у нас не Майкрософт, и начальнику говорили, чтобы его куда-нибудь подальше от нас убрал — все бесполезно. Товарищ молчит, как рыба об лед, начальник смеется, и обещает, что "все еще наладится". Знает ли кто-нибудь гуманный способ перевоспитать этого чудо-кодера, или проще всем отделом скинуться и нанять киллера эконом-класса?
А на работу приняли давно? Или успел задолбать за пол-дня, пока локалку настраивал? Для которой и вправду есть админ
Слова "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны" реально хорошие, и вполне себе могут быть из жизни, а не из детских книжек.
"Реальный" софт, кстати, вполне "реально" писать как раз с контролем версий и т.п., потому как вспоминаю, как это было со мной до знакомства с тогда еще VSS и юнит-тестами, и становится мне страшно...
На опушке за околицей мужики строили коровник.
Работали споро и весело. Получалось х**во.
Re[3]: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, MachoMuchacho, Вы писали:
MM>Здравствуйте, bl-blx, Вы писали:
BB>>А матом-то он хоть умеет ругаться?
MM>требование "профессиональное владение матом" является необходимым только для сисадмина и системного инженера MM>если эту способность проявляет разработчик, то скорее всего это плохой разработчик MM>(исключение можно сделать для писателей драйверов и т.п.)
Не вижу особой разницы. Когда инженерная работа выливается в сплошные исправления
чужих ошибок, только профессиональное владение матом может помочь.
El pueblo unido jamás será vencido.
Re: А как вы перевоспитываете "непризнанных гениев"?
slonopotam75 пишет:
> Ничего толкового товарищ пока еще не сделал, но уже все уши нам > прожужжал
Так его приняли кодером, или сразу начальником ? Как-то резко
товарищ начинает.
> про "юнит-тестирование", "аджиле", "управление требованиями", > "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в > фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, > чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не > "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое > ощущение, что о том, как разрабатывается *реальный софт*, человек знает > исключительно из добрых детских книжек.
Если у вас нету контроля версий и багтрекера (как следствие, скорее
всего отсутствует более-менее надёжное планирование релизов) то
складывается "ощущение, что о том, как разрабатывается *реальный софт*,
вы знаете исключительно из добрых детских книжек" (ну таких, где два
парня в гараже пишут гуглы и виндоусы). Про тесты можно ещё конечно
поспорить, многое зависит от того что за софт вы разрабатываете. Но
обычно либо юнит-тесты, либо интеграционные, либо те и другие вместе
скажем так небесполезны.
> Уж мы и намекали товарищу, что у нас не Майкрософт, и начальнику > говорили, чтобы его куда-нибудь подальше от нас убрал — все бесполезно. > Товарищ молчит, как рыба об лед, начальник смеется, и обещает, что "все > еще наладится".
Возможно, начальник что-то затевает.
Знает ли кто-нибудь гуманный способ перевоспитать этого > чудо-кодера, или проще всем отделом скинуться и нанять киллера > эконом-класса? > А как вы перевоспитываете "непризнанных гениев"?
Поручите ему что-нибудь нужное сделать. Остальное зависит от результата.
--
WBR,
Serge.
Posted via RSDN NNTP Server 2.1 beta
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>Приехал жрец.
... и далее по тексту. Из своего скромного опыта могу сказать только одно: процесс перевоспитания — это взаимное движение навстречу. Позиция "вот мы такие, а ты подстраивайся" проигрышна в принципе. Со всеми вытекающими. У римлян на этот счет был простой ответ — двое умных находят там, где два дурака теряют. Попробуйте взять что-то из его идей и парень сразу же к вам прислушается и все будет ОК.
В действительности все выглядит иначе, чем на самом деле (Станислав Ежи Лец)
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>молчит, как рыба об лед, начальник смеется, и обещает, что "все еще наладится". Знает ли кто-нибудь гуманный способ перевоспитать этого чудо-кодера, S>или проще всем отделом скинуться и нанять киллера эконом-класса?
Зависит от возраста. Если человеку порядка 25 + есть порядка 5-7 лет опыта, то у него скорее всего период, когда не важно _что_ писать, важно _как_ писать. Это почти не лечится. Это пройдет примерно за полгода, через полгода будет неплохой работник. В этом случае начальник прав.
<Подпись удалена модератором>
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>Ничего толкового товарищ пока еще не сделал, но уже все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
Открою секрет, но реальный софт именно так и разрабатывается. При условии, что в качестве софта кто-то заинтересован, а эта реальная разработка не попил бабла. Еще про непрерывную интеграцию забыли, кстати, это тоже очень важно при работе в команде . А если в проекте бардак, и находится человек, который готов этот бардак разгребать — его надо не перевоспитывать, чтобы он научился жить в бардаке, а давать полномочия. Готов он если за собой тянуть проект — пусть тянет, выиграют все (кроме текущего технического руководителя, новичек запросто может занять его место). Ну и далее — у вас 2 варианта:
1) либо товарищь внедряет общеупотребимые практики, вы у него учитесь, в результате проект будет двигаться быстрее. Лекарство простое хочешь разгребать бардак, вот тебе метла. Мести не хочешь, тогда не пеняй, ты не лучше других. А вот если разгребет, то тут многим не поздоровится ;
2) наиболее вероятный — вы этого товарища будете подсиживать, не давая ему раскрыть свой потенциал. В результате либо он уволится, либо его уволите.
Обычно выбирается второй вариант. Потому, лучше увольняйте сразу, не надо товарищу ломать жизнь, для вашей конторы он слишком квалифицирован. Если ему удастся себя проявить, то текущая команда будет уволена, и будет набрана новая.
Re: А как вы перевоспитываете "непризнанных гениев"?
S>Ничего толкового товарищ пока еще не сделал, но уже все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
Не могу удержаться и не вспомнить мои первые дни знакомства с зарубежным проектом в приятном обществе зарубежных коллег. После прочтения IT-Konzept сразу стал задавать "жреческие" вопросы:
— а почему концепт написан только на 2/3?
— а проходил ли концепт согласование?
— а будет ли дописана глава про тестирование?
— а есть ли стандарты кодирования?
— а будет ли юнит-тестирование?
— а почему проектная документация похожа на файлопомойку без всякой систематизации и версионного контроля?
— а почему часть проектной документации лежит не в общедоступном месте, а я в почтовых ящиках программистов?
— а почему при реализации API модулей не используются интерфейсы (и показал как надо — возражений не было)?
— а почему используется глючный MS Source Safe 6?
На все эти вопросы получил стандартный ответ: если ты такой умный — создавай концепт, создавай стандарты кодирования, пиши и поддерживай документацию и т.п., а у нас и без того забот хватает.
В результате, спустя почти 4 года зарубежные коллеги:
— озаботились тестированием
— вдруг обнаружили, что документация была бы полезна
— осознали, что итоговый продукт крепче гранита и юнит-тесты уже не проходят, а хотелось бы
— и т.п.
Как-то вот так... Может и не в вашем контексте, но все же...
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>А, если серьезно, приняли к нам на работу нового кодера. Супермозг, владеет пятью языками программирования. Правда, локалку у себя на машине полдня не может настроить, да еще жалуется, что это не его работа, а системного администратора, понимаешь.
Прав
S>Ничего толкового товарищ пока еще не сделал
Поручаем сделать работу,смотрим на результат без придирок и объективно. Если товарищ обычный балабол это станет ясно, если нет — тоже станет ясно
S>Уж мы и намекали товарищу, что у нас не Майкрософт
Попробуйте убиться об стену, помогает Из этой фразы с высокой вероятностью выплывает, что коллектив с гнильцой
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>Ничего толкового товарищ пока еще не сделал, но уже все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
Реальный софт (а также реальный, РЕАЛЬНЫЙ и реальный) разрабатывается по-разному. Если у вас всё настолько правильно, то почему бы не объяснить товарищу, почему у вас всё именно так, а не как-нибудь иначе? Ну а если, например, "управление требованиями" для вас в принципе пустой звук — то... То вам самим ещё учиться и учиться.
S>Уж мы и намекали товарищу, что у нас не Майкрософт, и начальнику говорили, чтобы его куда-нибудь подальше от нас убрал — все бесполезно. Товарищ молчит, как рыба об лед, начальник смеется, и обещает, что "все еще наладится". Знает ли кто-нибудь гуманный способ перевоспитать этого чудо-кодера, или проще всем отделом скинуться и нанять киллера эконом-класса?
Я вот думаю, а что вас так беспокоит? Сам факт нахваливаний, или есть ещё что-то? Скажем, товарища этого прочат на место руководителя, ещё что-то в этом духе. А то, знаешь, просить начальника "убрать" кого-то только потому, что ему нечто нравится, это как-то не по-товарищески.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re: А как вы перевоспитываете "непризнанных гениев"?
Здравствуйте, slonopotam75, Вы писали:
S>А, если серьезно, приняли к нам на работу нового кодера. Супермозг, владеет пятью языками программирования. Правда, локалку у себя на машине полдня не может настроить, да еще жалуется, что это не его работа, а системного администратора, понимаешь.
Ну, я бы тоже не смог полдня настроить локалку. Локалку обычно админ настраивает
S>Ничего толкового товарищ пока еще не сделал, но уже все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
Все очень просто. Взять его, взять команду, посадить вместе и посмотреть, что из этого можно внедрить в жизнь. Аргументы "за" и "против". То, что можно внедрить, внедрить. Посмотреть на результаты, сделать выводы. Потом опять пройтись по списку, опять "за" и "против", опять внедрить.
Что-то отбросите как неподходящее на данном этапе, кое-что внедрите. Кое-что отложите, из-за того, что рисковано. Главное улучшать процесс постоянно.
Если люди настроены на улучшение процесса, то все пойдет гладко (более-менее ). Главное чтобы впереди было не самоутверждение по типу: "какой я крутой, я знаю что такое юнит-тесты", как и выпендрежа по типу "я написал 1000 строк реального софта за час! А ты все возишься с этой функцией"
S>Уж мы и намекали товарищу, что у нас не Майкрософт, и начальнику говорили, чтобы его куда-нибудь подальше от нас убрал — все бесполезно. Товарищ молчит, как рыба об лед, начальник смеется, и обещает, что "все еще наладится". Знает ли кто-нибудь гуманный способ перевоспитать этого чудо-кодера, или проще всем отделом скинуться и нанять киллера эконом-класса?
Вам не перевоспитать надо, а делать свою работу. И такие люди в этом могут быть полезны.
Re: А как вы перевоспитываете "непризнанных гениев"?
же все уши нам прожужжал про "юнит-тестирование", "аджиле", "управление требованиями", "контроль версий", "трэкеры", "паттерны", и про то, что все у нас в фирме не так, и отлаживаем мы софт при помощи дебаггера вместо того, чтобы писать тесты, и "паттерны" мы не используем, и "тикеты" не "вешаем", и энергия Ци у нас течет не в ту сторону. Короче, такое ощущение, что о том, как разрабатывается реальный софт, человек знает исключительно из добрых детских книжек.
Есть две крайности — первая это Cowboy Coding, это когда команда работает без четкой методологии, управляемый хаос так сказать. Обычно это бывает в хобби проектах и стартапах, маленьких фирмах. Вторая крайность, это Его Величество Процесс, мы все делаем только правильно и никак иначе, у нас есть Библия (одна из методологий возведенная в канон) и мы ее жрецы. Отчасти встречается в корпорациях, но чаще в фирмах (стартапах) сектантского типа
Надо понимать что то что работает в стартапе не будет работать в IBM и наоборот. Методология должна быть адекватна уровню решаемых проектов. Например мой хобби проект написан без единого юнит теста и работает на тысячах девайсов и ни разу не слышал чтобы программа падала. Естественно что такой подход не приемлим для многих других проетов.
Честно сказать, я часто сталкивался с тем, что избыточная методология очень мешает работать. Однажды я работал в конторе где я на неделю писания кода две писал юнит тесты, это как раз был методологический маразм возведенный в абсолют. Значение юнит тестов сильно переоценивалось, среда исполнения юнит тестов была ущербной и глючной, интеграционных тестов не было вовсе. SCM тоже был странный, каждый девелопер работал в своем бранче и интеграция выполнялась через неделю-две после бранча. Получалась такая хрень — я борюсь с багой которую другой девелопер пофиксил в своем бранче неделю назад но еще не интегрировал в транк. Интегрейшн дей был ужасом летящим на крыльях ночи!
В любом случае "чувак" не прав что начал предлагать все поменять не завоевав авторитета вместо поэтапных предложений, если нет контроля версий, то начать надо именно с этого, я не могу понять как можно работать в команде не имея репозитария исходников. Я пользуюсь Subversion даже для хобби проектов которые делаю один — репозитарий сильно упрощает разработку и резервное копирование (я копирую репозитарий svnadmin dump path >backup.bin)
Re: А как вы перевоспитываете "непризнанных гениев"?
вспомнилось из армейского, капитан построил роту и сказал следующее
"тут кто то возомнил себя старослужащим и дедом. дак вот, довожу до вашего сведения, что самый старый тут Я!!!!! вопросы есть?!"
вопросов не последовало
но если честно, то лучше нанимать непризнанных гениев, так как непризнанная гениальность — хороший рычаг управления.. а негений он и сам знает что не гений, такому всё пофиг и выше головы не прыгнет