Фото Джошуа Фуллер на Unsplash

Прежде чем начать, я учусь на втором курсе и занимаюсь программированием с 14 лет. В любом случае, я не профессионал. Java была включена в мои выпускные экзамены как в средней, так и в старшей школе.

Кроме того, я знаком с C / C ++ и Python. Исходя из Java, C / C ++ казался очень узнаваемым, но Python оказался очень простой альтернативой, предназначенной, чтобы понравиться программистам вместе со мной. Все было построено заранее.

Почему у меня возникла потребность изучать другие языки?

Примерно через год программирования я быстро потерял интерес ко всем этим языкам. C / C ++ оказался избыточным для Java, в то время как Python оказался непригодным для изучения базовых структур данных. Вскоре после этого я стал любопытным человеком, которому легко скучать. Я экспериментировал с несколькими языками, включая Ruby, Lua и Rust.

Rust был, безусловно, самым крутым, но я знал, что на это уйдет немало времени. Я быстро отказался от Rust, так как мне казалось, что я этим займусь, если хорошо разбираюсь в DSA и других методах программирования. Впоследствии я перешел на Lua.

Основная цель Lua - создание сценариев, и он редко используется в качестве автономного языка программирования. Вместо этого он используется как язык сценариев, интегрированный в другие программы на C / C ++. В результате я принял решение прекратить и его выпуск.

Потом была Руби, и я был поражен. Я бы хотел начать с знакомства с Руби. Это динамический, объектно-ориентированный и рефлексивный язык программирования с открытым исходным кодом. Он совместим со всеми операционными системами, включая Windows, macOS и все версии UNIX.

Как я влюбился в Руби?

Расширяя свой опыт работы с Ruby, я часто наблюдал множество подходов к одной и той же проблеме, но с Python, как правило, был только один подход.
Это, тем не менее, концептуальное различие. И Python, и Ruby движимы желанием писать ясный, разборчивый и лаконичный код. Ruby имеет долгую историю включения лучших концепций, шаблонов и методов из других языков программирования в свои собственные.

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

Завершение сейчас…

Означает ли это, что теперь я должен игнорировать другие языки?
Очевидно, нет. Изучение другого языка улучшит ваши способности работать с Ruby или любым другим языком. Наконец, программист пишет код для решения проблем, а любой язык - просто средство для этого.

Процитирую Богдана Череватенко, инженера полного цикла.

«В хорошо написанном коде Ruby, возможно, даже непрограммист сможет понять (в общих чертах), что и где происходит».

Для начала. Посетите Рубин.

Если вы сочтете это полезным или неуместным, дайте мне знать.