Friday, January 12, 2007

Пятница №15 - Кто такие программисты

Думаю, с нового года надо все таки возобновить публикацию отрывков из книги про программисткую житуху.

Кто такие программисты

Нас тьмы...

За последние 25 лет в России (думаю, аналогично и в Украине, Казахстане и других «советских» странах) появилось просто невероятное количество программистов. Со времен описанного Стругацкими уникального программиста-математика, который решал серьезные мировые задачи совместно с магами и кудесниками, прошло уже почти полвека, со времен первых PC и фидошников – лет 20, и теперь программист перестал вроде бы быть экзотикой и «живет» в практически каждой конторе.

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

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

Фактически, сейчас мы имеем огромную армию универсальных специалистов (по разным оценкам от 0.5 до 2 миллионов человек), представители которой есть на каждом предприятии. Практически все эти люди могут понять друг друга и при встрече найти общий язык, обменяться шутками, точно так же, как понимают друг друга прошедшие настоящую военную службу с ее вывертами реальности.

Имя? Звание? Где находятся ваши ракеты?!

И как прикажете называть 2 миллиона человек? ИТ-специалисты? Мне кажется, что название «программисты» именно в таком контексте, с целью самоидентификации все же лучше, чем ничего или набор из десятка терминов.

Армейские спрашивают «Ты где служил?», а мы спрашиваем «Ты кто?». Тем более нужно иметь какое-то название, что жизнь в ИТ продолжается гораздо длиннее стандартного армейского срока службы.

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

Ну и самое главное – распознавание термина «программист» остальными слоями населения практически 100%-ное. Да, неприятно, когда архитектора системы в 5 миллионов строк, который «на ты» с докторами в Оксфорде, его нефтяной босс представляет зарубежным партнерам «А это наш программист», но зато нет никаких проблем как объяснить подругам жены или даже ее бабушке, чем вы занимаетесь. В конце концов, с босса за это дело можно стрясти еще какой-нибудь скрытый бонус на обновление ментальных конфигураций отдела разработки или банально убедить купить новые ноутбуки всему отделу.

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

Программисты бывают разные, синие, белые, красные?

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

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


Продолжение следует...

7 comments:

Sergey Rozovik said...

Все верно, за исключением строительных "девелоперов". Эти ребята ничего не строят, и кирпичей в глаза не видели. Они "решают вопросы" в строительстве. И в $4000 за квадрат в Москве, как минимум тысяча на совести этих "девелоперов".
А я тоже всегда представляюсь программистом. Скажешь что ты дизайнер или архитектор приложений - люди думают черт знает что про тебя :)

Anonymous said...

Я представляюсь всегда компьютерщиком (компьютер + что то с ним делание). А потом дополняю, что по роду деятельности с ними много и часто вступаю...

Nikita A Zeemin said...

Себя обычно называю «программист — разработчик прикладного ПО» — вроде бы, это достаточно чётко определяет «жизненную позицию».

В посте заметил некоторую вольность с цифрами: сначала 0,5—2 млн человек, затем просто 2 млн, потом уже 3 млн.

Anonymous said...

Все-таки звание кодера гораздо приземленнее звания программиста :)

ntropy прав, у нас твердо устаканилось за айтишниками и людьми, разбирающимися в компьютерах, название - компьютерщики.

Anonymous said...

Нет, все-таки "программист" на сегодняшний день более распространенное определение этого семейства профессий. :)

С одной стороны, может быть и обидно, что эникейщиков, кодеров и админов называют программистами, но с другой стороны есть архитекторы, PM-ы, тим-лиды, руководители отделов т.д., которые про себя говорят "по-любому программист"... :)

Pablo Escabar said...

Может быть уже пора менять стереотип, что
>>что эникейщиков, кодеров и админов называют программистами
?
и кто это будет делать, если не мы, программисты? :-)

Unknown said...

Програміст — людина, що займається програмуванням, виконує розробку програмного забезпечення (в простіших випадках — окремих програм) для програмованих пристроїв, які, як правило містять один чи більше CPU. Прикладами таких пристроїв є: Настільний ПК, Мобільний телефон, смартфон, комунікатор, ігрова_приставка, сервер, суперкомп’ютер, мікроконтролер та промисловий комп’ютер.

По помилці, програмістом деколи називають системного адміністратора та інших спеціалістів ІТ.