Первое, что я должен сказать, это то, что (imho) ваш подход неверен, потому что вы начали с вывода («Я хочу сделать это в Rails») и теперь вы ищете оправдание.
Хуже того, такое отношение граничит с небрежностью, так как у вас есть этическая, если не юридическая обязанность заботиться о вашем клиенте, и это их потребности, которые вы должны решать в первую очередь, а не свои.
Эта же проблема возникла в Продолжить классический сайт ASP или настаивать на смене языка?
Важно отметить, что в Rails (обычно это Ruby on Rails, хотя это может быть Groovy и т. Д.), Вы сравниваете фреймворк с языком (PHP). Существует множество PHP-фреймворков, поэтому многие проблемы скорости кодирования уменьшаются, если не исчезают совсем, если сравнивать Ruby on Rails с PHP + некоторые фреймворки или фреймворки, с которыми вы одинаково знакомы.
Исходя из опыта, я могу вам сказать, что пользователи, не являющиеся техническими специалистами, будут обеспокоены некоторыми или всеми из следующих действий:
- Стоимость разработки;
- Стоимость хоста;
- Смотри и чувствуй;
- Функциональность сайта;
- Возможность поиска разработчиков;
- Устойчивость;
- Существующий функционал; и
- Риск.
(1) является дискуссионным. Ruby on Rails, вероятно, работает очень быстро, если вы все делаете по-Ruby, но может стать очень сложным, если требования вынудят вас отказаться от брони. Интересно, что стеки Microsoft, как правило, работают одинаково (хотя обычно они имеют больший резерв для дальнейшего расширения этой метафоры).
Это произошло по 7 причинам, по которым я перешел на PHP после 2 лет работы на Rails . Согласитесь или не согласитесь, такого рода сообщения приносят очки, которые вам, по крайней мере, необходимо рассмотреть и / или рассмотреть.
(2) Я думаю, это победа для PHP. Общий хостинг на PHP необычайно дешев, но в нем немногое. Если на сайт будет приходить умеренный объем трафика или возникнут серьезные проблемы с безопасностью, вы в конечном итоге либо разместите его на сайте, либо воспользуетесь какой-либо формой VPS или выделенным хостингом, после чего проблема станет промывкой.
(3) на самом деле не так уж отличается. Ruby - это двухсторонний Prototype (будучи интегрированным) и тому подобное, в то время как PHP более открыт для любой среды Javascript (которая имеет свои преимущества и недостатки), и оба могут делать что угодно в HTML и CSS.
То же относится и к (4). Вы ничего не можете сделать в одном, чего не можете сделать в другом.
(5) - явный выигрыш для PHP. Возможно, вы не нанимаете сотни разработчиков, но тот факт, что если вы переходите или меняете работу, легко найти других людей с соответствующим опытом важен для нетехнических людей (и должен быть важен для технических специалистов тоже).
(6) - это воспринимаемая или реальная победа для PHP. Под этим я подразумеваю, что Ruby on Rails - по крайней мере, по моему опыту - имеет репутацию нестабильной и / или растраты ресурсов. Это подтверждается такими сообщениями, как пресловутая Rails Is A Ghetto rant Zed Shaw. Ясно, что это напыщенная речь, но и здесь есть несколько важных моментов.
(7) интересный. Rails обязывает (или, скорее, «является») каркас ORM, и, как и многие каркасы ORM, они могут иметь реальные проблемы при работе с «унаследованными» данными. Я поставил это в кавычки, потому что у ORM есть неприятная привычка объявлять что-либо, что не сделано как «наследие» (например, составные ключи).
Если у вас есть полный контроль над моделью данных на этом сайте, и не существует существующей модели данных для поддержки, то эта проблема, вероятно, выиграет для Rails, но чем больше у вас ограничений, тем больше будет выигрыш для облегченного PHP (обычно необработанный SQL).
Возможно, вы захотите взглянуть на Использование ORM или простого SQL?
(8) действительно суммирует все вышеперечисленное. Компания будет очень обеспокоена тем, насколько предсказуемым будет конечный результат, и более предсказуемый, менее сексуальный конечный результат часто выигрывает.
Последнее, что я скажу, это то, что если у вас есть опыт работы как с Rails, так и с PHP (как вам кажется), и вам нужно спросить, в чем (нетехнические) достоинства Rails, возможно, вам нужно пересмотреть то, что что ты делаешь и почему ты это делаешь.