В 1930 году Джон Мейнард Кейнс предсказал, что к концу века у нас будет 15-часовая рабочая неделя. Понятно, что великий экономист сделал что-то не так.
Добро пожаловать в эпоху дерьмовой работы, как выразился антрополог Дэвид Грэбер. С 30-х годов появились совершенно новые отрасли, которые не всегда приносят пользу нашей жизни. Грэбер, вероятно, назвал бы большую часть работы разработчиков программного обеспечения чушью.

Я не разделяю мнение Грэбера, особенно когда речь идет о программном обеспечении. Но это затрагивает интересный момент: по мере того, как все больше и больше процессов автоматизируются, большинство рабочих мест в какой-то момент устаревают. По оценке, 45% всех рабочих мест можно автоматизировать с использованием современных технологий. И со временем, вероятно, так и будет.
Тяжелые времена (тоже) для разработчиков программного обеспечения?
В области разработки программного обеспечения вы можете увидеть, как это происходит в режиме реального времени: инструменты автоматизации появились давно. И это лишь одна из многих областей, где трудоемкие итерационные части были автоматизированы (другое поле - дизайн, например).
Это приводит нас к неизбежному вопросу: устаревают ли разработчики программного обеспечения? Если все больше и больше машин они могут писать код для себя, для чего нужны люди?

От дизайна логики к дизайну умов
Разработчики программного обеспечения - настоящие строители. Они создают логические связи, алгоритмы, программы, проекты и многое другое. Отличия от строителей, которые строят физические вещи? Разработчики программного обеспечения создают логические вещи.
Однако с появлением искусственного интеллекта происходит смена парадигмы. Разработчики больше не проектируют логические ссылки. Они обучают модели эвристикам этих логических связей. На практике они переходят от проектирования логики к проектированию разума.
И когда этот ум был хорошо развит? Прощай, рабочие? Как будет выглядеть мир глазами компьютера?
Когда их спрашивают, будут ли они заменены роботом в будущем, люди часто так не думают. Это верно для разработки программного обеспечения и многих других областей.
Причина ясна: такие качества, как креативность, эмпатия, сотрудничество или критическое мышление, короче говоря, «мягкие навыки» — это не то, в чем хороши компьютеры.
Но часто для выполнения работы важно не это. Даже самые сложные проекты состоят из множества мелких деталей, которые можно автоматизировать.
Не поймите меня неправильно; человеческие качества удивительны. Но мы переоценили важность этих вопросов, когда речь идет о регулярной деятельности.
Например, долгое время даже исследователи считали, что машины никогда не смогут распознать кошку на фотографии. Сегодня одна машина может классифицировать миллиарды фотографий одновременно и с большей точностью, чем человек. Машина, возможно, никогда не сможет восхищаться милостью маленькой кошечки, но она превосходно работает с неопределенными состояниями. Потому что это фотография котенка глазами машины: неопределенное состояние.
К новым вариантам и масштабам
Помимо работы с неопределенными состояниями, есть еще две вещи, которые компьютеры могут делать более эффективно, чем люди: делать вещи в больших масштабах e работаем над вариантами.
Мы все испытали на себе, насколько хорошо компьютеры работают в больших масштабах. Например, если вы попросите компьютер напечатать одно и то же предложение тысячу раз, он сделает это без возражений и завершит задачу за долю секунды.
Спросите человека, и вам придется ждать несколько дней, чтобы увидеть, как работа сделана.
Коллекционеры - это, по сути, образный или математический способ обращения к подмножествам пространства, которые разделяют определенные свойства. Например, лист бумаги - это двумерное разнообразие в трехмерном пространстве. Если скомкать листок или сложить его в плоскости, он все равно коллекционер.
Компьютеры действительно хорошо работают с вариантами, которые людям трудно визуализировать, потому что они могут охватывать двадцать измерений или иметь множество сложных узлов и ребер. Поскольку многие повседневные проблемы, такие как человеческий язык или компьютерный код, могут быть выражены в виде математической разновидности, существует большой потенциал для реализации действительно эффективных продуктов в будущем.
Где мы и куда приедем?

Во-первых, проверка кода и отладка могут скоро уйти в прошлое. Швейцарская компания Глубокий код работает над инструментом автоматического обнаружения ошибок. DeepMind Google уже может порекомендовать более элегантные решения для существующего кода. ЯВЛЯЕТСЯ Освежитель воздуха Facebook может самостоятельно создавать небольшие программы.
Не только: МИСИМ, сокращение от Machine Inferred Code Similarity System, похоже, может понимать компьютерный код так же, как Alexa или Siri могут понимать человеческий язык. Это интересно, потому что такая система может позволить разработчикам автоматизировать общие и трудоемкие задачи.
Продукты все еще не совсем идеальны, но это только начало: подобные инструменты в будущем станут намного мощнее.
Приложения? Скоро
Некоторые из первых применений этих новых средств автоматизации могут включать в себя мониторинг деятельности человека. Таким образом можно оптимизировать такие вещи, как планирование рабочего времени или поиск уроков для студента.
Это само по себе открывает огромные экономические возможности, потому что студенты могут быстрее усваивать важные вещи, а работники могут служить в наиболее продуктивные часы.
Если MISIM так хорош, как обещает, его также можно использовать для перезаписи устаревшего кода. Например, многие банковские и правительственные программы написаны на COBOL, который сегодня редко преподают. Перевод этого кода на новый язык упростил бы обслуживание.
В свете всего этого, если разработчики программного обеспечения не хотят исчезать, как они могут идти в ногу со временем?
Все эти новые приложения интересны. Но над ними весит огромный дамоклов меч: что, если они сделали разработчиков полностью устаревшими?
Спасение, как это часто случится в ближайшем будущем, в творчестве.
Это отличная возможность переместить разработчиков программного обеспечения на более ранние этапы проекта, то есть привлечь их к этапам планирования. Они не только знают, что можно реализовать, а что нельзя. Благодаря своему творчеству они могли создавать ценность такими способами, которые априори невообразимы.

Прошло пять лет с тех пор, как Сатья Наделла из Microsoft заявил, что «Каждая компания будет компанией-разработчиком программного обеспечения». Он был прав.
Программное обеспечение - король
Если нынешняя пандемия нас чему-то и научила, так это тому, что большая часть жизни и создания ценностей в последние месяцы происходит в Интернете.
Программное обеспечение — король. Как это ни парадоксально, это становится более очевидным, чем больше это автоматизировано. Автоматизация превращает программистов в мировых лидеров завтрашнего дня.
Месть ботаников
Когда я был моложе, люди, любившие компьютеры, считались асоциальными детьми, ботаниками, отвратительными существами, зомби-подобными существами, лишенными человеческих чувств и страстей.
Однако чем больше времени проходит, тем больше людей видят другие стороны разработчиков программного обеспечения. Программиста уже считают не ботаником, а умным человеком, умеющим создавать интересные вещи.
Конечно, через десять лет (в некоторых случаях даже через несколько месяцев) разработчики программного обеспечения будут делать то, что мы даже не можем себе представить прямо сейчас. Но это не значит, что он больше не будет работать. Может, они просто поменяют имена и работу.