Все статьи | Карьера

Функциональное программирование и работа

Функциональное программирование и работа главное изображение

Свежий выпуск вопросов и ответов. Вопрос от Петра Алексеенко:

Я начинающий веб-программист, уже могу делать простые сайты и веб-сервисы на PHP, сейчас изучаю JavaScript. Много слышал про функциональное программирование, и как крут Хаскел и Clojure, посмотрел несколько уроков, сделал несколько упражнений. Интересно, прикольно, но не могу понять насколько это вообще имеет для меня смысл в реальной жизни. С одной стороны — очень интересно и есть приятное ощущение, что работаешь с элегантными штуковинами. С другой — прямо сейчас не могу ничего из этого применить, а сайты на PHP могу делать прямо сейчас. Стоит ли новичку лезть в дебри того же Clojure и ClojureScript, или сначала набрать достаточно опыта в обычных языках и фреймворках? Есть ли "правильное время" для изучения функционального программирования?

Отвечает Никита Прокопов (@tonsky):

Если стоит задача обеспечить себе карьеру — наверное, нет. Работу будет найти непросто.

Если просто так, то, думаю, да. Есть языки, через которые транслируются правильные идеи про промышленное программирование, разработку надежных систем, и пр. Для меня это Erlang и Clojure (ну, и еще питоновский PEP-8). Ради этого их стоит изучить, определенно.

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

Аватар пользователя R. D.
R. D. 20 февраля 2017
Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
30 июня 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
30 июня 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
30 июня 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
30 июня 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
30 июня 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
30 июня 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
30 июня 5 месяцев