Pull to refresh

Comments 82

Есть рынок вакансий и есть опен-сорс проекты — реальная статистика. По обоим Ruby уступает Python, PHP и JavaScript, не говоря уже о Java/C#/C++. Все остальные показатели от лукавого.
о_О да, вы правы, это две абсолютно разные статистики, только статистика применения языка — не лучше и не хуже статистики покупки разработчиков ;)
Кстати, я еще понимаю, почему вы C++ сравнили с Ruby в контексте рынка труда. А Javascript тут причем?
Быть может, в том контексте, что оба этих языка — скриптовые?
> о_О да, вы правы, это две абсолютно разные статистики, только статистика применения языка — не лучше и не хуже статистики покупки разработчиков ;)

Статистика Koders — это не статистика применения языка. Мне это напоминает O'Reily, которые кричали, что их книги по Ruby покупают чаще, чем по Java. Что впрочем нисколько не удивительно в свете того, что в TOP10 Java Books на JavaOne была лишь одна книга этого издательства.

Статистика применения языка это корпоративный мир(indeed.com) & open-source(ohloh.net), и как я уже сказал в обоих Ruby находится на последних местах среди мейнстримовых языков.

> Кстати, я еще понимаю, почему вы C++ сравнили с Ruby в контексте рынка труда. А Javascript тут причем?

JavaScript — новый язык Web'a. С ростом возможностей браузеров и появлением мощных клиентских приложений(GMail) он начинает становится всё более востребованным, т.к. всё больше логики приложения переносится на клиент. Требования по JavaScript уже переросли эффекты JQuery и он становится полноценным языком для серьёзных задач.
JavaScript используется не только в Web, но и, так сказать, в прикладных приложениях. Возьмите тот же XUL, где этот язык применяется для управления интерфейсом расширений (да и всего интерфейса в целом). Firefox, Songbird и другие приложения утилизируют XUL, а значит и JavaScript.

И по поводу статистики koders.com: данная статистика, всё таки, может быть показательной хотя бы в силу того, что они отражают не количество человек, востребованных на конкретную вакансию конкретного языка, а именно количество знаний и умений, востребованных среди специалистов. Разные вещи, как мне кажется.
Применений много, все не перечислить.

Я лично до этого момента не слышал о koders.com. К сожалению у google code search, которым я пользуюсь, трендов нет, так что и сравнить не с чем.
Сперва показалось, что они в исходный код поисковика добавили 200 млн строк :)
фон только нужен полностью белый
А лучше прозрачный
«Ruby довольно часто сравнивается с PHP, JavaScript, Perl и Python» Кто его с яваскриптом сравнивает? покажите его, думаю не одному мне будет интересно :)
Вероятно имеется ввиду JavaScript 2.0 (или в целом ECMA 4)
Возможно и о нем, но ведь называется это jaxer или ssjs (server side java script), и врядли про него достаточно кто слышал чтобы попасть в на уровень по количеству упоминаний с php, perl, python
Сдается мне что статистика в стиле «Опрос в интернете показал, что 100% россиян пользуются интернетом».
UFO just landed and posted this here
Так JavaScript тоже бывает серверным, нет? Помимо этого, я описал ещё как минимум одно его не client-side применение в одном из своих комментариев.
UFO just landed and posted this here
вроде это называеться Java server Pages (jps) используется часто с Apache Tomcat
поправочка jsp :)
Не надо путать Java и JavaScript
Совершенно разные вещи.
хм, а я бы интерпретировал это так:
под ruby «практически нет» готовых прикладных библиотек, поэтому часто ищут код.
а я бы это интерпретировал так:
под ruby есть такое кол-во готовых прикладных библиотек, что пользователи уверены в том, что найдут то, что им нужно и часто ищут код
хм… так это ж известный факт, что на руби мало хороших либ(особенно по сравненю с java), разве не так?
Солить на зиму не получается но для работы вполне хватает. К тому же если так уж нужно использовать «Java-наследие» то есть jRuby.
насколько я понимаю, у jruby слегка другая цель всё-таки — решение проблем с хостингом, хотя java-либы — это тоже хорошо.
не верное понимание.
цели разные: использование JIT, использование java-lib, портируемость и тд. хостинг стоит на последних местах.
с точки зрения _пользователя_ — да, но с точки зрения _сана_ — это именно glassfish(+opensolaris)
ну а как вы ещё можете объяснить то, то сами сановцы работают над jruby, а не groovy?
или вы хотите сказать, что у ruby нет и не было проблем с «хостингом»(аппсерверами)?
ни я не вы (я в этом уверен) не работаем в сане. и не могу судить с точки зрения сана. или у вас есть тайные знания?
а я и не претендую на абсолютную правоту.
более того, мысль про glassfish даже не в моей голове родилась
> или вы хотите сказать, что у ruby нет и не было проблем с «хостингом»(аппсерверами)?
быть может когда то и были (как у явы)
сейчас проблем нет. никаких. тем более с mod_rails.
mod_rails — ещё бета, и этим всё сказано
у java проблем с апсерверами уже даже не знаю сколько лет как нету
mod_rails вполне работоспособно. gmail тоже бета.

У Ruby целый ряд преимуществ перед Groovy:
1) LAMP (mod_rails)
2) .NET (IronRuby)
3) Cocoa (MacRuby)
4) Scripting (куча биндингов)
1) И чем это преимущество?
2) Под него кто-то что-то пишет? А рельсы под IronRuby работают?
3) Java-cocoa кто-то отменил?
4) Вообще не понял аргумента… Биндинги к чему?
1) Куча shared-хостингов, что может быть одним из требований к приложению. С появлением mod_rails, это ничуть не сложнее mod_python & mod_php и начинает набирать популярность у ведущих хостеров.
2) Silverlight & десктопные приложения. Rails — не знаю насчёт полной совместимости, но частично работает + будет возможность запустить приложение на Azure в будущем.
3) Apple сделали их Deprecated пару лет назад.
4) Ruby есть из коробки в Linux & Mac OS X, в отличие от Groovy. Мелкий рантайм, жрущий памяти меньше чем JVM и стартующий быстрее — идеально для простых скриптов. Биндинги — сходите на RubyForge — узнаете к чему.

Groovy язык конечно хороший, но уж очень ограничен Java-платформой. Как DSL для Java-разработчиков он может и пойдёт, но уж проще подучить Ruby и масштаб применения вырастет в несколько раз.
1) а, про дешёвый хостинг я забыл… ну я даже не знаю что на это возразить
2) ну у groovy есть java-апплеты
3) а RubyCocoa уже официально поддерживается Apple'ом?
4) в линуксе ruby искапорпки нету, в macos x — только с 10.5. Скорость старта groovy — одна секунда, ну от силы две. Биндинги — а у java их, хотите сказать, меньше?

зы и всё-таки я не понимаю, почему у java-платформы возможностей меньше, чем у ruby.
2) Согласитесь, что апплеты не идут в сравнение с Silverlight, ну а так же с Flex, компилятор для которого Adobe обещала и для Ruby.
3) MacRuby is a free software project by Apple Inc.
4) Сходите на debian shootout и сравните startup у ruby & groovy. ruby = java + rubyforge.

Возможностей больше у Ruby, чем у Groovy. Про Java(the platform) я ничего не говорил — мы сравниваем языки ведь, я имел ввиду ограниченность языка Groovy по сравнению с Ruby, который присутствует на гораздо большем количестве платформ.
2) обещать — не значит жениться, как известно ;)
3) вот, это другое дело. однако пока что still a work in progress
4) был я там. shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=groovy&lang2=groovy утверждает, что groovy стартует 887.31 secs. Извините, но я не верю в почти 15 минут стартапа, а вы?

>Возможностей больше у Ruby, чем у Groovy.
языковых возможностей? если вас не затруднит, приведите, пожалуйста, примеров парочку

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

>Про Java(the platform) я ничего не говорил — мы сравниваем языки ведь, я имел ввиду ограниченность языка Groovy по сравнению с Ruby

groovy может использовать все возможности java, это один из его плюсов
> только зачем он нужен на этом большем количестве платформ?

предлагаете по второму кругу пойти? я уже выше написал.

> groovy может использовать все возможности java, это один из его плюсов

ruby так же может использовать все возможности java(jruby). лучше скажите то, что есть у groovy, а нет у ruby. потому что обратное я уже расписал выше.
>ruby так же может использовать все возможности java(jruby)

ага, только с медленным стартапом, не меньшем кол-ве платформ итд. «предлагаете по второму кругу пойти?»

>лучше скажите то, что есть у groovy, а нет у ruby.
увы, я в ruby не силён, да и было бы всё-таки странно, если у языка, который появился 10 лет назад было меньше фич, чем у языка, который появился 2 года назад. Сила groovy — в java-либах и бандингах к них (втч Grails/GORM, XML, WS итд)

впрочем, я суть ваших аргументов понял и на этом предлагаю спор прекратить, время покажет, настал ли пик популярности у ruby или ещё нет
А как связанно то что «сановцы работают над jruby, а не groovy» и мифические проблемы ruby c хостингом?(которых нет, но предположим что они есть)
Сан — благотворительная организация, которая помогает решать проблемы с хостингом? :)))
ruby->jruby->glassfish, вот и вся связь

или вы будете отрицать, что в продакшене glassfish куда стабильнее mongrel'а?
То есть «сановцы работают над jruby, а не groovy» — потому что у ruby проблемы с хостингом? )))
И Сан кинулась — по доброте душевной — эту проблему устранять? )))

или вы будете отрицать, что в продакшене glassfish куда стабильнее mongrel'а?


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

А у самого по себе mongrel — как у сервера приложений — проблем со стабильностью нет.
>И Сан кинулась — по доброте душевной — эту проблему устранять? )))

нет, конечно. glasshfish и тем более solaris не ради ruby были сделаны.

насчёт статистики по jruby — и правда хорший вопрос. кстати вот ещё одна ссылка:
blog.headius.com/2007/09/end-is-near-for-mongrel.html
нет, конечно. glasshfish и тем более solaris не ради ruby были сделаны.


Естественно — так почему же «сановцы работают над jruby, а не groovy»? Вы же сами этот вопрос задали — и зачем то ушли в обсуждения проблем хостинга.

кстати вот ещё одна ссылка:

Господину Наттеру — как одному из разработчиков jruby и работнику компании SUN можно простить излишний оптимизм. Но статистики его оптимизм не добавляет.

Я знаю всего около 5 проектов (а с ходу назову конкретно всего один ) проект на jruby+glasshfish и находящихся в публичном доступе. Этого очень мало для выводов — в сравнении в тысячами на mongrel+ruby.
>и зачем то ушли в обсуждения проблем хостинга.
ок, по пунктам:
1) у rails есть (ну или если вы совсем уж не согласны были) серьёзные проблемы с хостингом, я имею в виду тот же mongrel
2) у java-вебприложений проблем с хостингом нету — например, glassfish
3) rails приложения достаточно просто деплоить на glassfish с помощью jruby
4) glassfish можно продать как support или вообще как часть solaris'а

теперь, надеюсь, ход мыслей понятен?

с другой стороны, это лишь предположение, причём даже не моё
теперь, надеюсь, ход мыслей понятен?


То есть — почему же «сановцы работают над jruby, а не groovy»?
Потому что у rails были/есть проблемы с хостингом?

Ага — допустим, SUN это бюро добрых программистских услуг, ок )))
А почему ruby — у Erlang и Haskell проблемы с хостингом намного страшнее, а у — допустим — Prolog-a вообще хостинга/сервера приложений нет как понятия — почему же им добрая SUN не помогла?
>То есть — почему же «сановцы работают над jruby, а не groovy»?
когда Headius перешёл в Sun grails ещё не достиг версии 1.0-beta

>А почему ruby — у Erlang и Haskell проблемы с хостингом намного страшнее
а кому нужен, этот хостинг для хаскела?
когда Headius перешёл в Sun grails ещё не достиг версии 1.0-beta


Когда он пришел в Sun и jruby еще не достиг версии «1.0-beta». И?
grails достиг версии 1.0 18 февраля 2008 года почему же «сановцы работают над jruby, а не groovy»?
Вы специально уходите от ответа?

а кому нужен, этот хостинг для хаскела?


Ну так по вашей же версии — у SUN одна из основных целей — помочь всем с хостингом.
Эти данные говорят лишь о том, что koders.com на данный момент берет исходники из источников, где много Ruby проектов. Не более и не менее.

Вот более адекватный рейтинг, хотя тоже, конечно, вещь в себе, и ни о чем особо не говорит: www.tiobe.com/index.php/content/paperinfo/tpci/index.html
Ruby отличный язык, кода меньше, а пользы больше.
Он полностью удовлетворяет и заполняет нишу с фанатами ООП, да и в отличие от PHP здесь есть стандарт функций, фреймворка, кодирования и т.п. Подсознательное желание дисциплины никто не отменял :)
одного языка (в случае ruby) недостаточно.
а популярность он вообще начал набирать только после выхда rails, но ему до сих пор не достаёт многих вещей до продакшена, имхо у groovy/grails с этим всё сильно лучше.
Ну конечно недостаточно :)
Выход rails — это был чистой воды пиар, никогда никто до этого не создавал блог за 15 минут :)
Теперь на всех, даже php фреймворках, есть демонстрация такой фигни.
На самом деле реклама нужна, ведь на python тоже мало кто обращал внимания, пока не узнали, что им пользуется google, к тому моменту в python'е было написано столько либ, что до сих пор не могут разобраться с поведением этих самых либ :)
реклама — это хорошо, да, но имхо через полгодика у rails уже совсем не останется преимуществ перед grails…
grails быстрее/лучше jruby on rails?

местами хуже(например, dynamic js), но нельзя забывать о том, что grails'у всего 9 месяцев и версия у него всего 1.0.3, в то время как rails'ы уже достигли версии 2.x за 3 года. Про jruby я почти ничего не знаю, увы
т.е. если у groovy нет врожденных достоинств (например скорость) перед jruby (разработка ruby под jvm), то не вижу причин для java сообщества развивать grails. Разве что опять же для пиара :)

Хотя надо сказать много положительного слышал о grails и groovy, но синтаксис и отсуствие времени не дали углубиться.
по порядку:
имхо главное достоинство groovy перед jruby — это то, что groovy принципиально ближе к java. И по скорости-совсместимости-итд — тоже. Собственно, валидный java-код — это валидный groovy-код.
И потому смысл развития jruby я вижу только один — glassfish.

c grails ситуация ещё интереснее — он базируется на spring-hibernate-итд, т.е. он не reinvent the wheel
а популярность он вообще начал набирать только после выхда rails, но ему до сих пор не достаёт многих вещей до продакшена, имхо у groovy/grails с этим всё сильно лучше.


Что же это за «многие вещи» — которых не достает ruby до «продакшена» — и с которыми у groovy/grails «всё сильно лучше»? Можно конкретные примеры?
MySQL-драйвер, например. Mongrel. Вебсервисы.
да что там вспоминать, есть же хорошая статья:

www.zedshaw.com/rants/rails_is_a_ghetto.html

например:
I believe, if I could point at one thing it’s the following statement on 2007-01-20 to me by David H. creator of Rails:
(15:11:12) DHH: before fastthread we had _400 restarts/day
(15:11:22) DHH: now we have perhaps 10
(15:11:29) Zed S.: oh nice
(15:11:33) Zed S.: and that's still fastcgi right?
Ай ай ай — а Вы ruby (язык) от Ruby on Rails (фреимворка) — не отличаете?
Мы вообще то о языке говорим.

А статья хорошая, даже в чем очень правильная — только на вопрос

Что же это за «многие вещи» — которых не достает ruby до «продакшена» — и с которыми у groovy/grails «всё сильно лучше»? Можно конкретные примеры?


она не отвечает. Так можно конкретные примеры?

Ну а по приведённому диалогу — как дальше написано:

Also, the 400 restarts/day were across probably 60 processes.

А теперь 10 рестартов/день на 60 процессов — и это на убогом fastcgi (который вообще для ruby противопоказан) — и это совсем не много, и да, раньше у были такие проблемы — теперь нет. И?

>Мы вообще то о языке говорим.
ну вообще-то я прозрачно намммекал именно на rails, а не язык. Вы можете назвать применение ruby, кроме как rails?

>и это совсем не много, и да, раньше у были такие проблемы — теперь нет.
я о том и говорю — что проблемы-то или только-только решены, или ещё только решаются… тот же mod_rails ещё бета, например
ну вообще-то я прозрачно намммекал именно на rails, а не язык. Вы можете назвать применение ruby, кроме как rails?


Кроме того, что ruby — это универсальный язык, с помощью которого можно что угодно делать — хоть десктопные приложения писать,
вообще то даже web фреймворков у ruby несколько, кроме rails.

тот же mod_rails ещё бета, например

glassfish еще тоже бета например, и что? А у groovy/grails — что, уже 20 лет применения в производстве?
Так в чем же у groovy/grails «всё сильно лучше»?
>Кроме того, что ruby — это универсальный язык, с помощью которого можно что угодно делать — хоть десктопные приложения писать,

bla-bla-bla, простите… и где вы видели используемые десктопные приложения на весьма небыстром ruby?

>вообще то даже web фреймворков у ruby несколько
и что? кроме рора что-то активно развивается и используется?
bla-bla-bla, простите… и где вы видели используемые десктопные приложения на весьма небыстром ruby?


www.google.com/search?hl=en&q=ruby+GUI&btnG=Google+Search&aq=f&oq=

и что? кроме рора что-то активно развивается и используется?


Допустим Merb www.merbivore.com/
Вы бы, прежде чем спорить, хотя бы что то выяснили о предмете разговора.
>glassfish еще тоже бета
да ну? я что-то тут не вижу слова beta:

https://glassfish.dev.java.net/public/downloadsindex.html

>А у groovy/grails — что, уже 20 лет применения в производстве?
grails всего 9 месяцев как релизут.
да ну? я что-то тут не вижу слова beta:
https://glassfish.dev.java.net/public/downloadsindex.html


Зато я вижу что это Update Release 2 Build 04
Это как то очень далеко от продакшн наименования.

rails всего 9 месяцев как релизут.


Так вы же заявляли — у groovy/grails «всё сильно лучше»?
так что же у них лучше то?
И в чем проблемы с MySQL-драйвером? И с которым из нескольких?
Что «Вебсервисы»?
>И в чем проблемы с MySQL-драйвером? И с которым из нескольких?
их ведь два всего, разве нет? И оба написаны одним японским студентом, да? Тот, что нативный уже давно не развивается, а тот, что бинарный… ну да писать долго.

ну или вот sql-инъекция:
www.rorsecurity.info/journal/2008/9/8/sql-injection-issue-in-limit-and-offset-parameter.html
их ведь два всего, разве нет?

Их более 4, не считая ODBC драйверов.

И оба написаны одним японским студентом, да?

Специально посмотрел — самый распространённый бинарный драйвер написан японским учёным из университета Токио — (и судя по тому, что его первая научная работа была опубликована в 1984 году, ко временам написания драйвера студентом он уже давно не был)
Но ваше замечание интересное — Вы не любите студентов? Особенно японских? )))

тот, что бинарный… ну да писать долго.

да уж будьте добры — напишите что нибудь конкретное наконец )))

ну или вот sql-инъекция:


0_о Вы на полном серьезе считает что возможность sql-инъекции это проблема драйвера базы данных или языка программирования???
>Их более 4, не считая ODBC драйверов.

странно, сайт mysql'я говорит именно о двух. ну, ещё я случайно увидел потом некий mysqlplus. Это, кстати, тоже показатель либ для RoR'а — только там могли появиться штуки типа ActAsTaggable_on_steroids :D

>Но ваше замечание интересное — Вы не любите студентов? Особенно японских? )))
даже если бы и любил, то что с того? Если в продакшене драйвер будет криво работать — за суппортом к японскому учёному пойдёте?

>да уж будьте добры — напишите что нибудь конкретное наконец )))
сборка бинарников из исходников — увлекательнейшй процесс, а если у него ещё и зависимости есть… оо, дальше, пожалуйста, без меня. Ладно под *nix сборка одной командой идёт, а под windows это не так уж и просто.

>0_о Вы на полном серьезе считает что возможность sql-инъекции это проблема драйвера базы данных или языка программирования???

а я ещё раз вам повторю, что ruby без ror'а практически никому не нужно. ror, в свою очередь, до серьёзного продакшена ещё не дорос. Искать аргументы и что-то доказывать человеку, для которого 10 рестартов в день — это нормально не хочется.
странно, сайт mysql'я говорит именно о двух. ну, ещё я случайно увидел потом некий mysqlplus. Это, кстати, тоже показатель либ для RoR'а — только там могли появиться штуки типа ActAsTaggable_on_steroids :D


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

сборка бинарников из исходников — увлекательнейшй процесс, а если у него ещё и зависимости есть… оо, дальше, пожалуйста, без меня. Ладно под *nix сборка одной командой идёт, а под windows это не так уж и просто.


Во первых — под win есть уже скомпилированные версии, ну а во вторых если компиляция С/С++ библиотеки для вас такая нечеловеческая процедура — дальше мы пожалуй, действительно пойдем без вас )))))

Если в продакшене драйвер будет криво работать — за суппортом к японскому учёному пойдёте?


За суппортом пойду к сообществу разработчиков — как и в случае с любым другим open source продуктом. А вы рассчитываете, что если у вас groovy/grails будет криво работать — к вам команда эльфов-программистов прилетит и все вам исправит? )))

а я ещё раз вам повторю, что ruby без ror'а практически никому не нужно. ror, в свою очередь, до серьёзного продакшена ещё не дорос. Искать аргументы и что-то доказывать человеку, для которого 10 рестартов в день — это нормально не хочется.


Опять «bla-bla-bla, простите» вместо фактов?
Вот sql-инъекция в Java/Hibernate
cwe.mitre.org/data/definitions/564.html
Сделаем вывод — «Java до серьёзного продакшена ещё не дорос»?
Единственная проблема с руби на данный момент, это отсутствие хоть сколько-нибудь вменяемых программистов.

Люди как закопались в PHP, так и не вылезают. Это как с Delphi.

Может в Москве дела и получше, но, например, в Иваново, программистов на руби не найти. А надо.
Я, однако, тоже заметил отсутствие программистов. Вокруг меня их, к примеру, почти нет. Я их вижу только в блоге Ruby Хабрахабра, хотя знакомство с некоторыми не помешало бы. ;-)
Программистов нет, потому что реально ruby просто не нужен. У него нет своей ниши. И он совершенно не укладывается в тенденции развития — а именно в перенос приложений с сервера на браузеры. Появился бы ruby на несколько лет раньше — может быть им и заинтересовались бы, сейчас же есть несколько вылизанных языков, полностью покрывающих все потребности.
Java, JavaScript, Perl, PHP, python.
>Появился бы ruby на несколько лет раньше

Он чуть младше питона.

>cейчас же есть несколько вылизанных языков

С этим соглашусь, есть языки на которые в серьёзных проектах можно положиться, а с Руби можно только поиграться just for fun.
Согласен с тем что у руби нету ниши. У его фремйорков и либ замашки интерпрайз уровня. Однако проблема в том что это только замашки. Инструмент разработки в условиях как вы говорите «серьёзного продакшна» должен быть некоей платформой. Вот JVM платформа, .NET платформа, а вот Ruby никак платформой назвать не могу — какая ж это платформа где это куча различный реализаций языка и всевозможных либ, зачастую конфликтующих друг с другом и ломающихся при обновлении или ломающих твое приложение. Вариант использования Ruby в JVM мне кажеться абсурдным, потому как приложение разрабатывается не на языке, а именно на платформе, а тут получаются те же яйца только сбоку — платформа то одна и та же.

Единственный выход из данной ситуациии на мой взгляд- какая-нибудь компания (мож ActiveState?:) )возьмёт руби под свое крыло и будет его саппортить и мейнтенить, иначе из руби получиться Питон под номером 2 — такое же уродливое и не последовательное создание (но у питона есть одно преимущество — он уже хорошо обкатан и отлажен, и его более или менее можно использовать в нешибко больших проектах, но не факт что руби дойдет до того же не загнувшись).

По теме: вывод про популярность руби в статье имхо полный бред.

ЗЫ. мне руби больше всего нравиться как язык для скриптиков а-ля Perl (сбор информации, администрирование, автоматизация всякой мелочевки короче говоря:) ).
Sign up to leave a comment.

Articles