Автоматизация и системы на основе искусственного интеллекта постепенно вытесняют людей из различных профессий. Когда многие думают об этом, они представляют, как без работы окажутся водители такси и грузовиков, но вовсе не программисты. Тем не менее, и в некоторых сферах разработки ПО человек может позволить себе знать все меньше, чтобы создать законченный продукт. В качестве примера можно привести колонку Игоря Стефурака, deal-flow manager бизнес-акселератора GrowthUP, где он рассказывал о создании веб-сервисов без программирования. Тему о том, что ждет разработчиков, когда машины начнут писать за них код, более подробно в своем материале раскрыло издание VentureBeat. Редакций AIN.UA приводит его полный перевод.
“До того, как компьютер победит человека в Го, может пройти сотня лет или даже больше” - New York Times, 1997 год
“Мастер игры в Го разбит компьютерной программой Google” - New York Times, 2016 год
Разработка программного обеспечения пережила серьезную смену парадигм за последнее десятилетие. Когда-то она была доступна только для разработчиков, обучавшихся много лет, имеющих возможность работать на дорогих серверах. Сейчас веб-разработка стала ремеслом, которому на буткемпах обучают за несколько недель. Теперь мы быстро приближаемся к новой смене парадигмы, где код сможет генерировать искусственный интеллект. Когда мы достигнем переломной точки, веб-разработка официально умрет. Работники этой сферы вовсе не готовы к такому развитию событий.
Вот несколько серьезных изменений, которые привели нас к этой точке.
Перемена #1: WordPress
WordPress запустился 27 мая 2003 года. С того момента популярность платформы росла благодаря разного рода плагинам и темам, которые позволяют любому не имеющему технического опыта предпринимателю запустить свой веб-сайт без написания и строчки кода. Несмотря на то, что WordPress имеет свои ограничения, они не мешают ему управлять работой 26,5% всех веб-сайтов. Что же делают остальные 74,5%? Смотри перемену №2.
Перемена #2: открытый исходный код, Node и фреймворки
Когда-то Node воспринимался как игрушечный язык, но он быстро начал захватывать веб-сферу и дал толчок к развитию невероятного open-source сообщества. Для тех, кто не в курсе, Node – это способ запуска JavaScript на сервере. Он дал возможность разработчикам, которые писали код на стороне клиента (front-end веб-разработка), программировать backend, не меняя язык.
Вокруг него существует невероятное сообщество, которое активно развивается и делает вклад в открытый код проекта. Инфраструктура и пакеты с открытым кодом очень мощны и позволяют разработчикам не только решать собственные проблемы, но и помогать всему сообществу. Создание software-проекта на Node сегодня похоже на игру с блоками Lego: большинство времени вы проводите, просто соединяя их.
Перемена #3: Для этого уже есть API. SaaS, BaaS и другие фреймворки
Хотите добавить возможность распознавания лиц в свое приложение? Или, может, хотите интерпретировать эмоции людей на фото? Для этого уже есть API. Почти все, что может вам прийти в голову, уже имеет подходящее API (еще один блок Lego для интенсивных нетехнических целей).
Это означает, что любое программное обеспечение может быть легко создано с использование инструментов с открытым кодом и некоего специфического набора API. Если в вашем распоряжении на две недели есть веб-разработчик и вы скажете ему скопировать любой потребительский онлайн-продукт, он сможет сделать его базовую версию с использованием этих инструментов. Серьезно, любой продукт.
Конечно, это не создание компании, но невероятный рост в маржинальной продуктивности одного разработчика. Больше нет нужды даже писать собственный backend. Это не потому, что теперешние разработчики лучше старших коллег – просто сейчас они стоят на плечах гигантов.
Где мы сейчас?
Хорошо, давайте подведем итоги. Нужен веб-сайт? Вам не нужно писать код. Нужно хорошо настраиваемое веб-приложение, которое делает что-то уникальное? Скрепите несколько пакетов Node вместе. Нужно мобильное приложение? Вы можете писать на JavaScript и получите нативное мобильное приложение для Android и iOS с одним базовым кодом. Приложению нужно продвинутое машинное обучение? Для это уже есть API. Не можете найти разработчика для своего проекта? Позвоните в буткемп – у них есть 100 способных людей, которые только что выпустились. Все это звучит неплохо, но мы подходим к концу. Сейчас разработчики учатся делать то, что в конце концов будет автоматизировано хорошим подбором инструментов и умной генерацией кода.
Бизнесы строятся на невероятном выборе пакетов с открытым исходным кодом, надежных инструментах разработки и гибридных фреймворках. В них работают студенты, который научились программировать за 12 недель. Можно легко представить, что в один день любой сможет в один клик превратить свою идею в производительное, масштабируемое и удобное приложение.
Уже сейчас существуют компании, которые предоставляют услуги, позволяющие людям без опыта разработки создавать веб-приложения с нуля, без единой строчки кода. Другие уже используют машинное обучение, чтобы разрабатывать дизайн и создавать вещи для вас. Конечно, скидки по кастомизации все еще есть, но со временем они сократятся до минимума.
Когда кажется, что кто угодно может создать что угодно
Очевидно, что все сказанное не означает, что любой человек сможет создать что угодно. На каждую тысячу разработчиков, которые пользуются open-source пакетом (Lego-блоком), приходится один, создавший его. Нам нужно учить тому, как строить эти части Lego. На это 12 недель, а иногда и четырех лет, недостаточно.
Мы должны мотивировать веб-разработчиков совершенствовать набор своих навыков и глубже изучать ИИ, AR, VR, компьютерное зрение и машинное обучение. Это навыки будущего, которое уже пришло. Те, кто этого не видят и не решатся переориентироваться в течение следующих нескольких лет, рискуют закончить дорогостоящие курсы и узнать, что их ожидает зарплата офис-менеджера.
Веб уже насыщен. Это решенная проблема. Мобайл также насыщен. На каждую идею приложения, которая вас осенила, на рынке найдется три готовых решения и еще четыре, которые были созданы, но почили на стартап-кладбище. Нам нужно решать более сложные проблемы, а на это требуются навыки, превышающие набор инструментов современного веб-разработчика.
Куда идти дальше
Образование – единственный выход, а традиционные учреждения серьезно отстают. Обучение придется брать в собственные руки.
Если вы – владелец бизнеса, возможно, вам стоит задуматься над образованием ваших технических сотрудников на будущее – Google уже это делает.
Если вы веб-разработчик, основной компетенцией которого является JavaScript, Ruby on Rails или PHP, начинайте изучать новые инструменты уже сейчас. Будь это машинное обучение или компьютернее зрение, получение новых навыков сейчас даст вам возможность создавать вещи, которых еще нет, или, по крайней мере, обеспечит вам работу в будущем.
Буткемпы превратили веб-разработку в 12-недельный курс. Почему мы не можем сделать тоже самое для набора навыков будущего?