What about Ruby in AI field?

Hello Everyone,

As we know, Python is very popular in the AI field. Why not Ruby? Both of them are OOP script languages, have the almost same data structures like Array, Hash Map, and so forth.

I am not a Python user, so I don't know what makes Python so powerful. However, I think the Ruby should has the same power tools for AI.

What's your opinion?

Thanks,
Jeffrey.

···

Sent from Outlook.com.

Hi,

I think I know why?
Python was primarily made for scientific computing.
Ruby was made to be better than Java and also be a pure OOP.

Hence PYTHON for AI.

Regards,
Navin Dhanuka, Mumbai, India.
http://www.navindhanuka.com
email@navindhanuka.com

···

On Fri, Nov 17, 2017 at 9:00 AM, ? ? <yangzhi_java_work@outlook.com> wrote:

Hello Everyone,

As we know, Python is very popular in the AI field. Why not Ruby? Both of
them are OOP script languages, have the almost same data structures like
Array, Hash Map, and so forth.

I am not a Python user, so I don't know what makes Python so powerful.
However, I think the Ruby should has the same power tools for AI.

What's your opinion?

Thanks,
Jeffrey.

Sent from Outlook.com.

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

I think python's community is composed of a lot of academics, they then tend to write cutting-edge research projects. Scientists use python, basically. Why? I think python's syntax is less intimidating for beginners, it resembles a lot of popular/older languages and is less idiomatic than Ruby.

Python is the continuation of C/C++ as a learner while Ruby is more niche and has mainly become more popular through Rails.

That's my 2 cts.

Thomas Charbonnel On Fri, Nov 17, 2017 at 8:04pm, ? ? <

···

yangzhi_java_work@outlook.com [yangzhi_java_work@outlook.com] > wrote:
Hello Everyone,
As we know, Python is very popular in the AI field. Why not Ruby? Both of them are OOP script languages, have the almost same data structures like Array, Hash Map, and so forth.
I am not a Python user, so I don't know what makes Python so powerful. However, I think the Ruby should has the same power tools for AI.
What's your opinion?
Thanks, Jeffrey.

Sent from Outlook.com.

Hi Thomas,

Yes!!! you are right.
Rails acted as a catalyst for Ruby's popularity.

Regards,
Navin Dhanuka

···

On Fri, Nov 17, 2017 at 5:43 PM, Thomas Charbonnel <thomas@charbonnel.eu> wrote:

I think python's community is composed of a lot of academics, they then
tend to write cutting-edge research projects. Scientists use python,
basically. Why? I think python's syntax is less intimidating for beginners,
it resembles a lot of popular/older languages and is less idiomatic than
Ruby.

Python is the continuation of C/C++ as a learner while Ruby is more niche
and has mainly become more popular through Rails.

That's my 2 cts.

Thomas Charbonnel
On Fri, Nov 17, 2017 at 8:04pm, ? ? <yangzhi_java_work@outlook.com> wrote:

Hello Everyone,

As we know, Python is very popular in the AI field. Why not Ruby? Both of
them are OOP script languages, have the almost same data structures like
Array, Hash Map, and so forth.

I am not a Python user, so I don't know what makes Python so powerful.
However, I think the Ruby should has the same power tools for AI.

What's your opinion?

Thanks,
Jeffrey.

Sent from Outlook.com.

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

Quoting ? ? (yangzhi_java_work@outlook.com):

   As we know, Python is very popular in the AI field. Why not Ruby? Both of
   them are OOP script languages, have the almost same data structures like
   Array, Hash Map, and so forth.
   I am not a Python user, so I don't know what makes Python so powerful.
   However, I think the Ruby should has the same power tools for AI.
   What's your opinion?

WARNING!! Biased opinion follows...

Python is not so powerful. Python's creator worked for a long time at
Google. And Google has the leverage to push tools and other stuff in
various contexts, especially in Academia.

Then, of course, if important libraries (I think especially about
pynum) are written in python and ready out of the box, this helps.

When you think about academia, imagine researchers who mostly aren't
IT people, and when they have learned more or less how to use a tool,
will never wish to retrain to another tool - especially a scripting
tool that they have developed their idiosyncratic tools with. This is
also true for those who leave Academia and transit to commercial
concerns.

Python is not better. It is only more popular. Two very different
concepts.

Carlo

···

Subject: What about Ruby in AI field?
  Date: ven 17 nov 17 03:30:30 +0000

--
  * Se la Strada e la sua Virtu' non fossero state messe da parte,
* K * Carlo E. Prelz - fluido@fluido.as che bisogno ci sarebbe
  * di parlare tanto di amore e di rettitudine? (Chuang-Tzu)

It may be none of these reasons, or any combination of them.

Or it could simply be: a couple of people who were in a position to write powerful AI libraries happened to choose Python, and those libraries got popular. (Never fail to consider Survivor Bias...)

After all it's not as if Ruby _doesn't have_ AI tools. Have a look at https://github.com/arbox/machine-learning-with-ruby, which is a curated index of resources. (I can't judge the quality of these links; it's not my field.)

···

From: ruby-talk [mailto:ruby-talk-bounces@ruby-lang.org] On Behalf Of ? ?
Sent: 17 November 2017 03:31
To: ruby-talk@ruby-lang.org
Subject: What about Ruby in AI field?

Hello Everyone,

As we know, Python is very popular in the AI field. Why not Ruby? Both of them are OOP script languages, have the almost same data structures like Array, Hash Map, and so forth.

I am not a Python user, so I don't know what makes Python so powerful. However, I think the Ruby should has the same power tools for AI.

What's your opinion?

Thanks,
Jeffrey.

Sent from Outlook.com.

Click here to view Company Information and Confidentiality Notice.<http://www.jameshall.co.uk/index.php/small-print/email-disclaimer>

(If you are not sure what Survivor Bias is, here's the XKCD explanation: https://xkcd.com/1827/ )

···

From: ruby-talk [mailto:ruby-talk-bounces@ruby-lang.org] On Behalf Of Andy Jones
Sent: 17 November 2017 14:10
To: 'Ruby users'
Subject: RE: What about Ruby in AI field?

It may be none of these reasons, or any combination of them.

Or it could simply be: a couple of people who were in a position to write powerful AI libraries happened to choose Python, and those libraries got popular. (Never fail to consider Survivor Bias...)

After all it's not as if Ruby _doesn't have_ AI tools. Have a look at https://github.com/arbox/machine-learning-with-ruby, which is a curated index of resources. (I can't judge the quality of these links; it's not my field.)

From: ruby-talk [mailto:ruby-talk-bounces@ruby-lang.org] On Behalf Of ? ?
Sent: 17 November 2017 03:31
To: ruby-talk@ruby-lang.org<mailto:ruby-talk@ruby-lang.org>
Subject: What about Ruby in AI field?

Hello Everyone,

As we know, Python is very popular in the AI field. Why not Ruby? Both of them are OOP script languages, have the almost same data structures like Array, Hash Map, and so forth.

I am not a Python user, so I don't know what makes Python so powerful. However, I think the Ruby should has the same power tools for AI.

What's your opinion?

Thanks,
Jeffrey.

Sent from Outlook.com.

Click here to view Company Information and Confidentiality Notice.<http://www.jameshall.co.uk/index.php/small-print/email-disclaimer>

Click here to view Company Information and Confidentiality Notice.<http://www.jameshall.co.uk/index.php/small-print/email-disclaimer>

Python has some heavy duty maths and scientific libraries and a community
that has more of an 'engineering' bent. Getting it right tops taking the
easy way out

These math and scientific libraries made developing ML tools much easier.
Under the circumstances it would be odd for Python not to become the tools
of choice for ML

Python was popular before Google employed Guido and would be popular even
if they hadn't. Because it was popular lots of people at Google used it,
because Google made extensive use of Python it made sense for them to
support the language by giving Guido a job. NOT THE OTHER WAY ROUND!!!

In my experience applications written in Python perform better than
applications written in Ruby (resource consumption etc) but being a Ruby
programmer I find it easier to hack something up in Ruby and my Python gets
rusty fast. I have replaced parts of systems written in Ruby with
counterparts written in Python (or Lua - another good language) for
improved performance (mostly) and reduced memory consumption (a bit better)

I find Ruby easier to write but there is a tradeoff in performance which I
can accept. For ML/AI where processing massive datasets is the norm
performance trumps ease of development

Quoting Peter Hickman (peterhickman386@googlemail.com):

   Python was popular before Google employed Guido and would be popular even
   if they hadn't. Because it was popular lots of people at Google used it,
   because Google made extensive use of Python it made sense for them to
   support the language by giving Guido a job. NOT THE OTHER WAY
   ROUND!!!

Mah.

As an external observer (very far from google and from the US in
general, where these political dabblings take place), I can reaffirm
my personal, subjective, but nevertheless very concrete, very precise
impression: python was of course popular before google meddled in
things, but the sharp rise in the rate of adoption of python happened
after the intervention of the friendly giant from Mountain View.

I may be wrong.

My two pet peeves with python:

1) the indentation as syntax. When I first tried python more than 20
years ago I knew immediately that I would never be able to accept
that.

2) the fact that the standard way of extending python is with c++. Not
only is c++ the uselessly complex mess that it is, but mixing the OO
between the two languages hinders any effort at clarity.

For these two reasons, my very very subjective, but very very
motivated opinion is that ruby is better than python. Then, in both
cases, if in need of performance, I'd craft the bottleneck-dealing
parts in C, and with much care.

As a conclusion, it may be that, If google had selected ruby instead,
we would now be in a better world. But they may as well have
hopelessly tainted ruby. In some way, the fact that the spotlight on
ruby is not overly strong could be an important factor why ruby as a
project is still so wisely managed, and the language remains such a
fine one...

Carlo

···

Subject: Re: What about Ruby in AI field?
  Date: ven 17 nov 17 02:46:22 +0000

--
  * Se la Strada e la sua Virtu' non fossero state messe da parte,
* K * Carlo E. Prelz - fluido@fluido.as che bisogno ci sarebbe
  * di parlare tanto di amore e di rettitudine? (Chuang-Tzu)

I think python's community is composed of a lot of academics, they then tend to write cutting-edge research projects. Scientists use python, basically. Why? I think python's syntax is less intimidating for beginners, it resembles a lot of popular/older languages and is less idiomatic than Ruby.

What other popular languages does it resemble, e.g. which uses
indentation to structure code?

Python is the continuation of C/C++ as a learner

I am not sure what that means. Can you please explain?

while Ruby is more niche and has mainly become more popular through Rails.

Ruby used to be more popular though. You can look at the archives of
this list to see that there were times where the volume was much
higher - and that even without Rails. Nowadays it seems to be the case
that Ruby is niche, yes. One reason might be that Python apparently
made it easier to write UI applications. Quite a few Linux
applications are written in Python.

Cheers

robert

···

On Fri, Nov 17, 2017 at 1:13 PM, Thomas Charbonnel <thomas@charbonnel.eu> wrote:

--
[guy, jim, charlie].each {|him| remember.him do |as, often| as.you_can
- without end}
http://blog.rubybestpractices.com/

To be honest, I don't think you can find a reasonable answer to that
question other than "it just happened"...
For a time, Latin used to be the language books were written in. Why? Well,
because! Everyone did it! Monks were trained it writing it in Latin and
monks were the only ones who were allowed to copy the bible (or they might
have been the only ones who could write at all other than nobles who
thought it was beneath them to write)

I think Python became the go to language in AI learning, because there were
some good people explaining it very well in Python and some of those very
good tutorials spread very well. Chance + capable People + Demand usually
means success!
So Python became the language of choice for AI stuff, although Ruby (--or
insert pretty much every other programming language in here--) would have
been just as good.

If one or two of the ruby community greats would unite with one or two of
the greats of the AI field, they might come up with some amazing ruby
core/library extensions that could make ruby the go to language in AI
learning. Or not. It is more about chance than actual reason.

TLDR; Ruby is not as popular in AI, but there is no real reason to it other
than "I thought Python was the AI learning language"

···

On Sat, Nov 18, 2017 at 1:18 AM, Robert Klemme <shortcutter@googlemail.com> wrote:

On Fri, Nov 17, 2017 at 1:13 PM, Thomas Charbonnel <thomas@charbonnel.eu> > wrote:

> I think python's community is composed of a lot of academics, they then
tend to write cutting-edge research projects. Scientists use python,
basically. Why? I think python's syntax is less intimidating for beginners,
it resembles a lot of popular/older languages and is less idiomatic than
Ruby.

What other popular languages does it resemble, e.g. which uses
indentation to structure code?

> Python is the continuation of C/C++ as a learner

I am not sure what that means. Can you please explain?

> while Ruby is more niche and has mainly become more popular through
Rails.

Ruby used to be more popular though. You can look at the archives of
this list to see that there were times where the volume was much
higher - and that even without Rails. Nowadays it seems to be the case
that Ruby is niche, yes. One reason might be that Python apparently
made it easier to write UI applications. Quite a few Linux
applications are written in Python.

Cheers

robert

--
[guy, jim, charlie].each {|him| remember.him do |as, often| as.you_can
- without end}
http://blog.rubybestpractices.com/

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt;

I am a great Ruby fan and everyday I am learning Ruby either through book or online source. At the same time, I use predominantly Python for my analytics and am about to get into learning Machine Learning. Good that someone posted this for the discussions, which has been lingering in my mind for long time. The very reasons which I find why Ruby has not been chosen in AI or analytics industry are the following.
1. At the time when AI and scientific modules were being developed, the speed of Ruby (1.8) wasn't that good compared to then Python 2. (Note: Now, Ruby has adopted better compiler after 1.9).2. Whoever used Ruby to develop any tool were exploiting only DSL features which resulted in becoming complicated for the users to learn that as a new language even after they (users) know to write codes in Ruby, whereas in Python everything was written in Python itself which helped the new entry Python users or any newbies to start using the tools just with the basic Python knowledge instead of being forced to learn other Language in form of DSL. Though, DSL in Ruby earned a good name in certain areas like Rails, Rake. However, for testing, the community instead of promoting unittest or developing super set of unittest, has been promoting DSLs like RSpec, Cucumber, Aruba etc. These kinds of DSLs good but they force the users to distract from elegance of core Ruby. Thereas in Python, they don't create tools by overusing meta programming.
Nevertheless, there is a project "Sciruby" initiated by Sameer Deshmukh out there which has NMatrix, Daru, Nyaplot etc which are faster than Python and are not DSL and in elegant Ruby.
Atleast now, people should start making tools in direct Ruby itself. Then, you can see the growth. Now, I am slowly migrating from Python to Ruby using Sciruby project. I am currently developing two command line data manager tool parallely in Python (Click) and Ruby (GLI)
Rgds/Jeyaraj

I think python's community is composed of a lot of academics, they then tend to write cutting-edge research projects. Scientists use python, basically. Why? I think python's syntax is less intimidating for beginners, it resembles a lot of popular/older languages and is less idiomatic than Ruby.

What other popular languages does it resemble, e.g. which uses
indentation to structure code?

Python is the continuation of C/C++ as a learner

I am not sure what that means. Can you please explain?

while Ruby is more niche and has mainly become more popular through Rails.

Ruby used to be more popular though. You can look at the archives of
this list to see that there were times where the volume was much
higher - and that even without Rails. Nowadays it seems to be the case
that Ruby is niche, yes. One reason might be that Python apparently
made it easier to write UI applications. Quite a few Linux
applications are written in Python.

Cheers

robert

···

Sent from my Samsung Galaxy smartphone.
-------- Original message --------From: Robert Klemme <shortcutter@googlemail.com> Date: 17/11/2017 21:48 (GMT+05:30) To: Ruby users <ruby-talk@ruby-lang.org> Subject: Re: What about Ruby in AI field?
On Fri, Nov 17, 2017 at 1:13 PM, Thomas Charbonnel <thomas@charbonnel.eu> wrote:

--
[guy, jim, charlie].each {|him| remember.him do |as, often| as.you_can
- without end}
http://blog.rubybestpractices.com/