Самое главное в споре – вовремя определить, имеешь ли дело с адекватом или маньяком. Маньяками я называю тех, кто фанатично уверовал в превосходство той или иной технологии и не считается ни с какими доводами. У таких людей один аргумент – вера. Пока человек придерживается веры, он игнорирует любые аргументы. Пусть считает себя правым, что нам с того?

Так, пенсионер доказывает, что в СССР жилось лучше, а Сталин был мудрым вождем. Верующий освящает машину и поощрает уроки православия в школах. А наш маньяк убежден, что Хаскель – лучший в мире язык программирования. Теперь он лепит иконки языка в виде монадного оператора и любую беседу сводит на одну тему.

Чем он лучше религиозного фанатика или коммуниста?

Существует единственно верный способ проверить маньяка. Попросите его дать ссылку на рабочий проект, написанный на Хаскеле. Вы должны либо перейти на сайт, либо скачать утилиту. Короче, отклик должен быть мгновенным, либо есть, либо нет.

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

Рассуждать о технологии имеет право только тот, у кого крутится рабочий проект.

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

Мы все читаем книжки и любим почесать языком. Но, ребят, знайте меру. Задачки с Эйлер-проджект или Экзорцизма не доказывают ничего. Точнее, они подтверждают, что в какой-то момент у автора было свободное время и упорство, чтобы посвятить себя этому занятию.

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

Маньяк зыбывает очевидную вещь. Целое больше суммы деталей. По отдельности обращаться к базе, отдавать джейсон и писать логи легко. Гораздо труднее делать это в рамках единого приложения. Когда сначала идешь в кэш, если нету, запрос в базу, кладешь в кэш, отдаешь джейсон и на каждом шаге логируешь потенциальные исключения. И сразу становится сложно, неважно Хаскель у тебя или Питон.

В итоге выясняется, что ничего кроме задачек и мертвого проекта, которого нет в продакшене, маньяк не может предоставить публике. Только Громкие Заявления. И зарплату он получает за какой-нибудь Перл или С++. Все понятно.

Мудрый человек – это человек сомневающийся. Когда нет никаких сомнений в превосходстве чего-то или кого-то, срочно меняйте точку зрения. Мы просто хотим избавиться от выбора, снять ответственность за ошибочное решение. “Мы берем технологию Х, потому что это убер-круто” – большая ошибка.

Словом, взялся говорить за Хаскель, Эрланг, ФП, ООП – покажи проект. Чтобы я увидел прямо сейчас. Не трать наше время.