Обучение

Сообщение об ошибке

Обучение

Сообщение об ошибке

Магия Ruby: «Почему задача решается так просто?»

29 марта 2021

На удивление простой и удобный в использовании. Вместо строгих правил – гайд с примерами и советами. В него влюбляются программисты. Все это о языке Ruby. Не магия ли лежит в его основе?

Чтобы разобраться в этом вопросе и исключить все домыслы, мы поговорили с Артёмом Дубровником, преподавателем курса «Программирование на Ruby». Рассказываем, что делает Ruby таким особенным, насколько легко его изучить и найти потом работу.

На фото – Артем Дубровник, преподаватель курса «Программирование на Ruby» в IT-Academy.

Артём, давайте прежде всего ответим на вопрос: «Что это за язык?» 

Ruby – динамический, интерпретируемый язык высокого уровня с открытым исходным кодом. Его создатель, Юкихиро Мацумото, объединил части его любимых языков (Python, Perl, Smalltalk, Eiffel, Ada и Lisp), чтобы сформировать новый язык, в котором будет сбалансирована парадигма функционального программирования. Писать на Ruby просто и удобно. Язык включает в себя множество вспомогательных методов и конструкций, позволяющих делать сложный вещи простым и понятными. Ruby прост на вид, но очень сложен внутри, подобно человеческому телу


По мнению Артёма Дубровника, язык рассчитан на проекты малого и среднего размера. Ниже список самых знаковых проектов, написанных на Ruby.

  • Github веб-система управления проектами, хранимыми в среде управления версиями Git.

  • GitLab система управления репозиториями кода для Git

  • RPG Maker (RPG Maker XP) — RGSS (Ruby Game Scripting System).

  • SketchUp система трёхмерного моделирования и визуализации.

  • Redmine система управления проектами, включающая багтрекер и вики-движок.

  • Vagrant система управления виртуальными средами.

  • Homebrew утилита управления пакетами в macOS.


Что вам нравится в Ruby? Назовите, пожалуйста, основные преимущества.

Одним из основных преимуществ языка программирования Ruby, я бы назвал свободу действий разработчика. В языке нет строгих правил, ограничивающих возможности и подходы к решению задач.


  • Хочешь вызвать приватный метод? Пожалуйста.

  • Посмотреть и изменить исходный код любой библиотеки? Запросто.

  • Динамически изменить код программы в ходе ее выполнения? Без проблем.

  • Не хочешь ставить скобочки и точки с запятой? Действуй.

Взамен строгих правил, сообщество разработало Ruby Style Guide собрание примеров и размышлений на тему: как писать чистый и понятный всем код. Придерживаться этого гайда или отступать от его рекомендаций решать только вам.

– Мы обсудили положительные стороны. А какие, по вашему мнению, у Ruby есть недостатки?

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

За сколько можно выучить Ruby с нуля? Нужна ли специальная подготовка или профильное образование?

– Чтобы выучить Ruby с нуля, потребуется от 2-х до 6-ти месяцев непрерывного изучения и постоянной практики. Профильное образование будет плюсом, но ни в коем случае не является обязательным. Чтобы не стать «кодером», важно понимать основы программирования, устройство памяти компьютера, алгоритмизацию и иметь определенные знания английского языка. Все необходимые знания и навыки можно приобрести самостоятельно. В Интернете полно курсов, направленных на понимание самых основ, которые формируют базовые понимания, необходимые для становления программиста.


– Первым впечатлением от знакомства с Ruby было: «Что это вообще такое? Как это вообще работает? Вау! Почему задача решается так просто? Разве такое возможно, что код работает правильно с первого раза? Почему мне не приходится страдать, как это было при работе с C++ или Java?»


Но погрузившись в изучение идеологии Ruby и внутренней реализации языка, вы осознаете, что тут все устроено интересно и творчески. Никакой магии нет.


Насколько востребованы Ruby-разработчики на рынке труда? На какую зарплату рассчитывать джуну, мидлу и сеньёру?

– Хоть Ruby и не входит в 10-ку наиболее популярных языков программирования, спрос на специалистов этого направления достаточно велик. Это обусловлено тем, что большинство начинающих студентов предпочитают развиваться в популярных направлениях, таких как Java, C#, Python, даже не рассматривая Ruby или попросту не зная о его существовании. Это создает дефицит специалистов в направлении Ruby и, соответственно, повышенные заработные платы в сравнении с распространенными языками, где есть переизбыток специалистов.

Если говорить о цифрах, то Junior Ruby разработчик может рассчитывать на 300-500$, Junior+ – на 500-1400$, Middle – на 1400-2500$, Senior – на 2500$-4000$.

Давайте резюмируем. Стоит ли начинающим программистам изучать Ruby? 

– Изучать Ruby или нет – это ваше дело. В свое время я совершенно случайно познакомился с этим языком и влюбился в него. Я каждое утро просыпаюсь с улыбкой на лице и с радостью приступаю к своей работе.


Полная, частичная перепечатка или любое иное использование материалов с сайта IT-Academy разрешается только с указанием активной гиперссылки, ведущей на первоисточник (точный адрес страницы на www.it-academy.by).