Friday, March 17, 2006

Пятница N2 - Классификация пользователей-2

Отрывки из книги с предварительным названием "Как стать настоящим программистом"... или "Почему программисты лучше людей" или еще как -нибудь.

Классификация пользователей по приносимой пользе

Конечно, речь идет о пользе, которую пользователи приносят программистам, а не предприятию – об этой пользе пусть думают СЕО, отделы HR и остальные бесполезные подразделения, насыщенные выпускниками MBA.

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

Так какие же виды пользы приносят пользователи?

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

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

Именно поэтому в начале пути профессионального программиста следует пройти обкатку в какой-нибудь маловажной, но относительно большой конторе, где наличествуют все виды пользователей (идеально подойдет заводик средней руки или провинциальное НИИ). Тренировку обязательно следует спланировать – помните, что это вы нашли себе спарринг-партнеров, и не позволяйте им навязывать свою игру. В план тренировки как обязательный минимум следует включить: споры с начальством, третирование пользователей (хорошо бы довести главбуха до слез намеками на корреляцию параметров ее фигуры и навыков форматирования в Excel), проталкивание абсолютно ненужного проекта и просмотр порнофильмов в рабочее время с полным звуком (для этого рекомендуется продукция Private).

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

Очень рекомендуется выбросить трудовую книжку после тренировочной работы и переехать в другой город (а вы думали, почему столько программистов в Москву едет?). Самое главное – не увлекаться и случайно не попасть в тайное общество коллег-мазохистов. То и другое может привести к тому, что вы навеки останетесь на этой работе, проводя все свое время, выдумывая обидные прозвища своим коллегам и издеваясь над пользователями, а к концу жизни поразите общество кое-чем покруче маркиза де Сада[*].

Помимо денег и тренировки, пользователи очень сильно могут повлиять на вашу карьеру. Вы не представляете себе, сколько программистов превратились в толстых дядек на черных S600, просто удачно поставив пару несложных игрушек очень большому боссу (из тех, которые ездят на Метро-2, или в крайнем случае на Pullmanах).

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

Конечно, с инсайдом надо быть очень осторожным, и никогда не лишним будет проверить, не навредишь ли ты утечкой списка активов своим коллегам, которые вроде второй месяц заняты размещением 4-х кнопок на форме 1280 на 1024 согласно требованиям фэн-шуй, а на самом деле пытаются скупить контрольный пакет акций Дойче Банка… Кроме того, некоторые выбившиеся в большие боссы программисты не страдают полной амнезией и ставят везде видеокамеры и жучки, чтобы зафиксировать вашу преступную деятельность. В этом случае лучше все злодеяния выполнять с помощью Terminal Server из интернет-кафе.

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

И последнюю пользу, которую приносят пользователи – это очищают наш программисткой мир от неудачных экземпляров, проводя санацию. К сожалению, некоторые безответственные производители софта сделали разработку программного обеспечения настолько простой, что даже дурак может им воспользоваться. Согласно модифицированному закону Архимеда, дураки вытесняются на ту работу, которая соответствует объему их мозгов, поэтому в «программисты» немедленно записались толпы недоучек, порочащих наше доброе имя. Санация обычно осуществляется в одном или двух отделах предприятия, где собраны специально подготовленные пользователи с садистскими наклонностями. Они быстро доведут любого недоучившегося программиста до мысли, что пора ему поменять работу на более подходящую: дворника, ассенизатора или менеджера по персоналу, в порядке убывания требований к уму и образованию[†].

Пользователи+Программисты = ?

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

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

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

Во-первых, сначала самый популярный способ общения.… Наверное, все видели фильм «Mortal Combat» («Смертельная битва»). Собственно его трудно назвать фильмом – ни сюжета, ни смысла в нем нет, но зато там есть масса конкретного, продвинутого и весьма интенсивного «мочилова».

Я подозреваю, что на самом деле этот фильм есть аллегория на темы автоматизации деятельности предприятия, он иллюстрирует все характерные его этапы: а) набор персонала с улицы по принципу кровного родства («аааа! они убили моего брата! Возьмите меня с собой!»), б) постановка технического задания Большим Боссом («Вы должны спасти мир!.. Да, втроем! И до завтра, конечно!»), в) сам процесс разработки ПО для автоматизации (очень интенсивная, красиво оформленная, но совершенно бессмысленная деятельность). Особенно хороша заключительная сцена, где из облаков появляется грандиозная рожа кого-то плохого (большого босса главного заказчика) и заявляет, что все было сделано неправильно и придется переделать весь проект.

Так вот, самым популярным способом общения пользователей с программистами является «файтинг» - проще говоря, «мочилово» в стиле «Мортал Комбат».

Файтинг, несомненно, является наилучшим способом общения программистов с пользователями (для программистов). Во-первых, в процессе разработки тренируются различные навыки вроде умения втирать очки ногами в прыжке сразу двум начальникам отделов заказчика, во-вторых, это дает возможность собирать команду классных профессионалов и играть в Unreal (Quake, CS, etc) в промежутках между milestones проекта, и, в-третьих, за 3-4 итерации это приводит (иногда) к разработке хорошего и работающего решения (извините, что забегаем вперед – фантастика на другом этаже).

Однако надо отметить, что файтинг возможен только при наличии сильной поддержки на стороне программистов – большого босса уровнем не меньше зам.директора, который сдерживает попытки боссов других направлений конкретно задавить этих «странных людей» из ИТ-отдела, непрерывно жующих пиццу, пьющих пиво, игнорирующих график работы и (о, ужас!) корпоративный дресс-код.

К сожалению, достаточно часто файтинг переходит в другую категорию отношений, которую условно можно назвать «факинг». Не будем здесь приводить фильмы, которые ассоциируется с этим процессом, можно только отметить, что детям до 16 смотреть такие фильмы не разрешается.… А в особо тяжелых случаях и до 21 года.

Факинг характеризуется очень плохим отношениям к программистам. Любимый вопрос руководства - «А сколько денег заработал ваш отдел?». Неоплачиваемые переработки, низкие зарплаты, «Премию? За что?», «Отпуск?! Устал на кнопки нажимать?», а самая частая оценка работы программистов это: «А они что-то делают?».

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

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

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

Прежде всего, к таким отношениям относится так называемая «зимовка медведей». Нет, не в смысле того, что надо сосать лапу и ютиться в тесном офисе. Наоборот, ситуация «зимовки» возникает, когда контора отъелась, отогрелась, сделала себе уютную берлогу, надежно укрытую от суровых бизнес-ветров, и хорошо притершиеся к себе работники заползли в ее теплое нутро и нежно обнявшись, проводят все свое время. Максимум запросов, который поступает от пользователей – это сменить им мышку или записать новую игрушку для своего ребенка. Максимум, чего хотят программисты – это нанять в качестве секретаря на ресепшен блондинку посимпатичнее с формами попышнее, чтобы было кому нежно зарыться в пушистые волосы, нежно накрывая ручку, показывая, как в Excel суммируются ячейки….

Конечно, подобная сладостная перспектива открывается в основном в «толстых» государственных конторах с названием вроде «ГазНефтьАлмазСнабКонтроль». Также такая малина может произрастать в удаленных филиалах иностранных компаний, но только до тех пор, пока работодатели не догадаются рассчитывать ставки зарплаты, исходя не из своих средних ставок по миру, а по местному уровню. Мне тут подсказывают, что такая малина может быстро накрываться в результате неожиданного визита регионального директора-ненатурала, который зайдет в своей инспекции дальше диванчика на ресепшене – но не хотелось бы здесь писать про всякие нетрадицинные дела.

Особым подвидом «зимовки медведей» является «королевская семья Великобритании», где работают исключительно «все свои, родные». Но в любой королевской семье может появится своя леди D (до сих пор не знаю, кто это, но подозреваю что это разработчица языка post-C? ), или принцесса Стефани (эту я помню – такая симпатичная тетка из «Короткого замыкания»… Что, никто не помнит?) и «семья» понесет тяжелые потери, за которые придется рассчитываться программистам.… Только не спрашивайте почему – просто такова историческая необходимость, что первыми лицо подставляют программисты.



[*] кстати, мало кто знает, что де Сад был одним из первых французских программистов. К сожалению, тогда компьютеров было мало, и на нем все время работала Ада Паскаль, а вот пользователей было очень много, поэтому бедняга де Сад, отчаявшись внедрить автоматизацию документооборота в Лувре, пристрастился к порносайтам. Кстати, триалы у порносайтов в то время были куда длиннее, чем сейчас – например, де Сад умудрился написать даже книгу «120 дней Содома» по мотивам одного из них!

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


В следующей серии - "Вся правда о методологиях разработки ПО, или о чем умолчали супруги Йордон и Де Марко".

2 comments:

Dmitry Kuzmenko said...

сразу вспомнились -
- специальные резидентные программы еще для ДОС, по специальной кнопке возвращающие "рабочий стол" на место.
- Скриншот среды разработки с кодом и отладкой, выкладываемый на десктоп в Windows (сам таким баловался). Сюда же можно приплюсовать "пиджак на стуле" (спасибо Ильфу и Петрову), для имитации временного отсутствия на рабочем месте.
- Мощные средства нынешних драйверов видеокарт, позволяющие создавать "Рабочие столы" и быстро переключаться по ним.

Ну и, в конце-концов, последнее изобретение (ссылку забыл, к сожалению) - USB-педаль, для тех же самых целей: позволяет скрывать заданные окна, переключать рабочий стол и т.п. Японское изобретение, между прочим...

Anonymous said...

в яблочко.

но есть ещё один вид пользователей, не попадающий в данные рамки: это бухи, то есть, бухгалтера, работающие с 1С. это совсем другие звери. ((-=