Low-code съедает рынок разработки

27 декабря 2021
2 комментария

Low-code — это не временное явление, а глобальный тренд, причем настолько сильный, что уже через несколько лет рынок разработки будет выглядеть совсем не так, как сегодня. Аргументы от СЕО Loginom Company.

В последнее время я регулярно стал сталкиваться с мнением, что «Low-code — это игрушки, давайте все программировать на Python и будет счастье». Нескончаемый поток рекламы курсов, обучающих программированию и обещающих сделать из любого пользователя классного программиста за пару месяцев, не оставляют сомнений, что это возможно, но эта гипотеза не подтверждается наблюдениями. Более того, все факты указывают на прямо обратную ситуацию.

Я — CEO компании Loginom, которая много лет занимается созданием аналитической платформы, позволяющей проводить сложную аналитику бизнес-пользователям, то есть специалистам, не особо разбирающимся в программировании. Под сложной аналитикой я подразумеваю консолидацию, очистку данных, скоринг, прогнозирование и тому подобные задачи. Как недавно выяснилось, для этого подхода существует удачный термин — low-code. Так как я занимаюсь анализом данных, то все описанное ниже рассматривается применительно к аналитике. Но практически то же самое можно сказать про любую разработку вообще.

Растущая потребность в и без того дефицитных разработчиках указывает на то, что есть серьезные проблемы с программистами, но нет... Статьям и выступлениям на конференциях люди верят больше, чем своим глазам. Если все вокруг говорят одно, то не так-то просто убедить в чем-то ином, даже если это ты видишь каждый день и есть объективные аргументы в пользу твоего мнения.

Я более 20 лет занимаюсь продвинутой аналитикой, и все это время у меня перед глазами показательный пример того, насколько могут не совпадать слова с действительностью. Любой, кто занимался анализом реальных данных знает, что 80% времени и сил уходит на очистку и подготовку данных. Качество данных — проблема номер один. Я не видел ни одного проекта, который опровергал бы это. Уверен, что у всех остальных ситуация аналогичная. Казалось бы, все должны постоянно говорить о качестве данных, вот она — главная боль любого клиента. Это должно быть темой номер один на любой конференции, но нет…

Судя по количеству материалов в СМИ и проводимым конференциям, у клиентов такой проблемы нет. Упоминания о ней встречаются в десятки раз меньше, чем любая задача со словом «искусственный интеллект». Т.е. абсолютно в любом проекте большинство проблем связано с качеством данных, но о них почти никто не говорит. И на фоне этого в компаниях вводят должности директоров по искусственному интеллекту, которых интересует только одно: куда бы встроить нейросеть.

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

Поэтому ниже я постараюсь собрать все аргументы и объяснить почему low-code — это самый мощный тренд, появившийся за последние годы и почему именно low-code окажет огромное влияние на рынок разработки и перекроит его.

Первое, что необходимо четко понять и осознать — рынок меняют массовые технологии. В мире каждый год происходит огромное количество интересных прорывов в различных сферах: физика, химия, медицина, сельское хозяйство, архитектура, искусство и прочее. Однако, 4-ая промышленная революция, та самая, которая происходит у нас на глазах, связана с информационными технологиями.

Причина в том, что IT получило колоссальное распространение и проникло во все сферы. Это не нишевая технология, а самая массовая. Поэтому столь велико её влияние на всё, что происходит вокруг. Следствием огромного влияния IT на мир является и то, что топ 5 самых дорогих компаний Apple, Google, Microsoft, Amazon, Facebook* —  все из сферы IT. Только действительно массовые вещи перекраивают весь рынок.

Основное требование к массовой технологии — она должна быть простой в использовании и недорогой. Чем ниже планка, тем больше людей в состоянии её преодолеть. Ни одна сложная в применении технология никогда не станет массовой. Если для решения какой-то задачи можно воспользоваться несколькими технологиями, самая простая из них получит 80-90% всего рынка. По поводу «недорогой», думаю, что ничего дополнительно объяснять не надо. Очевидно, что дорогая технология не будет доступна широкому кругу пользователей.

После этого, я слышу сразу «Python – очень простой». Очень простой по сравнению с чем и для кого? По сравнению с C++  он простой. Для людей, которые знают несколько языков программирования — он простой. Но это всё небольшая часть рынка. Для подавляющего большинства людей любой язык программирования — сложный.

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

Человеку из симфонического оркестра кажется, что все разбираются в классической музыке, потому что он только с такими и общается. Для того, чтобы понять реальную ситуацию, музыканту надо выйти на улицу, опросить сотню случайных людей относительно их знаний и убедиться, что 95% людей никогда в жизни не посещали ни одного симфонического концерта, а все их знания классики крутятся вокруг «Турецкого марша» и пару десятков подобных популярных классических мелодий, которые стали фактически попсой.

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

На рынке труда в России, да и в мире вообще, есть большой запрос на программистов, причем любых. Это произошло не сейчас, дефицит программистов ощущается минимум последние лет 30. При этом есть много людей на низкооплачиваемых должностях, желающих зарабатывать больше. Для них имеется идеальное решение: потрать месяц на изучение Python и почти сразу сможешь зарабатывать в 2-3 раза больше.

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

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

Люди записываются на курсы тысячами, но очень быстро остывают. Подавляющее большинство не выдерживает и месяца. Быстро выясняется, что для решения более или менее серьезных задач надо много чего знать (сюрприз!). При этом, в рекламе курсов будут рассказывать, что всё проще некуда — пара строчек кода и ты специалист в машинном обучении. А по завершении ты сразу начнешь получать 200 000 руб., за тобой работодатели будут еще и бегать.

Ты, главное, заплати 100 000 руб. за доступ к курсам и всё. Нет денег — ничего страшного, можно тут же оформить кредит. Всего-то 7 000 руб. в месяц, что отобьется за 2 дня работы.

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

И всё время повторяется один и то же шаблон. Да, можно быстро обучиться программированию для решения простых задач и делать всё по шаблону, типа загрузки данных или построения диаграммы, но это можно сделать и без всякого программирования раз в 5-6 быстрее. Вопрос — зачем учиться? При использовании Python можно погрузиться глубже и взяться за сложные задачи, но тогда про «быстро обучиться» надо забыть. Придется пускаться во все тяжкие.

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

Теперь вернемся к low-code и объяснению того, почему именно он станет самой массовой технологией будущего.

Есть объективная ситуация — спрос на аналитику растет. Данных становится больше, причем у любых компаний, вне зависимости от размера. Конкуренция не будет ослабевать, поэтому бизнес думает о том, как извлечь пользу из накопленной информации. Тем более, что весь предыдущий опыт показывает — правильный анализ и принятие решений на основе данных дает серьезную выгоду.

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

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

  1. Люди ленивые. Если будет несколько вариантов решения проблемы, то подавляющее большинство людей в первую очередь будет рассматривать самый простой вариант. Более сложные альтернативы они готовы рассматривать только в случае, если простой способ совершенно не устраивает. Более того, пользователи не гонятся за идеальными решениями. Если простой вариант решения более или менее закрывает проблему хотя бы наполовину, этого достаточно для того, чтобы пользователь остановил свой выбор на нем.
  2. У людей катастрофически нет свободного времени. Даже если пользователь не ленится и хочет приложить усилия, у него всегда будет проблема с выделением времени. Дело в том, что анализ данных не является смыслом жизни людей. У них есть сотни других проблем, которые претендуют на свободное время. Может стоит больше времени уделить воспитанию детей, занятию спортом, здоровью, общению с друзьями, культуре, хобби и еще тысяче других дел? Большинство из нас хотели бы свободно говорить на английском. Это реально полезная штука, дающая много преимуществ, и как успехи? Продавцы курсов по обучению английскому говорят, что нужно всего-то выделять по часу в день в течение полугода. Многим ли удается выделить этому достаточно времени? А главное, многие ли свободно заговорили на английском после оплаты курсов?
  3. Люди нетерпеливы. Если какой-то результат нельзя получить достаточно быстро, у людей резко падает мотивация. Вариант, при котором можно получить хороший результат, но через год – плохой. Приложить усилия на короткое время люди готовы, но долго ждать – нет. Именно поэтому через 1, максимум 2 месяца после начала изучения языка программирования, когда люди изучат простые вещи, 90% обучающихся прекращают занятия. Для того чтобы не отказаться и продолжать заниматься нужна очень сильная мотивация.

А теперь, для того, чтобы было более осознанное понимание того, как всё, описанное выше, влияет на развитие технологий, я приведу пример отрасли, где за последние 30 лет произошло несколько революций – это фотография. Когда-то фотография была уделом небольшого количества людей. Этим занимались или профессионалы в фотоателье или увлеченные люди. Желающие самостоятельно фотографировать, должны были сами проявлять пленки, печатать и т.п. Естественно, что таких было немного.

Первая революция произошла, когда появились так называемые «мыльницы» и фотосалоны. Предыдущее поколение фотографов говорило, что мыльницы — это ужасно, ну что хорошего можно снять на такую камеру? Но большинство людей это не смущало. Да, качество плохое, зато нащелкал, отдал в фотосалон и тебе напечатали. Никаких проявителей, глянцевателей и прочих сложностей. Сейчас не все это помнят, но тогда фотосалоны были через каждые 100 метров. Это было революционное изменение – миллионы людей начали фотографировать.

Затем появились цифровые фотоаппараты и история повторилась — «цифра никогда не заменит пленку». Помните, какое было разрешение у первых цифровых фотоаппаратов? Напомню – 1-2 мегапиксела — это очень мало. Но качество постепенно улучшалось, и на рынке появлялось все больше цифровых камер. И тут выясняется, что никакие фотосалоны не нужны. Вставил SD-карту в компьютер и смотри фотки. Да, вначале качество было не очень, но получение снимков стало еще проще, чем с мыльницами. Как только качество стало не таким уж отвратительным, началось активное вытеснение предыдущего массового товара – пленочных фотоаппаратов-мыльниц на цифровые камеры. Эта технология могла бы стать самой массовой, но не успела, т.к. подоспела очередная волна инноваций – фотоаппараты в телефонах.

И снова всё началось сначала — «как можно получить хорошую фотографию с такой оптикой — телефоны никогда не заменят нормальные цифровые камеры». Опять вначале качество фото на телефонах было ужасное, но оно постепенно улучшалось и когда достигло более или менее приемлемого уровня, выдавило технологию предыдущего поколения, потому что была еще удобнее. Выяснилось, что фотоаппарат всегда с тобой в кармане и даже SD-карта не нужна, всё автоматом улетает в облако. Сегодня 95% всех фотографий делаются на телефоны и сделать их может любой человек в любой момент.

 

Продажи фотоаппаратов всех мастей становятся незаметны на фоне продаж смартфонов. Источник

Этот пример я привел для того, чтобы все понимали, как технологии развиваются, какие проходят стадии и как продукты/услуги становятся массовыми:

  1. Новая технология вначале может выдавать менее качественные результаты, чем старая, но у неё всегда есть одно важное преимущество — она удобнее и/или дешевле. Новая технология делает продукт или услугу доступнее, потому что уменьшает сложность процесса или сильно снижает цену.
  2. Благодаря простоте и удобству, новой технологией начинают пользоваться всё больше людей, которые готовы вначале смириться с тем, что качество посредственное.
  3. Новая технология не стоит на месте, она становится всё лучше и постепенно доходит до такого состояния, что способна удовлетворить основные потребности клиентов. Это точка невозврата. В конце концов, она догоняет и перегоняет старую технологию.
  4. Старая технология не исчезает, она становится нишевой, отдавая почти весь рынок новой технологии.

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

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

Теперь проведу аналогию с анализом данных и low-code подходом:

  1. Кодирование на любом языке – это сложно для большинства людей. Поэтому до сих пор основной инструмент аналитиков – Excel. Никакой Python никогда его не столкнет с вершины. Да, люди будут прибегать к программированию и сейчас, но только если не будет никакой альтернативы. Массовому рынку нужно что-то более простое.
  2. Low-code намного проще в использовании. Достаточно показать как связываются несколько кубиков и уже можно решать задачи. Он сильно снижает планку и как следствие расширяет рынок потребителей в десятки и сотни раз. Даже если вначале это будут не самые сложные задачи — ничего страшного. Возможность получать результат после просмотра пятиминутного ролика — это убийственный аргумент.
  3. В данный момент low-code технология относительно молодая и какие-то вещи не способна сделать. Но это временное явление. Учтите, что тот же Python развивался 30 лет, прежде чем стал таким, как сейчас. Отсутствие чего-то важного в новой технологии — это просто детские болезни. Главное, что low-code проще, остальное со временем появится.
  4. Как только low-code будет более или менее нормально решать самые частые задачи, произойдет резкое изменение ситуации и увеличение спроса. Ему для успеха даже не обязательно решать задачи на отлично, достаточно, чтобы они были решены на минимально удовлетворительном уровне. Массовый пользователь будет счастлив, т.к. он наконец-то сможет автоматизировать решение рутинных задач.
  5. Рынок не будет развиваться в сторону того, что все решат преодолевать трудности и перейдут на Python. Еще ни одна технология так не добивалась успеха. Поэтому ни одна сложная в применении технология не обходила по популярности простую. Всё будет развиваться с точностью до наоборот. Low-code постепенно будет наращивать возможности, пока не закроет основные задачи, а затем все чаще будет покрывать сложные задачи, отъедая рынок у Python. Кодирование останется, но для редких или очень сложных задач, которые нет резона реализовывать в low-code платформе.

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

Кстати, причина популярности Python по сравнению с другими языками программирования точно та же, что описана выше — он проще, а самая популярная среда для написания кода — Jupyter Notebook, который можно вообще не устанавливать, а открыть в браузере. Все потому, что самый простой язык и простая среда обязательно перетянут на свою сторону максимум сторонников. Но важно понимать, что Python простой не вообще, а в сравнении с другими языками программирования. Логическая ошибка заключается в том, что не принимается во внимание наличие альтернативных способов анализировать.

Если вспомнить пример с фотоаппаратами, то пленочные мыльницы в сочетании с фото-салонами — это проще чем фотоаппараты предыдущего поколения в сочетании с самостоятельной обработкой пленки. Однако, кто сказал, что задачу можно решать только таким способом? Появление цифровой фотографии доказало, что можно вообще обойтись без пленки.

Люди хотят зафиксировать память на будущее, а будет ли это сделано при помощи пленки или чего-то другого — не столь важно. Аналогично и в анализе: пользователи хотят принимать обоснованные решения, а как будет решаться данная задача — не важно, но чем проще инструмент, тем лучше. Поэтому для ежедневной работы Excel по популярности всегда будет обходить Python.

Помимо всего описанного выше, есть еще один крайне важный аспект, который я опустил: ключевыми носителями экспертизы являются специалисты в предметных областях. Для того, чтобы разобраться в любой предметной области нужны годы на погружение. К моменту, когда человек разберется в теме, он забывает программирование, даже если когда-то знал. Значит, он не может самостоятельно решать большинство задач и вынужден привлекать еще людей и объяснять им, что надо реализовать.

Если у специалистов-предметников не будет никакой альтернативы, то они станут решать проблему так, как позволяет текущее развитие технологий, т.е. собирать команды, стараться донести до разработчиков, что надо делать, тратить кучу усилий впустую. Однако, как только появится удобный способ решать задачу своими силами, эксперты сразу переключатся на него. Отлично оборудованные фотосалоны со специально обученными людьми оказались ненужными, как только появились цифровые фотоаппараты. Это произошло у нас на глазах, как говорится «скрипач не нужен, родной, он только лишнее топливо жрёт».

Представление о том, что low-code — это не прорывная технология, что она не способна совершить революцию возникает из-за нескольких когнитивных искажений:

  1. Слишком больший информационный шум вокруг Python, машинного обучения и прочего создает ощущение, что в будущем будет только он. Большое количество курсов говорит только о том, что пока есть хайп, многие хотят заработать на продаже обучения, а не о том, что скоро все вокруг будут разработчиками. Поинтересуйтесь сколько из тех, кто заплатил за обучение, дошел до конца и сколько из них решает реально сложные задачи, для которых, собственно, есть резон использовать язык программирования.
  2. Отставание в функционале от языков программирования текущей реализации low-code систем создает ощущение, что так будет всегда. При этом простота low-code — не считается важным свойством, а вот отсутствие реализации какого-то алгоритма воспринимается, как очень важный недостаток. Но это временное явление. Low-code системы по мере развития смогут решать всё более сложные задачи, а вот язык программирования как был сложен для большинства людей, так и останется.

Я не хочу сказать, что языки программирования исчезнут и всё можно будет закрыть при помощи low-code. Это не так. Всегда будут сложные и уникальные задачи, которые придется решать соответствующим инструментом. Ведь, хотя у каждого сейчас в кармане приличный фотоаппарат, встроенный в телефон, фотографы все равно остались.

Я хочу сказать, что область применения low-code продуктов будет расширяться в первую очередь за счет привлечения к анализу данных тех, кто ранее использовал только Excel. Со временем эта технология станет доминирующей, и под неё перестроится весь рынок.

Те, кто сейчас считает, что low-code это игрушка, а серьезные вещи требуют кодирования, станут всё чаще применять low-code инструменты. Low-code задавит массой так же, как фотоаппараты, встроенные в телефоны, стали самым распространенным способом что-то снять. Теперь даже профессиональные блогеры, фотографы и прочие создатели контента всё чаще используют именно телефоны.

Для подтверждения мысли о потенциале low-code приведу прогноз Gartner. Согласно ему в 2024 года 66% всего корпоративного софта будет разрабатываться с использованием low-code инструментов. В области аналитики произойдет тоже самое. 66% — это много, очень много. На самом деле, данная цифра означает, что всё, что только можно реализовать при помощи low-code будет реализовано именно на нем.

Проще говоря, low-code и есть та технология, которая будет определять правила игры в скором будущем. Это революция, которая происходит у нас на глазах и тренд, который никто не сможет переломить. Причины такого прогноза описаны выше. Те, кто этого еще не осознал, учитывают только текущую ситуацию. Они не принимают во внимание, что пройдет некоторое время, low-code платформы разберутся с детскими болезными и достигнут хорошего уровня зрелости.

Надо понимать, что детские болезни говорят не только о том, что технология еще не полностью удовлетворяет потребностям клиентов и то, что она находится на стадии роста. Это идеальное время для выхода на рынок. Именно поэтому low-code самое популярное слово у стартапов. Со временем, когда многие проблемы будут решены, уйдут не только детские болезни, но и рост. Того, кто к этому времени сможет стать лидером будет практически нереально подвинуть. Рынок будет занят. Придется придумывать новую технологию и опять проходить все стадии.

Вопрос не в том, какой подход победит и станет массовым — low-code или кодирование. Более простая в использовании технология всегда будет более массовой и точка. Вопрос в другом: какую low-code платформу станут использовать большинство людей.

И в заключении. Многие люди путают такие понятия, как изобретения и инновации. Изобретение – это создание чего-то нового, например, технологии, алгоритма, материала. А инновации – это внедрение изобретения в жизнь. Почему-то многие считают, что изобретение – это круто, а инновации – так… ерунда. Они видимо не осознают, что на слуху только те изобретения, которые стали инновациями.

Тот, кто изобрел фотоматрицу, используемую в смартфонах — сделал интересную штуку, но революцию совершил не он, а Apple с iPhone и Google с Andriod. Они «всего лишь» сделали эту технологию массовой, а заодно создали целые отрасли экономики и изменили стиль жизни всего человечества. Интересно, много ли людей могут сказать, что до неузнаваемости изменили образ жизни миллиардов людей? Изобретения — это всего лишь материал для инноваций. Если изобретению не будет найдено применение, делающее его полезным и доступным миллионам людей, оно потеряется в тысячах других изобретений, не нашедших путь к потребителям. Low-code идеология — не кратковременная мода, а технология обладающая огромным инновационным потенциалом, способным перекроить рынок разработки до неузнаваемости.

* Meta (Facebook) признана в России экстремистской организацией.

 

Другие материалы по теме:

Что нового в Loginom 6.5

Low-code аналитика в вузах

#low-code#автоматизация

Смотрите также