Ruby был первым языком, на котором я почувствовал, что могу стать программистом. Я всегда пытался научиться программированию - в книжном магазине торгового центра я покупал книги «Научитесь C ++ за 24 часа», «Изучите Java за 7 дней» и т. Д. Не думаю, что я чему-то от них научился.

Я узнал о Ruby около 9 лет назад из сообщения в блоге на digg.com. Руби просто щелкнула со мной - теперь я чувствовал себя программистом. Вскоре после знакомства с Ruby я нашел Rails.

RAILS_GEM_VERSION = ‘1.2.3’

Вот как долго я работаю с Rails.

Я не был полностью верен. Я смотрел другие среды Ruby (также Python и Node.js), я даже пробовал несколько. Но, по крайней мере, что касается Ruby, я всегда возвращался к Rails. Но я бы не стал называть себя «фанатом». Есть много всего, что мне не нравится - воронка активов по-прежнему странная, а миграции все еще не совсем правильны. Но когда я пытаюсь двигаться быстрее в чем-то другом, это всегда кажется таким медленным.

# I have a lot of ideas for projects:
dev $ ls rails -l | wc -l
39
dev $ ls rails -l | wc -l
51

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

Состояние строительства

Многие люди отказались от Rails. Это неудивительно, ведь языки и фреймворки приходят и уходят, а в мире разработки все движется очень быстро.

Я занимался разработкой Node.js в течение последних двух лет, а до этого я использовал Node только там, где считал это подходящим. Последние два года были интересными. Появился React и вроде как все перевернул. Coffeescript sorta умер, и появились ES6 и Typescript. В моде функциональное программирование, а объектно-ориентированный код «старый».

Нет. Из. Этот. Имеет значение. К. Я.

Мне нравится строить. Дело в том, что я стал программистом, а не потому, что мне нравится информатика. Программирование дало мне возможность делать что-то на компьютере - то, что я всегда хотел сделать, но не понимал, как это сделать.

Это не значит, что я не считаю, что все идет так круто или захватывающе. React интересен, и мне он кажется более «правильным», чем «неправильным». И после нескольких лет использования ES6 болезненно возвращаться к обычному старому JS. Но когда мне приходится тратить слишком много времени на то, чтобы что-то настроить, чтобы оно работало, и еще больше времени на то, чтобы отладить что-то, когда они, наконец, настроены, это начинает мешать мне создавать вещи - это проблема для меня.

Минимально жизнеспособный продукт

Идея MVP заключается в том, чтобы быстро выпустить что-то с ограниченными функциями и использовать этот продукт, чтобы узнать, что работает, а что нет. Хотя Rails ускоряет разработку, вы, вероятно, можете взять любой ожидаемый «график» запуска продукта и удвоить его. Даже в этом случае ты, скорее всего, все еще уедешь.

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

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

Возможно, Node, Elixir и т. Д. - правильный выбор для вас. Они, безусловно, нравятся инженеру во мне, но когда вы работаете над продуктом и хотите выпустить его на рынок, вы должны отказаться от этого желания использовать новую привлекательность и мыслить прагматично, иначе вы никогда не сможете это сделать. . Для меня ничто не сравнится с Rails.