LINUX.ORG.RU

Rails vs Django (vs *). Факты.


1

6

Господа, что скажете по поводу Rails vs Django?

«vs» в хорошем смысле слова.

В сети куча подобной инфы, но она а) устарела (вопрос можно задавать заново раз в полгода) б) там куча оценочных суждений типа «django плохо потому что плохо». Нафиг, нужна настоящая кухонная аналитика, факты.

Можете рассказать брифинг, как дела на фронте (передние версии, можно даже верхний коммит на мастере гита)? С какими проблемами встречались так, что их лучше было решить параллельным фреймворком, итп. С какими проблемами сталкивались вообще?

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

(Если кто-то здесь пользуется Symfony2/Yii2, можно вкинуть даже их, но есть подозрения что они слегка отстают в этом классе быдлокодирования).

★★★★☆

Чтобы более образно, представьте артель студентов, фигачах аякосовые веб-сайты-одностраничники.

Представил, ужаснулся.

Miguel ★★★★★ ()

артель студентов, фигачах аякосовые веб-сайты-одностраничники

так вот это надо было в загаловок

а по теме meteor

bismi ()

Интро: Делал пару проектов на джанге, на рельсах ничего не делал, но чутка знаю руби.

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

Fuckты:
- рельсы популярнее и работы больше.
- питон лучше документирован.
- питон и джанга не перешли окончательно на python3+ (? тут нужна точная инфа, сейчас не слежу), руби и рельсы легко перешли на 1.9+. Кажется, что питон никогда не перейдет на 3 версию, скорей язык сдохнет уже.
- на рельсах делать быстрее
- на рельсах больше батареек (гемов)
- руби лично мне кажется более красивым и лаконичным чем питон
- питон как язык -> проще изучается, чем руби
- в джанге крутая админка изкаробки, в рельсах похуже вроде, но это не точно
- у рельс есть railcasts, больше практик, книг и информации в сети, с другой стороны стандартная документация джанги лучше рельсовой

быстрое создание сайтов как можно более искаробочным функционалом с минимально подготовленными людьми

изкаробки джанга мне кажется функциональней.

umren ★★★★★ ()

Мой опыт как пользователя и админа, не программиста. Системы на Ruby/RoR страшно капризны. Нередко при обновлениях что-то ломается, отваливается, рушится… Каждое обновление — лотерея и русская рулетка. Поэтому ответственные системы приходится держать в отдельных не обновляемых контейнерах.

Решения на Python и Django в частности в этом плане заметно устойчивее. Ломаются реже, поломки понятнее и чинятся легче.

KRoN73 ★★★★★ ()

в джанге много полудопиленых/брошенных батареек, которые приходится допиливать/допиливать до совместимости c 1.5 самому (что не особо сложно,но раздражает). Шаблонизатор в джанге с особым, своим синтаксисом (что не особо страшно, но раздражает), ORM в джанге местами ведет себя не очень логично, к примеру разработчики выбросили полиморфизм при наследовании моделей (что вполне объяснимо, но раздражает).

В общем как-то так.

RedPossum ★★★★★ ()
Ответ на: комментарий от umren

питон и джанга не перешли окончательно на python3+

Джанга перешла, но сторонние модули могут быть не в курсе. Но лично для меня 2to3 решает 90% всех проблем, а элементарное знание питона — все оставшиеся проблемы во всех модулях за ~полчаса (пример — некоторые косяки с байтами/строками в urllib).

Ну и некоторые (сторонние) модули рассчитаны на древнюю версию джанги, но опять же их починка обычно тривиальна до такой степени, что можно пройти автозаменой. Гугль/стэковерфлоу обычно в курсе.

anonymous ()
Ответ на: комментарий от anonymous

тем не менее это все затраты времени, кроме того много модулей которые очень нужны еще не на трешке.

umren ★★★★★ ()
Ответ на: комментарий от KRoN73

ценно. А что отваливается в первую очередь? Сами коды, скомпилированные в натив части, ссылки/целостность пакетов с гемами (если ты ими пользуешься. кстати, что за дистрибутив?), итп?

stevejobs ★★★★☆ ()
Ответ на: комментарий от stevejobs

Не все на свете, а те модуль, на которые забили авторы. Так что

Опенсорц - родина форков

fix

CaveRat ★★ ()
Ответ на: комментарий от stevejobs

А что отваливается в первую очередь?

Совместимость библиотек и кривые миграции.

если ты ими пользуешься. кстати, что за дистрибутив?

Ubuntu и Gentoo. А по Redmine я даже как-то тему заводил:
Подскажите Ubuntu PPA со свежим Redmine.

KRoN73 ★★★★★ ()

веб-сайты-одностраничники
django rails

оба фреймворка из 2005, заточены под достать из RDB, отшаблонить.

Если нужно клиент сайд приложение, то это в первую очередь js фреймворк. На серевере простой REST бекенд. Django не лучший выбор для этого. Про рейлс не знаю.

bismi ()

Если кто-то здесь пользуется Symfony2/Yii2

А Mojolicious (о! я научился писать это название), Catalyst и Dancer?

Перлобояр не жалуют в этом треде?

makyrros ()

представьте артель студентов, фигачах аякосовые веб-сайты-одностраничники

Dancer, Sinatra и прочие micro-.

makyrros ()
Ответ на: комментарий от bismi

оба фреймворка из 2005, заточены под достать из RDB, отшаблонить.

Если нужно клиент сайд приложение, то это в первую очередь js фреймворк. На серевере простой REST бекенд. Django не лучший выбор для этого. Про рейлс не знаю.

+1

vertexua ★★★★☆ ()

представьте артель студентов, фигачах аякосовые веб-сайты-одностраничники

Sinatra хватит за глаза.

fraxinum ()
Ответ на: комментарий от stevejobs

целостность пакетов с гемами (если ты ими пользуешься. кстати, что за дистрибутив?), итп?

гемы не управляются пакетным менеджером дистрибутивa. bundle/rvm - наше все.

kelyar ★★★★★ ()
Ответ на: комментарий от kelyar

гемы не управляются пакетным менеджером дистрибутивa.

расскажи это создателям дистрибутива)

олсо, я чаник, поэтому - как правильно rvm'ом делать глобальные руби и гемы (чтобы лежали в корне и были доступны всяким системным апачам), но при этом не конфликтовали с руби и гемами, идущими из пакетов? Сейчас оно ставится всё в $HOME/.rvm, и это не скормить апачу.

stevejobs ★★★★☆ ()
Ответ на: комментарий от stevejobs

чтобы лежали в корне и были доступны всяким системным апачам

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

kelyar ★★★★★ ()
Ответ на: комментарий от kelyar

рвмный враппер?

апач запускается из-под юзера httpd

рвм - source ~/.rvm/scripts/rvm в bash_profile интерактивного пользователя (у меня olegchir)

каким образом пассенджер, у которого нет прав на мой домашний каталог (в т.ч. на ~/.rvm) подцепит что-то внутри этого каталога? Откуда он запустит rvm, если rvm появляется только при включении из bashrc совсем другого пользователя?

stevejobs ★★★★☆ ()
Последнее исправление: stevejobs (всего исправлений: 1)
Ответ на: комментарий от bismi

Если нужно клиент сайд приложение, то это в первую очередь js фреймворк.

В качестве офтопа, что есть простого из js фреймворков под такие задачи, для домашних нужд «простая морда к рест в браузере». Ну так чтоб склепать по быстрому при этом изучением минимум js и не сильно обременяя себя талмудами.

F457 ★★★★ ()
Ответ на: комментарий от stevejobs

Если надо, рвм можно поставить глобально. Будет что-то типа /usr/local/bin/rubies/2.0.0-p195/bin/ruby

kelyar ★★★★★ ()
Ответ на: комментарий от vertexua

Я хочу при необходимости слабать веб морду обладая минимальными знаниями. Ибо веб морда нужна(без космических технологий пара кнопок и таблица с чекбоксами), а знания хтмл, цсс, жаваскрипт мне нигде больше не нужны. Я не хочу ваять проф веб. Посему хотелось бы обойтись минимальным ущербом для мозга) Но если самый простой способ это учить js, то поучим js.

F457 ★★★★ ()
Последнее исправление: F457 (всего исправлений: 1)
Ответ на: комментарий от F457

Ну просто морда к рест в браузере подразумевает клиентский JS или что-то его прячущее. Я бы рекомендовал лучше Twitter Bootstrap + KnockoutJS

vertexua ★★★★☆ ()
Ответ на: комментарий от ritsufag

нода не запускается на шаред-хостинге (так же как жава/скала), есть подозрения что у ноды не все ОК с производительностью

stevejobs ★★★★☆ ()
Ответ на: комментарий от stevejobs

Я не зря упомянул про ноду т.к подумал что проблем с хостингом нет. А что, для питона и руби куча хостингов?
Для api как раз ok, но статику я бы ей не раздавал.

ritsufag ★★★★★ ()
Ответ на: комментарий от ritsufag

ну, питон и руби щаз есть на всех хостингах - в виде скриптов. А вот уговорить админа по-нормалтному настроить сервак для фреймворков - да, жопа. Особенно рельсы, с этими их нестандартными нативными гемами на каждом шагу.

stevejobs ★★★★☆ ()
Ответ на: комментарий от stevejobs

На кой кому-то сдался шаред-хостинг при всяких бесплатных или пятибаксовых облаках?

vertexua ★★★★☆ ()
Последнее исправление: vertexua (всего исправлений: 1)
Ответ на: комментарий от stevejobs

любой популярный фреймворк пэхапэ работает на быдлохостингах, смотри в его сторону тогда.

umren ★★★★★ ()

быстрое создание сайтов как можно более искаробочным функционалом с минимально подготовленными людьми

Joomla, WP. Фреймворки идут мимо.

alienclaster ★★★ ()
Ответ на: комментарий от bismi

оба фреймворка из 2005, заточены под достать из RDB, отшаблонить

А в вебне с 2005-го появились какие-то принципиально новые задачи? :)

alienclaster ★★★ ()
Ответ на: комментарий от alienclaster

Да, в вебне появились принципиально новые задачи - создание client-based сайтов-одностраничников, и вордпресс для этого вообще никак. Админка у вордпресса вообще блоговая и для любых других сайтов годится слабо.

stevejobs ★★★★☆ ()
Ответ на: комментарий от stevejobs

принципиально новые задачи - создание client-based сайтов-одностраничников

Штоэта?

Админка у вордпресса вообще блоговая и для любых других сайтов годится слабо.

Распространенное заблуждение.

alienclaster ★★★ ()
Ответ на: комментарий от alienclaster

это когда весь сайт состоит из одной страницы, а навигация делается либо с помощью html anchors, либо жаваскриптовыми табами, или еще как

stevejobs ★★★★☆ ()
Ответ на: комментарий от ritsufag

А и правда. Не туда я ткнул. Ты про server-side писал, а я про ненужность "фреймворков".

Anon ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.