Программисты от А до Я

В 2006 году закрылся сайт hacknot.info статьи с которого я почитывал. К счастью мистер Эд собрал свои 46 эссе и выпустил книгу, которую можно свободно скачать. (Поищите в google hacknot_book_a4.pdf)

Ниже мой довольно вольный перевод его статьи Programmers from A to Z из раздела peopleware. (Перевод очень вольный, разница между английским англичан, американцев и австралийцев все-таки существенная.)

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

Амбициозный Алексей.

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

Блеющий Борис.

Борис местный террорист, он терроризирует всех, кто сидит рядом с ним, и остается в блаженном неведении, насколько он всех раздражает. Его голос в два раза громче, чем у кого-либо, и он способен разговаривать только криком. Когда Борис говорит, все остальные слушают, хотят ли они этого или нет. Люди в его части офиса знают гораздо больше о личной жизни Бориса, чем они хотели бы, поскольку они слышат приблизительно полдюжины телефонных звонков  от его жены каждый день. Любимый инструмент для пыток у Бориса — микрофон с колонками. Каждое утро он слушает свою голосовую почту через динамики колонок, распаковывая портфель. Ему также нравится громкоговорящая связь, чтобы его руки были свободны, и он мог свободно пользоваться клавиатурой, разговаривая с кем-то еще. Просьба одеть наушники – не помогает, Вы всё равно всё слышите, потому что с помощью большей громкости он пытается сосредоточится и отвлечься от всех посторонних звуков. Он или не понимает и не беспокоится, что он мешает всем остальным, сидящим рядом с ним. Правда, никто не может сказать ему, насколько он невоспитанный.

Высокомерный Василий.

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

Головастый Григорий.

Григорий очень хороший специалист. Он — техник до мозга кости, и восхищается процессом решения проблемы. Однако проблема состоит в том, что Грише нужна только его голова. Время от времени он чувствует себя мозгом на ногах, поскольку сосредоточен только на интеллектуальном труде. Его тело — очень заброшенный контейнер для мозговой функции, на которое он обращает небольшое внимание только для того чтобы удовлетворить свои потребности в еде. В результате его коллеги, которые не слишком хорошо его знают, пугаются его внешнего вида. Перхоть на голове – регулярный посетитель, дурной запах изо рта — постоянный компаньон. Плохо заправленная рубашка. Волосы, не помнящие расчески. Грише, мягко говоря, наплевать, как и что о нём думают. Он действительно не заботится о гигиене и внешнем виде, и ему всё равно, что возможно окружающим это неприятно. К сожалению никто, не в состоянии поговорить с Гришей об этом не обижая его.

Дурковатый Денис.

У Дениса на работе находится только одно полушарие, иначе говоря, парень без царя в голове. Денис живет очень полной жизнью, настолько полной, что его частная жизнь заполняет полностью его профессиональную часть. У него есть несколько хобби, и настолько увлечен ими, что готов говорить о них с коллегами постоянно, и потчевать бесконечными рассказами как он провел выходные и чем занимался, и чем будет занят на следующей неделе. Выглядит, как будто его работа — способ финансировать его многие (часто дорогие) увлечения. Его работа – приходить строго к девяти и уходить ровно в пять. Очень редко его можно застать читающим что-то специфическое связанное с работой в свободное время, или делающим экстраординарное усилие, что бы выполнить работу в срок или закончить очередной этап в проекте. Он всегда убегает во время обеда, чтобы заняться той или иной задачей, но, кажется, он не продуктивен, даже когда он находится в офисе. Денис называет это "уравновешенной жизнью". Может быть он прав.

Елки-палки Егор.

У Егора патологическая привычка написать всё самому. Из-за гордости и амбиций, он редко удовлетворен покупкой продукта или библиотеки, которая полезна в проекте и позволяет сэкономить время. Он считает, что все остальные некомпетентны, всякий раз, когда возникает вопрос — написать самим или купить. Он находит много недостатков в предлагаемых продуктах для покупки, и считает, что там нет ничего такого, чего нельзя написать самому. Складывается впечатление, что его специфические требования всегда настолько уникальны, что ни у кого вообще нет доступного инструмента с требуемыми функциональными возможностями, в которых он нуждается. Желая работать эффективно, он настаивает на том, чтобы только использовать инструменты, которые делают точно, что он хочет — ни больше, ни меньше. Вызывает удивление, когда ему необходимо написать таким фундаментальные утилиты как редактор текста, программу копирования файла, библиотеки для строк. Реальная проблема не состоит в том, что требования Егора настолько уникальны, и он преднамеренно готовит требования, настолько определенные, что может найти недостаток  в любом коммерческом предложении, и таким образом оправдать изобретение заново тех же приложений. Грубо говоря, он ищет оправдания написать инструменты и компоненты, а не "скучный" — прикладной код. К сожалению, большинство людей, которые работают с инструментами и компонентами Егора, которые он пишет самостоятельно, отмечают, что они редко имеют качество эквивалентных коммерческих предложений.

Желторотый Жора.

Жора только закончил университет. Он постоянно удивляется несоответствием между тем, что ему преподавали и рассказывали на лекциях и тем, что происходит в отрасли. Фактически, всё-то хорошее, что случается на практике, не ожидалось им вообще во время образования. Он считает, что реактивное управление и безудержный рост количества ошибок в его проектах — это локальная проблема, а не широко распространенное явление в отрасли. Жора хорошо соответствует своей компании, с его отношением "полного посвящения". Действительно, он — целевой сотрудник таких фирм. Он в том возрасте, когда у нее есть возможность работать постоянно 60-70 часов в неделю. Жора не отягощен семейными обстоятельствами, честолюбив и достаточно хорошо стремится сделать то, что необходимо, чтобы произвести впечатление на других. Конечно, Жоре не хватает опыта, который придет со временем, но даже при работе по 60 часов в неделю он не выглядит убедительно, в случае повышения требований к нему.

Заключённый Захар.

Захар работает на фирме долгое время. Очень долгое. Дольше чем большая часть менеджмента. Захар работал здесь так долго, что  очень маловероятно, он когда-либо будет в состоянии работать где-нибудь еще. За годы, его навыки сильно ухудшились, его знания не котируется на рынке. Однако он знает всё приложения, которые были написаны или использовались в компании — в конце концов, он написал большинство из них. Он был занят в течение прошлого десятилетия исправлениями и дополнениями, чтобы поддержать ряд изменений в бизнесе. Уставший от преследования новых и самых больших технологий, он не потрудился изучить их, придерживаясь удобной стратегии — ковыряться в куче старых приложений, и заниматься их поддержкой в течении последних лет. Захар уживается со всеми, особенно старшими коллегами. Он не может позволить себе никаких конфликтов. Поскольку понимает, что это станет его последней хорошей работой, которую он когда-либо имел. Таким образом, он держит руку на пульсе, надеясь, что перевод его любимых приложений на более современные технологии займет много времени, и у него есть шанс досидеть до пенсии.

Инструментальщик Игорь.

Игорь любит создавать инструменты, требуемые при разработке программного обеспечения. Он может сделать для Вас на скорую руку скрипт за несколько минут и автоматизировать практически любую задачу, используемую в разработке, о которой вы только догадываетесь. Игорь не может этого не делать. Он активно ищет вещи, которые можно автоматизировать — независимо от того нужны они или нет. По какой-то, Игорь не видит что создание инструментов это не бесконечный процесс, надо и иметь возможность ими пользоваться. Живое воплощение этики "Сделай сам", Игорь всегда настаивает на том, чтобы создавать типичные инструменты  самостоятельно, даже если есть готовое доступное стандартное решение. Вместо выбора одной из миллионов систем для учета ошибок, Игорь найдет другой миллион аргументов, для того что бы написать систему самому, и почему ни одна система из миллиона предложенных нам не подходит. Хотя иногда он может взять что-нибудь из открытого ПО и переделать, или доработать, или поправить. Правда, настолько основательно, что система будет выглядеть написанной с нуля. То же самое относится к системе контроля версий, шаблонам документов, конфигурационными файлами, и так далее.

Косноязычный Клим.

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

Лопух Леонид.

Леонид невероятно быстро устраняет ошибки. Кажется, что едва он начал разбираться, но он уже сообщает о решение проблемы. Затем, как будто по волшебству, та же самая ошибка появляется вновь. "Я думал, что починил это", объявляет Леонид — и действительно он починил — но не так как надо было. В его порыве, переключится на другую задачу или еще чему-нибудь, Леонид неизменно забывает проверять, что его "исправление" работает правильно только при некотором граничном условии или особом случае, и заканчивается это необходимостью возвращаться и начинать исправления снова. Иногда даже необходима третья или даже четвертая попытка. Это по версии Леонида "Итеративная разработка"

Малосведущий Макар.

Макар — хороший парень, но неспособен к выполнению большинства функциональных обязанностей, которых требует его положение. Не ясно, является ли это результатом неадекватного образования, ограниченного опыта или просто неспособности. Любому ясно, кто работает с Макаром в течение некоторого времени, что он действительно не в курсе событий, и ему требуется много времени, чтобы закончить даже основные задачи. Худший из всех, Макар, в блаженном неведении о своей собственной некомпетентности. Это приводит к постоянным конфузам, поскольку все попытки Макара участвовать в технических обсуждениях, игнорируются, но даже это он не в состоянии заметить. Макар получает работу, благодаря его представительности и его большим количеством друзей. Большинство его работодателей пришло к выводу, что Макара надо рассматривать как "ошибку найма".

Необходимый Николай.

Николай знает, что знание – власть (именно власть, а не сила, как принято переводить). Совершенно случайно, но всё-таки преднамеренно, Николай стал незаменимым для его работодателя. Есть обширное количество технических и процедурных тайн, которые только знает Николай. Если бы он должен когда-либо куда-то уезжать, компания была бы в полном беспорядке, поскольку он увёз бы с собой слишком много критической и важной информации. Это дает ему много управленческой власти, и обеспечивает постоянную работу. Несколько из менеджеров компании поняли нездоровую зависимость от него, и попыталась документировать ценные знания Николая об определенных частях программного обеспечения и бизнеса. Но Николай всегда знает, как этого избежать. У него есть большое стремление сделать документацию, но если он вынужден что-то написать, то в результате получается полная несвязная ерунда. Кажется, что он не только не умеет писать, но и так это делает, чтобы, ни у кого в будущем даже не возникало вопроса попросить его это сделать. Николай не горит желанием помочь другим людям в тех областях, в которых он является единственным владельцем знаний, поскольку это сразу разрушит его естественную  монополию.

Открытый Олег.

Олег является приверженцем разработки открытого программного обеспечения. Он помогает нескольким открытым проектам, программирует, и пытается включить открытый код в его проекты везде, где возможно, причем это возможно всегда. Потому что Олег начинает проект с  целью испытать самый последний и самый большой проект из apache, jakarta или откуда угодно. Олег редко оправдывает свой выбор технологии его коллегам, поскольку он всегда уверен, что найдет поддержку других поклонников отрытого кода. В случаях, когда он должен объяснить провал или выбор кишащего ошибками некоторого открытого продукта, он полагает что "мы можем всегда исправить самостоятельно". Однако похоже на это исправления никогда нет достаточного количества времени. Таким образом, каждый новый релиз его проекта ощетинивается бородавками его открытых исходных компонентов. Если все остальное терпит неудачу, по крайней мере, он может сказать, что обошлись малой кровью, поскольку ни за что платили.

Поручик Пётр.

Если Вы хотите видеть рассерженного Петра, начните с ним обсуждение дел о текущем плохом состоянии разработки программного обеспечения. Он расскажет подробно, со страстью, почему всё плохо. Пётр считает, что у всех проблем и горестей разработки программного обеспечения есть общее происхождение — нехватка дисциплинированного процесса. История карьеры Питера читается как маркетинговая брошюра о всех известных процессах и методологиях: BPR, Clean Room, Six Sigma, ISO, XP, Scrum, Agile, Kanban, RUP — он был искренним энтузиастом каждого из подхода, в какой-то момент времени. Его самоотверженность и строгая приверженность процессу доводится до абсолютизма, по его мнению, это панацея от всех проблем в проекте, и будьте уверены, он сделает все, что бы все работали по правилам и следовали определенному процессу. К сожалению, этот бескомпромиссный подход является часто пагубным, поскольку он лишает его гибкости, и лишает возможности применять что-то другое для конкретного случая. Он успел нажить себе много врагов за эти годы, рассматривая людей как компоненты программного обеспечения и предусматривая коллегам второстепенную роль. Смотрит на программистов как на рабочих конвейера, — взаимозаменяемые части, индивидуальные таланты которых и склонности не столь важны как процедуры, по которым они следуют, чтобы сделать работу.

Работяга Рома.

Рома очень беспокоится о впечатлении, которое он производит на других. Вероятно, он слишком озабочен. Он заметил, что у многих коллег долгие часы проведенные в офисе ассоциируются с тяжелым качественным трудом и самоотверженностью. Чем больше времени Вы работаете ежедневно, тем продуктивнее Вы работаете — и имеете репутацию труженика. Этим можно козырнуть во время отчета о проделанной работе. Рома всегда приходит пораньше, что бы он был в офисе, когда приходит его босс, и он всё еще "работает" когда его босс покидает офис в обед или вечером. Все согласны, что Рома вносит свой посильный вклад в развитие продукта, но немного озадачены относительно того, почему его код — полон ошибок и плохо структурирован. Вроде у Ромы достаточно времени, что бы компенсировать плохое качество его кода. В сухом остатке получается, что он добивается того же результата что и коллеги, правда коллеги тратят гораздо меньше времени. Рома так и не понял, что его скорость внесения ошибок постоянно повышается, поскольку он устал и изнурен сидением в офисе, и дополнительные часы которые он проводит в офисе — отрицательно сказываются на его производительности. Хуже того, его ничего незнающий менеджер даже не вознаграждает его за дополнительные часы, тем самым укрепляя его неверное поведение.

Станислав. C++ фанат

Станислав — местный языковой фанатик, отдавший предпочтение языку C++. Он начал программировать в C, потом пошёл дальше к C++, когда коммерческий интерес добавил в него парадигму OO. Станислав наблюдал подъем Java со смесью презрения и скрытой ревностью. Первоначально, было легко защитить C++ от критических замечаний от лагеря Java, потому что C++ обеспечивал гораздо лучшую производительность. Но по мере роста скорости JVM, данное преимущество было утеряно. Теперь, большинство преимуществ, которых Станислав находит в C++, является теми же самыми языковыми особенностями, которые те энтузиасты Java рассматривают как неудобства. Java-разработчики (или, "Java-гики" как Станислав любит их называть) говорят что автоматическое сборка мусора – это способ предотвратить целую кучу ошибок, с которыми разработчики C++ должны всё еще сталкиваются. Станислав рассматривает автоматический сборщик мусора как бессилие программиста, почему бы не освободить память самостоятельно? Java-гики считают отсутствие множественного наследования в Java преимуществом, благодаря которому, можно избежать множества проблем с противоречивостью в наследовании. Станислав видит это как непростительное ограничение к эффективному и точному моделированию предметной области. Java-гики считают, что перегрузка операторов в C++ с целью сокращения синтаксиса, это отличная крыша для будущих ошибок. Станислав видит это как краткий и естественный способ описать операции над объектами. Станиславу приходится обливаться горючими слезами, когда он видит, как уменьшается объем и разнообразие доступной работы на том языке, с которым он хорошо знаком.

Тихий Тихон.

Тихон — один из тех парней, у которого нет никакой потребности хвастаться о его технических навыках или глубине его технического знания. Он очень не интересуется тем, чтобы быть умником в офисе, он только хочет сделать хорошую работу и затем пойти домой к жене и детям. Спокойно разговаривающий и скромный, он наблюдает с развлечением за энтузиазмом Эдика и качая своей головой, зная, что еще через несколько лет Эдик получит достаточно опыта, что IT-индустрия полна "следующих больших вещей, которые вообще ими не являются". Получая задачу, он садится и просто делает это. Он не пытается героически поймать или найти ошибку. Не кодирует поздно ночью, его код достаточно хорош, и с ним редко бывают проблемы. Он не требует какого-то особенного отношения к себе со стороны менеджмента, внимание которого поглощено в значительной степени техническими примадоннами, не бросается умными словами и акронимами, как будто это именами знаменитостей, которых он знал лично. Но без Тихона и ему подобных людей, проект потерпел бы неудачу — потому что кто-то должен был сделать работу.

Хакер Харитон.

Харитон полагает, что он истинный хакер — поэт кода. Находясь всё еще в начале своей карьеры, он тратит большую часть своей жизни перед клавиатурой. Даже когда не на работе, он работает над собственными проектами, общается на форумах, интересуется новыми языками и утилитами. Программное обеспечение — его основная страсть в жизни. Это целеустремленное преследование технического знания сделало его весьма опытным во многих областях, и породило определенное высокомерие, которое вообще проявляет как презрение, направленное к тем его коллегам, которых он расценивает как не являющихся "истинными хакерами". Для его менеджеров Харитон — что-то вроде проблемы. Они знают, что они могут действительно положиться на него, чтобы решить практически любую техническую проблему, правда, при условии, что решение может быть достигнуто, делая только кодирование. Поскольку, если это не кодируется, Харитон теряет интерес. Он ничего не будет документировать; тем более свой код, потому что знает, что хороший код самодокументирован. Он еще достаточно молод, и не сталкивался с большим объемом кода, который создавался годами, причем не им, и естественно не видит здесь никаких проблем. Мало того, Харитону можно вообще только давать задачи, которые помещаются в его голове. Его задачи должны быть маленькими и хорошо определенными, чтобы можно было запомнить все детали сразу, поскольку он просто отказывается записывать что-нибудь. Архитектура систем масштаба предприятия, вероятно, навсегда будет для него тайной, поскольку он не имеет никакого интереса к разработке, средствам абстракция и моделирования, которые необходимы, чтобы управлять проектом большой системы.

Упрощающий Устин.

Устин восхищается процессом дизайном проекта. Патологически неспособный к решению непосредственной проблемы прямо сейчас и не сходя с места, Устин всегда создает самое общее, невероятно гибкое и приспосабливаемое решение, считая, что в будущем он будет нуждаться в еще более сложном решении. К сожалению, ожидания Устина не оправдываются. В воздушных замках построенных им, а строит он постоянно, редко занят даже одноместный номер. Тем не менее, все окружающие должны пытаться справляться с сложностью реализации, бесполезно тратя время и усилия, где гибкость совсем не требуется. Это типичная особенность работы Устина, обычно требуется, по крайней мере дюжина взаимодействующих классов, чтобы достигнуть тривиальных функциональных возможностей. Он первым кричит "Давайте сделаем библиотеку или новый framework" всякий раз, когда есть возможность, и последний, кто ей пользуется.

Шашист Шура.

Большую часть неприятностей, в которые Шура попал за последние годы, можно начать с фразы, "Не будет ли круто если…". Независимо от того, насколько он загружен в текущем проекте, Шура всегда думает о шашечках, которые сделают, по его мнению, невероятно крутым. Решив, что специфическая возможность невероятно важна для пользователей, очень трудно заставить Шуру прекратить этим заниматься. Он работает ночью и по выходным, лишь бы добавить эту функциональность, независимо от того разрешено это или нет. К сожалению, Шура абсолютно не рассматривает долгосрочные последствия каждого дополнения в функциональность. Он думает только о том как бы быстрее закодировать, и к сожалению совсем не думает о том что функциональность должна быть отлажена, проверена, и должна поддерживаться во всех будущих версиях продукта. Пользователям, возможно, понравится новая функциональность, возможно — нет, но увидев "своего парня" среди разработчиков — они будут просить новые и еще новые возможности, создавая еще большее давление на разработчиков, сдвигая сроки выпуска продукта и добавляя лишние возможности, которыми в последствие даже не будут пользоваться. Федя оправдывает свои действия тем, что его добавления невероятно ценны для пользователей, и думает, что обладает большими знаниями чем пользователь, и вправе решать что понадобится им, а что нет. К сожалению, в действительности Шура больше думает об удовлетворении собственного эго, чем заботится о пользователях. Каждая новая возможность, функциональность или расширение для Феди возможность продемонстрировать, насколько он крут, умён, и как он умеет общаться с конечными пользователями продукта.

Чёрт ногу сломит — Чарли.

В отличие от Клима, родной язык Чарли — русский; несмотря на его нетипичное имя. Толку, правда, от этого мало. Послушав Чарли, понимаешь, что все произнесенные им слова имеют смысл только по отдельности, собрав их все вместе, они выглядят как тарабарщина без всякого связного смысла. Это талант Чарли, он может взять простые понятия и заставить их казаться сложными; если ему дать сложные понятия он заставит их выглядеть полностью непостижимыми. Это большая проблема для всех пытающихся сотрудничать с Чарли, поскольку они вообще не могут понять подход, которыми Чарли пытается решить его часть проблемы, и который фактически гарантирует, что это не будет работать должным образом в соединении с работой других. В тех редких случаях, когда он пытается комментировать свой код, его комментарии абсолютно бесполезны, поскольку они имеют не больше смысла, чем, если Чарли пытался объяснить это устно. Менеджмент сделал ошибку, посчитав, что заумные речи Чарли, являются доказательством его технической грамотности и умении решать сложные задачи. Именно поэтому он находится на ведущих технических позициях в компании. Но его патетические навыки коммуникации — главное препятствие к обязанностям, которые он должен исполнять как старший разработчик, в его обязанности входит координирование технической работы других, давая инструкции и анализируя отзывы. Чарли — источник глубокого разочарования его коллег, поскольку он ничем не может помочь для точного и лаконичного общения внутри команды.

Фантаст Федя.

Федор немного странноват. Хотя его программные навыки достаточно зрелые, его индивидуальное развитие, кажется, отстает. У него нездоровый интерес к «Стар Трек», «Доктор Кто» и «Вавилон 5». На его рабочем месте вы найдете кучу комиксов, правила к Dungeons & Dragons и прочим ролевым играм, которые он почитывает во время обеда. Либо бы его застанете исследующим интернет на предмет появления новых сайтов фанатов научной фантастики. Обсуждения проектов, вовлекающие Федю, являются вообще-то… интересными, но несколько утомляющими. Он регулярно прерывает кого-либо цитатами из Звездных войн или “Red Dwarf”, смеётся самым раздражающим способом над юмором понятным только ему одному, не обращая внимания на факт, что другие его собеседники, в общем-то, достаточно далеки от его любимой культуры. Федя, кажется, проводит большую часть своего времени один. Никто никогда не слышал, что он упоминал о своей подруге. Те, кто работал с ним в течение какого-то времени, знают, что его надо держать подальше от клиентов и других «нормальных людей, которые вряд ли поймут его эксцентричность.

Энтузиаст Эдик.

Эдик – обожает всем восторгаться. Как ребенок, смотрящий в окно кондитерской, Эдик, облизываясь, глядит на каждое новое умное слово, акроним и рекламную кампанию, немедленно становясь учеником каждого нового движения и повального увлечения технологии. Иногда этот энтузиазм приносит определенные идеологические конфликты, Эдик всегда слишком занят, он загружает новую бета версию нового крутого и большого программного обеспечения. У него установлен Linux на его домашнем компьютере, он имеет Макинтош в гостиной комнате, и является прихожанином в церкви Agile Methodologies. Наличие Эдика на Вашем проекте может быть катализатором, особенно если он осуществляет контроль над выбором технологии. Он неизменно попробует и перегрузит Ваш проект любыми новыми и крутыми технологиями. От него все приходят в восторг, и восхищаются его способностями к взаимодействию, которые ограничиваются только возможностью ввести в проект как можно больше технологий. Эдик никогда не научится отличать работу от игры.

Юркий Юрий.

Юрий меняет работу как перчатки. Если его зачислили в штат, его коллеги будут немного удивлены, узнай они, что он не будет работать с ними через год. Юрий занимается тем, что копит как можно больше опыта работы со многими технологиями. С простой целью – новой строчки в резюме. Он считает, что таким образом будет более привлекательным для будущих работодателей. Цель его карьеры состоит просто в том, что постоянно добавляя строчки в резюме в раздел хорошо знакомых технологий, и переходя из компании в компанию требовать более высокую зарплату.

Язычник Яша.

Когда-то в девяностых Яша подвергся "Визуальной лоботомии". Он участвовал в неверно понятом и чрезмерно честолюбивом проекте на Visual Basic, он боролся, чтобы написать серьезное приложение масштаба предприятия в течение нескольких лет, на языке, который никогда не задумывался ни для чего большего, чем мелкомасштабного использования. Страна Visual Basic — теплое и спокойное место, и Яша позволил атрофироваться своим навыкам, пока он как раб писал на VB. Теперь, удрученный и потерявший квалификацию, он живой пример как опасно строить Вашу карьеру на узкой технологической нише. Яша вероятно переживет еще несколько лет, слоняясь от одного проекта VB до следующего, пока полностью не растеряет свой энтузиазм даже по отношению к VB.