Уверен, многие из вас удивятся, но на программиста, оказывается, учат. На курсах, в техникумах, вузах: есть даже государственные стандарты вроде «Специальности 230115 — Программирование в компьютерных системах» (попросту – техник-программист), на освоение которой отводится неполных три года. Время самоучек вроде бы давно и безвозвратно ушло: на дворе не 80-е и даже не 90-е, чтобы держать разросшееся здание информационных технологий; недостаточно тех, кто придёт сюда только по зову сердца со случайным набором знаний! Однако вопрос этот – нерешённый. Лучше того, как выясняется сейчас, программисты-любители снова играют заметную роль, и доля их в общей массе разработчиков софта продолжает увеличиваться. Как это понимать, чем это вызвано и куда может привести?

Неожиданный этот факт констатировали исследователи (IDC), пробовавшие оценить глобальную ситуацию в программистском сегменте и обнаружившие, что из 18,5 миллиона человек, занимающихся сегодня написанием кода, семь миллионов с лишком (40%) делают это вне основных должностных обязанностей. И хоть обе категории — и «любителей», и «профессионалов» — растут, любительская категория в последние годы увеличивалась быстрей. Поскольку в обозримом будущем замедления роста не предвидится, уже в ближайшие несколько лет программисты-по-призванию станут численно доминировать над программистами-по-профессии.

Сегодня стать программером и проще, и перспективней, чем когда-либо. Компьютер стал «утюгом», телефон — компьютером, мир движется к "интернету вещей", где умные головы будут нужны в беспрецедентных количествах, а Linux и свободный софт вообще предлагают любые инструменты для обучения.
Сегодня стать программером и проще, и перспективней, чем когда-либо. Компьютер стал «утюгом», телефон — компьютером, мир движется к “интернету вещей”, где умные головы будут нужны в беспрецедентных количествах, а Linux и свободный софт вообще предлагают любые инструменты для обучения.

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

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

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

Не ограничивайтесь играми на телефоне — программируйте его!
Не ограничивайтесь играми на телефоне — программируйте его!

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

В самом деле, совершенно непонятно, почему профессия программиста с её стремительным и безостановочным ростом требований к объёму обязательных знаний (пятнадцать лет назад веб-программисту достаточно было HTML, что нужно сегодня — страшно даже подумать!) вдруг стала так привлекательна для людей, которые зачастую даже не получают за работу деньги? Лично мне нравится идея корреляции с феноменом мобильных устройств: взрывообразно расширяющаяся вселенная смартфонов / планшеток / умных мелочей вовлекает в себя и тех, кому просто интересно, и тех, кто мечтает на этом разбогатеть. Это своего рода золотая лихорадка XXI века, принять участие в которой могут почти все. Приятное следствие: в выигрыше тоже останутся почти все! Пусть и в выигрыше непрямом, не денежном.

Я не говорю о преодолении пресловутого цифрового раздела-разрыва. Как однажды сказали в Индии (на волне интереса к очередному дешёвому чуду цифровой электроники — уж не помню, Simputer или Aakash), и как сейчас с циничным удовольствием пишет американская пресса про знаменитого бездомного программера-новичка Лео Гранда, люди умирают не от цифрового отставания, а от голода, холода, отсутствия близких или хоть кого-нибудь, кто мог бы помочь в трудной ситуации. Программирование само по себе — не магия, не набор волшебных заклинаний, только лишь знание, которое может оказаться полезным.

Помните Лео Гранда (он же Journeyman)? На днях он разродился своим первым приложением - Trees for Cars за 99 центов. Но ночует он по-прежнему на улице, в картонных коробах.
Помните Лео Гранда (он же Journeyman)? На днях он разродился своим первым приложением – Trees for Cars за 99 центов. Но ночует он по-прежнему на улице, в картонных коробах.

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

Впрочем, прежде чем это случится, проклюнувшийся «любительский росток» ещё предстоит вырастить. И, честно говоря, меня берут завидки, когда я вижу, как с телеэкранов США к юным согражданам обращается лично их президент: «Программируйте, это важно для страны!» Штаты уже считают программеров-самоучек ценным национальным ресурсом, экспортировать который так же опасно, как полвека назад атомные технологии, а четверть века тому — стойкое крипто. Когда-то подтянемся мы?

В статье использована иллюстрация US Mission Geneva.