Как стать автором
Обновить

Комментарии 45

НЛО прилетело и опубликовало эту надпись здесь
Вот это меня и пугает, все так говорят, уже давно везде слышно, что руби = рельсы, а я пытаюсь разобраться, есть ли альтернатива? Или удостовериться, что лучше рельс нет ничего.
Пугает еще и то, что это говорят люди "слабо знакомые с темой Руби" :)
Зря вы так. Не путайте человека..
на сколько я знаю, руби хоть и красив и рельсы хороши, но это связка достаточна медленна в сравнении с другими фреймворками... по крайней мере так говорил Сагалаев и его коллега из Яндекса на РИТ-2007.
ихмо тест практически потерял свою актуальность
правилось 7 ноября 2007, рельс 2.0 тогда еще не было. Хотя сомневаюсь, что они перегнали фреймфорки на питоне.
собственно я за Django
Коллегой был посмотреть профиль bobuk :)
о как =)
(небольшая инфа) Не стоит забывать что сейчас вышел Rails-2, который быстрее первого, и в котором исправлено куча багов. В разнице по скорости убедился я сам.
Про новый релиз рельс я слышал, но вот пока руки не дошли покрутить. Жду еще когда руби 1.9 выйдет в стабильном варианте, чтобы уже кардинально обновиться.
НЛО прилетело и опубликовало эту надпись здесь
Рельсы медленнее других фреймворков, но это не значит, что на них нельзя писать высоконагруженные приложения. Как-то сами разработчики в блоге писали, что у них кластер обеспечивает 4000 запросов в секунду.
Вот этот топик подкосил мое доверие к рельсам.
Ну там много чего в кучу свалено. Но основа схвачена верно. Rails (как и Java/PHP/...) - это кошмар. Но не из-за того, что у них есть проблемы (где их нет?). А из-за того, что VisualBasic "программисты" пришли и сюда (после того как Rails стали мейнстримом). Это беда всех успешных фреймворков и языков :-( Только C++ избежал этой участи потому что с самого начала получил репутацию "крютого языка для крютых парней" и потому люди, которые вообще не умеют программировать (то есть 90% "программистов") туда не лезут.

Основная беда Rails (а также прочих подобных языков и фреймворков) в том, что на них могут написать "нечто почти работающее" люди, которых к программированию, в общем-то, допускать и вообще не стоило. Если такие же кадры попробуют что-то сотврить на C++, то до стадии продукта, который можно запустить они вообще не дойдут и, разумеется, будут прогнаны с позором. Если на Rails (Java, PHP, etc) - то вы получите что-то такое более-менее работающее, но постоянно падующее и глючащее. Причём эта возможность (как и в VisualBasic'е) напрямую связана с жёсткими рамками фреймворка, за которые выйти очень сложно. Зато в этих рамках хороший программист может работать в два раза быстрее, чем без фреймворка. Дальше - выбирайте, это уж ваше дело...
А если взять в пример еще эту строку:
"The creator of Rails in his flagship products could not keep them running for longer than 4 minutes on average.", то она идет немного в разрез с вашим верным(!) комментом. Сомневаюсь, что создатель рельс - человек, которого надо держать от программирования подальше.
А вы читали окончательную версию поста Зеда?.. Прочтите.
А если вы не будете выдирать строку из контеста, то увидите, что речь шла всё-таки о трёх часах, а не о четырёх минутах (или вы дочитав до этой строки дальше уже не читали?), что, конечно, плохо, но отнюдь не смертельно (если такое случается, то это повод объявить "code yellow" и разобраться, но это не "code red" ни разу) ?
НЛО прилетело и опубликовало эту надпись здесь
Чтобы начать - пожалуй даже больше. Речь идёт об усилиях, которые нужно приложить чтобы закончить и получить работающую систему. Всем "хорошо известно" что C++ - это что-то близкое к машине и если у Васи всё работает, а у Пети тормозит и Петя писал на C++, то ясно что дело не в C++. В случае с Java(EE) зачастую виновным назначают кого угодно (OS, JVM, Servlet Engine, etc) - только не программиста.
НЛО прилетело и опубликовало эту надпись здесь
Если у вас время генерации страницы меряется в секундах, а у конкурента - в миллисекундах, то профайлер поздно запускать: профайлер может ускорить вашу программу в 2-3 раза в лучшем случае (обычно же - на проценты, не более того).

На C++ не без библиотек пишут, да, но я видел очень мало программистов на C++, который бы искренне считал, что ему не нужно знать сложность работы сортировки и не мог бы на бумажке прикинуть (с точностью до порядка) сколько времени потребуется на сортировку миллиона телефонных номеров. Среди программистов на Java/.NET/Ruby/Python таких - пруд пруди, а люди программирующие на PHP зачастую даже вопроса понять не могут и какое отношение он имеет к дизайну web-приложений - тоже. Я же сказал - это скорее разница в отношениях к языкам, чем в самих языках: в C++, Java и .Net сложность сортировки входит в описание функции сортировки, а Ruby/Python/PHP - нет, но почему-то только программисты на C++ про этот факт знают (когда многих "крютых" спецов по Java2(EE) тыкаешь носом в строчку из описания они искренне удивляются тому что там это написано во-первых и тому что предполагается что они это знают во-вторых; c программистами на C++ такое случается на порядок реже)...
НЛО прилетело и опубликовало эту надпись здесь
Был у нас смешной случай, когда профилирование выявило главного виновника тормозов в генерации страниц. Им оказался библиотечный метод encodeURL :). Переписывание вручную ускорило всё более чем на порядок. В более поздних JDK это дело поправили, но всё-равно это было и это показывает что вы не совсем правы :).

А сложность сортировки... Да та же самая фигня. Когда (если!) в неё упрётся, значит пора запустить профайлер :). Может ведь и не упереться. Тогда зачем об этом думать? У нас много всякого тяжёлого дерьма было, но кто бы мог подумать на эту енкодеУРЛ.
А задача сортировки миллиона телефонных номеров - это разве часто встречающаяся задача? Если бы у меня такая возникла, я бы удивился и, скорее всего, хорошо бы подумал на тему сортировок и даже, возможно, перечитал бы избраное у Кнута :). Хотя я и не сишник, а, скорее, явщик, из-под-палки-пхп-вщик и начинающий рубист :). В большинстве же прочих случаев чего-то посортировать - думать и прикидывать сложность вообще не имеет смысла. Хотя да, библиотеки и прочий высокоуровневый хлам несколько расслабляют.
Странно, а eBay и Amazon написаны на Jave. Да и Google к ней неравнодушен.
НЛО прилетело и опубликовало эту надпись здесь
4000 - это в пике или в среднем ? Если в среднем, то хорошо бы сайт узнать: это уровень где-то не десятки, но сотни самых популярных сайтов в мире...
НЛО прилетело и опубликовало эту надпись здесь
А давно используешь? Делал что либо крупное? Как у него со стабильностью? Хочется просто как можно больше инфы =) И что такое Markaby?
НЛО прилетело и опубликовало эту надпись здесь
Я знаю два достаточно крупных проекта на рельсах:
ilike.com
scribd.com
Врят ли у них маленькая нагрузка :).
На рельсах можно писать хорошие проекты. И сколько я на них не писал - фреймворка хватало за глаза, и никаких велосипедов я не делал. Так что смело начинайте на них писать. Код получается очень красивым), а потом если начнуться томоза делайте оптимизацию: поиск - сфинкс и феррет, erb - используем erubis, код - включаете профайл и смотрите какой именно участок тормозит, либо его оптмизируете, либо переписываете на си.
Руби 1.9 по тестам впечатляет. В ror2ru группе проскакивала ссылка на тесты. рельсы 2.1 уже будут с поддержкой нового руби, так что ждите прироста производительности.
По поводу этой статьи, посмотрите http://groups.google.com/group/ror2ru/br…
Не так уж все и страшно. Просто надо понимать, что вы хотите и что могут дать вам рельсы. Или что вы можете сделать с их помощью.

Теперь если не о рельсах — да, свет на них клином не сошелся. Еще люди работают с Мербом и хвалят как раз за скорость. Про другие не знаю, честно, не смотрел, но они живут и развиваются, а значит это кому-нибудь нужно. Еще появляются периодически новые вещи. Еще рельсы (и все, что в них входит) становятся лучше, постоянно. Еще.. Да много чего еще. Самое главное, что Руби тоже не стоит на месте и скоро-скоро Рубиниус уж точно сможет запускать Рельсы (и не только Рельсы, кстати) и будет вам ощутимый прирост в скорости..

Просто надо осознавать. А не покупаться на плохие-хорошие статьи. Вот у вас появился интерес — уделите этому время, почитайте архивы групп, посмотрите проблемы-преимущества. В конце концов (а точнее, в первую очередь) — напишите на рельсах что-то. Хоть маленькое, для себя..

А то прочли одну статью, которая, в общем то, и не о рельсах, а о жизни, и крепко ушли в сомнения.

Итог? Если вы хотите получить возможность командой script/generate, неделей «стандартного» кода и деплоем делать высоконагруженные порталы — рельсы тут вам не помогут, они вас справедливо убьют. Если вы решили серьезно заняться Руби, потом Руби и Рельсами и писать осознанный код — милости просим, думаю вас с удовольствием примут в сообществе.
НЛО прилетело и опубликовало эту надпись здесь
Ну, не слишком. Там всегда эмоции были, есть и будут. Главное, что на личности переходят только в случае динозавров и пррчих зверушек. И в итоге они пришли к здравому результату, на мой взгляд;) Да и сам Зед дописав эту штуку расставил точки над «и».
НЛО прилетело и опубликовало эту надпись здесь
А что не так с деревом комментариев?
НЛО прилетело и опубликовало эту надпись здесь
Ничего не понял. Человек там писал про генератор таблиц. я запостил код с деревом. Вы говорите, что дерево - это яркий пример. Вот мне очень интересно узнать, что же в моем дереве такого плохого? Тесты? (оО)
НЛО прилетело и опубликовало эту надпись здесь
Пожалуй, вы правы. Но этого не изменить, с этим надо смириться и готовиться к этому;)

Мне, кстати, интересно, как дела обстоят вокруг Питоне, почему там такого нет? Или есть?..
Огромное спасибо всем отписавшимся. Очень рад, что существует хабр и хабрасообщетсво у которого всегда можно спросить совета!
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории