Vurtseed
Erlang в современном вебе
Роль Erlang'а
Суровая реальность такова, что строить команду с расчетом на Erlang разработчиков не получится при всем желании, свободных людей на рынке практически нет, а те кто есть заняты в долгосрочных проектах. Есть шанс выдернуть тех, кто сидел программировал на чем-то обычном, параллельно изучая Erlang и вот он созрел на своих проектах и готов выпрыгнуть на новое место работы. Но это случайная величина.
Второй момент в том, что для Erlang в современном вебе не так много места. Создавать "еще один корпоративный сайт" можно на чем угодно. Необходимость в Erlang'е подходит тогда когда надо решать инфраструктурные задачи эффективным образом. А такие случаются, но редко и мало кто их учитывает при проектировании (людей-то нет). Скажем так, направление стартапов — это само по себе очень узкое направление.
Но природа знает как делать так, чтобы "все цветы цвели". В политологии применяется термин "Элиты", который в данном контексте можно было бы расширить до "Технологической элиты". Изучать какой-то новый предмет научного знания начинают не те кто идет самым легким путем. Приведу пример который произошел за время моей жизни в котором я принимал активное участие и имел возможность рефлексировать свой опыт. Python когда-то был таким же маргинальным языком программирования как сейчас Erlang. Когда я начинал делать первый проект в 2000 году, то Perl был язык программирования сайтов #1.
Создание сайтов еще не было такой массовой отраслью как сейчас, но ФИДОшные привычки общения быстро перенеслись в "mainstream" рассылки и форумы. Набегающие новички быстро подхватывали общую тональность и становилось понятно, что общаться по сути не с кем.
Другие правила были в Python сообществе. Во-первых оно было не такое большое, во-вторых пропитано духом англоязычной тусовки. В которой кажется у большей части пишущих людей было как минимум высшее образование и докторская степень. Люди которые всегда были умнее тебя, без учета личных качеств. Даже само просматривание переписки в рассылках учило чему-то новому. Модель поведения людей кардинально отличалась. Даже не хочется перечислять паттерны поведения, но они походили на слаженную работу ученых которые делятся своими открытиями и опытом.
Но качественное выполнение работы не остается безнаказанным. Умение думать создало большое количество потрясающих продуктов, а желание делиться позволило создать для них отличную документацию. Причем это происходило не за счет проталкивания деньгами больших корпораций. Люди приходили учить Python потому, что хотели этого для себя.
Сейчас Python становится тем самый мэйнстримом. Если посмотреть Хабр, то видно, что статей о Django публикуется больше чем о PHP. И от этого становится и грустно и радостно одновременно. Радостно, потому что тропинка которую мы протаптывали теперь превращается в широкое шоссе вокруг которого создается инфраструктура. А грустно потому, что все чаще видно как очередной программист погнавшись за модным словом и, не чтя традиции Python сообщества, создает "еще один неработающий пагинатор". С другой стороны он хотя бы хочет делиться, что уже хорошо. Но я не научусь у этого человека ничему новому.
Вот теперь и начинается опять Erlang. Функциональные языки программирования долго ждали своего часа. Да, кружки людей которые изучают экзотические технологии были давно и будут тоже. Но сейчас образовался спрос на образ мышления который воспитывает ФП. И Erlang сообщество это то место в котором умные люди и у них есть чему поучиться. И я вижу как люди которых я уважал еще в Python рассылках теперь подписаны на Erlang в России. Вот такая вот миграция элит.
Будущее Erlang'а
Что же произойдет дальше? Кажется, что это самый интересный пункт писать о будущем. Но на самом деле это самая скучная часть.
Функциональный язык программирования не займет лидирующего места. Рынок Erlang'а увеличится, но все так же останется маленьким. Технологии для индусов (.NET) и людей не способных прочитать и понять научную документацию (PHP) будут так же занимать подавляющую долю заказов. Продукты на основе Erlang'а займут специализированную нишу (пишу в будущем времени только потому, что ниша увеличится, хотя равнозначно можно писать и в настоящем времени) и будут в ней конкурировать с технологиями на других языках. Проекты с расчетом именно на возможности языка будут появляться чуть чаще, но все равно очень редко.
Концепции которые применяются в ФП в случае необходимости будут заимствоваться в языках широкого назначения. Точнее это уже произошло (см C#, JavaScript, Python, etc).
Стоит ли учить Erlang? Да конечно. Поскольку язык будет использовать не так широко, то значит и специалистов будет найти сложнее. А значит тогда когда он действительно будет нужен проекты и отношение к сотруднику будет другого порядка. Шанс работать с людьми которые знают чего хотят повышается. Тусовка находясь в которой не падает самоуважение уже большой плюс.
- 04 Мар 00:13
