Технические мыслители слишком быстро предсказывают упадок карьеры программиста

В наши дни кажется, что все, что вам нужно, это подписаться на Twitter или выступить на TEDx, чтобы назвать себя футурологом. Но Тим О’Рейли - основатель легендарной компании по обучению технологиям O’Reilly Media - не такой гуру. Его вдумчивые наблюдения за тенденциями в области вычислительной техники и его пропаганда открытого исходного кода (задолго до того, как это считалось крутым) придают ему должное доверие.

Поэтому, когда Тим О’Рейли недавно прокомментировал будущее индустрии программного обеспечения, профессиональные разработчики обратили на это внимание. Вот что он сказал:

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

Звучит достаточно логично. Фактически, вы, вероятно, слышали и другие версии аргумента «сегодняшние элитные навыки программирования - это базовая компетенция завтрашнего дня». Но действительно ли это отражает будущее индустрии программного обеспечения?

Кодирование как грамотность

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

Идея о том, что кодирование является частью этого нового типа грамотности, который в конечном итоге превратится из почти магической силы в рутинную человеческую практику, не нова. Но есть основания для подозрений. В конце концов, всего десять лет назад мы искали научную грамотность с целью дать рядовым гражданам знания, необходимые им для принятия решений и выбора лидеров, которые могли бы быстро проложить правильный курс. -развивающийся мир. Но обещания научной грамотности не оправдались. Сегодня средний человек в значительной степени полагается на современную науку, в которую он не понимает или не верит, от компьютеров (квантовая механика) до вакцин (генетика) и GPS (общая теория относительности). Если научная грамотность - это цель, которая никогда не была реализована, можем ли мы действительно ожидать, что грамотность в области программирования будет намного лучше?

Сторонники движения за грамотность в кодировании отмечают, что чтение и письмо начинались как специализированные навыки, и потребовались годы, чтобы они распространились от ученых к населению в целом. (Если бы в 1620 году вы предсказали, что через несколько сотен лет даже самый не амбициозный человек сможет написать грамматически связный пост в Facebook, вы бы показались диким мечтателем.) Но есть разрыв между обучением письму и быть писателем. Есть разрыв между изучением науки и тем, чтобы стать ученым. И есть разрыв между пониманием основных контуров кода и обучением самостоятельному построению сложных систем.

Наши усилия по повышению грамотности в программировании на удивление мало подходят для подготовки будущих программистов. Фактически, мы часто уводим новичков прочь от искусства программирования в крошечные ограниченные песочницы. В прошлом эти песочницы были макросами Excel и (если у вас были немного больше амбиций) Visual Basic и Access. Теперь это Power Apps. Чем больше меняются вещи, тем больше они остаются прежними - если вы хотите стать профессиональным программистом, вам все равно нужно отклоняться от стандартного образовательного пути.

Современное образование снизило планку грамотности. Но это не изменило определение того, что значит быть профессиональным программистом.

Сколько стоит кодер?

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

Люди заявляют о превращении кодирования в товар как минимум два десятилетия. Некоторые из сегодняшних программистов помнят, как им говорили изучать что-то более прочное, например математику, потому что разрыв в навыках программирования был близок к сокращению.

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

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

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

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

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

Рассвет нового золотого века

Цитата Тима О'Рейли намекает на будущее, в котором навыки программирования не станут залогом успешной карьеры. Но что, если золотой век вычислительной техники - это не легкие деньги и безопасность работы? Что, если то, что мы теряем, на самом деле менее важно, чем то, что мы приобрели за полвека разработки программного обеспечения?

С годами кодирование стало все более сложным. Но в то же время нас осыпали богатством - IDE, которые вылавливают ошибки, вычислительное оборудование, которое компилируется за секунды, фреймворки, автоматизирующие рутинную рутинную работу обычных задач, таких как проверка ввода и сортировка списков. Я до сих пор помню дни, когда программистам приходилось искать информацию, и надежная книга на такую ​​тему, как Windows API, распространялась по офису и пролистывалась до тех пор, пока не сломалась привязка.

Сегодня, с появлением веб-сайтов с бесплатными учебными пособиями, курсами YouTube, стримерами по программированию Twitch и StackOverflow, барьеры для входа практически исчезли. Вместо стены тайных знаний, отпугивающей новичков, теперь у нас есть сообщество экспертов, которые приглашают новичков и готовы поделиться своей работой над проектами с открытым исходным кодом. Если мы выбираем золотой век, измеряя трение, мешающее нашим идеям, это золотой век.

В истории не было времени, когда было бы проще превратить идею в программный проект и поделиться им со всем миром.

Мы не можем сказать, когда закончится золотой век, но одно можно сказать наверняка. Двери королевства по-прежнему распахнуты настежь.

Чтобы получать рассылку с лучшими техническими новостями раз в месяц, подпишитесь на Информационный бюллетень Young Coder.