Есть ли смысл в изучении новых (совсем молодых) инструментов и языков программирования и какие у них перспективы?

Изучение одного языка сегодня не имеет смысла. Востребованы стеки технологий. Как правило, "чисто" язык тоже не изучается и после определенного уровня знаний дальнейшая работа уже ведется с продвинутыми инструментами и библиотеками.

Постоянно появляются новые языки, вроде GO, Dart, набирает популярность Phyton, Ruby on Rails (хотя в российских компаниях мало востребованы).

Стоит ли сейчас начинать изучение и есть ли в этом смысл? Больше всего беспокоит вопрос потраченного времени - будет обидно, если в дальнейшем ты не будешь востребован на рынке.

Сейчас имеются базовые знания по php+js+html+css.
Рассматриваются варианты работы как на себя (фриланс), так и в компании.
Буду признателен за советы.
  • Вопрос задан
  • 6299 просмотров
Решения вопроса 5
barmaley_exe
@barmaley_exe
Как справедливо заметили выше, Python и Ruby существуют уже 20+ лет, так что популярность они набрали уже давно.

Go, Dart, Rust, D, etc интересны для изучения в целях расширения кругозора, но "в продакшен" не годятся: за 5 лет обширным сообществом не обзаведёшься, а, значит, ни выбора в плане библиотек, ни профессиональных кадров. Конечно, могут существовать отдельные проекты, исповедующие эти языки, но таких меньшинство.

В последнее время многие прыгают вокруг JavaScript'а: сначала его перенесли на сервер (на самом деле, это сделали задолго до Node.JS, но не взлетело), а потом стали использовать чуть ли всюду (в win8, например, или PhoneGap). Но JS'у повезло иметь довольно больше коммьюнити на момент разгара этого хайпа, потому и понеслось.

Выберите что-то из Python, Ruby, JS и разберитесь в этом (не столько в самом языке, сколько в его экосистеме, т.е. библиотеках, фреймворках и паттернах). Будет нужно — разберётесь в другом языке с его экосистемой. Идеи везде одни и те же, отличается только синтаксический сахар.
Ответ написан
deadbyelpy
@deadbyelpy
веб-шмеб
"Постоянно появляются новые языки, вроде GO, Dart, "
можете привести пример? Эти языки уже как 2-4 года существуют и обкатываются.
Самый свежий - Swift, про другие не в курсе

"набирает популярность Phyton, Ruby on Rails (хотя в российских компаниях мало востребованы)."
что то вы опоздали, Python и Ruby уже прочно заняли свою нишу, особенно Py.

"Больше всего беспокоит вопрос потраченного времени - будет обидно, если в дальнейшем ты не будешь востребован на рынке."
если вы начнете изучать Python (который "набирает популярность") то вы найдете свою нишу.
даже с более свежим Go вы не пропадете.
но вот если учить язык у которого:
1) нет сообщества
2) главный мейнтейнер - Григорий с соседнего подъезда
3) ничем не отличается от С
у вас не много шансов найти работу имея знания этого языка.

Фриланс, фриланс...
"Сейчас имеются базовые знания по php+js+html+css." - если все на среднем уровне вы и так сможете себя прокормить.
Изучите python, ruby, js на проф уровне - вам дорога в более оплачиваемую работу.
Хорошо можно и с pjhc зарабатывать, но тут нужен опыт, ибо сайт визитка - копейки по сравнению с сервисом.

Совет.
Сейчас востребован фулл веб стек.
Изучите лучше то с чего уже начали. Углубитесь в фронт (js+hml+css) или бек (php+sql+nosql) энд. И вы всегда найдете себе работу, конечно если искать будете.
Ответ написан
hrls
@hrls
На ответ тянет deadbyelpy
Добавить можно про определенную категорию языков, работу на которых найти тяжело, но изучить тем не менее стоит. Например, Erlang, OCaml, F# и другие функциональные языки очень сильно развивают мышление в терминах проблемы, а не языка программирования (то, что у МакКоннелла "Программируйте с использованием языка, а не на языке"). Clojure, как пример очень старой основы для языка, но с неимоверно крутыми идеями для современного мира, вроде STM да и в целом моделью параллелизма (отдельно стоит упомянуть ClojureScript и FRP).
Изучение одного языка сегодня не имеет смысла
– тяжело не согласиться, т.к. сегодня программист просто вынужден знать несколько языков (думаю 2-3 на уровне библиотек и фреймоворков, 5 на уровне стандартной библиотеки, и с десяток на уровне чтения кода). Провериться можно тут.

После определенного уровня профессионализма программист сам способен выбирать на чем писать, и наличие в его арсенале нескольких языков и платформ является несомненным плюсом.
А вообще, уже давно прошло то время, когда ты либо программируешь на Fortran/Basic/C, либо голодный и без денег. Изучение даже очень редкого языка окупается, т.к. это повышает уровень абстракции на котором мыслит программист. Корреляция этого уровня и зарплатных ожиданий пусть и сложна, но определенно существует.

Бывалые же советуют всегда держать под рукой интерпретируемый язык программирования, вроде Python или Ruby с REPL, для работ вроде "забрать кучу файлов по адресам из текстового файла". Ну и какой нибудь компилируемый тоже пригодится. Вне зависимости от стека и основного языка на проекте эти два друга будут выручать в любых ситуациях.
Python/PHP/Ruby для веба являются взаимозаменяемыми (при наличии нормальной архитектуры у приложения). Связка C/Go/Python/JS выглядит мощной и очень достаточной на много лет вперед.

А то, что все зовут стеками, для других является всего лишь набором старых парадигм, паттернов и практик, кочующих от одного языка к другому, но суть от этого не меняется (тут ООП и MVC передают приветы Smalltalk'у, а бородатый Лисп недоумевает, т.к. все эти DSL и приемы метапрограммирования давно живут своей жизнью и забыли истоки).
Ответ написан
ЯП - это инструмент. Само по себе знание ЯП (любого) не имеет ценности. Важна связка ЯП и области приложения. Профессионализм программиста зависит в первую очередь от понимания области приложения.
Например, будь Вы программистом, который знает все тонкости C++. Вам это не поможет написать АБС, если у Вас нет знаний по бухгалтерии кредитных организаций.

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

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы