The real Ruby vs. Python.

  • Thread starter Abe Vionas_MailingList
  • Start date
A

Abe Vionas_MailingList

What it comes down to is what it's coming down to for
me... platform maturity.

Python on windows has a broad range of libraries
available for anything you could ever dream of:
Apache, Java, Email, Protocols, GTK, Qt, Tk, OpenGL,
PostgreSQL, MySQL, etc etc etc. As far as Python
library availability for Linux, I really don't know,
as I was only looking for windows stuff last night. My
feeling is that while not being quite as comprehensive
as it's windows offerings it still offers a good
depth.

Ruby, on the other hand, while it has a comprehensive
offering on the Linux platform, is hamstrung on
windows by it's lack in important areas. If libraries
exist, they more often then not are NOT being actively
maintained (my research last night indicated that by
and large more Python libraries are continually
actively maintained). This last point is important
because at one time or another Ruby has HAD libraries
to cover any need, but without active maintenance they
are nearly worthless. I for one will not even look at
a library that hasn't had a release in 2004.

So, this is what it comes down to for me... Which
language offers what I need in terms of libraries? I
decided to go looking after having an excrutiating
time finding just Ruby FastCGI, mod_ruby, and
PostgreSQL libraries which would actually work on
Windows - forget being maintained at all. No luck
though. Even a post to the Ruby-Talk list asking for
help with an attempt to install FastCGI for Ruby
yielded only one reply.

Finally, while the Ruby Gem system is exceptionally
easy to work with and a real boon to Ruby, it doesn't
quite match the ease of installing ANY given Python
library. Every Python windows library for the most
part comes with a windows installer (exe or msi).

Keep in mind that it may be more doable to run Ruby on
windows given substantial C programming/compiling
experience, I don't know. Obviously, if I had the
experience to satisfy that statement I would be able
to answer my own question. : -)

So, for those of us who aren't C gurus and don't run
Linux, Python seems to win out when compared to Ruby.
Which is unfortunate because I really love Ruby, and
don't like a number of Python elements. However,
having the capabilities I need is much more important
than syntax preferences at the moment.

Sadly, in order for Ruby to really take over the world
it will require a more substantial focus on providing
windows compatible libraries and maintaining those
libraries. If Ruby continues to be a Linux-centric
language... I don't know. It just seems to me fairly
obvious that in order to have true dominance you have
to meet the needs of the major platforms. Python does
this moreso then Ruby. And believe me, I wish it were
the other way around.

I'll keep my eye on Ruby, and return when it offers
the essentials I require. But until then I'll be
laboring under a hot Python sun.

Regards, Abe Vionas




__________________________________
Do you Yahoo!?
Yahoo! Mail Address AutoComplete - You start. We finish.
http://promotions.yahoo.com/new_mail
 
J

James Edward Gray II

I for one will not even look at
a library that hasn't had a release in 2004.

This is a very strange comment, in my opinion. A library may simply
function as intended and thus, not need an update.
So, this is what it comes down to for me... Which
language offers what I need in terms of libraries?

If you're chief interest is an impressive store of modules, I seriously
doubt anything tops the CPAN.

James Edward Gray II
 
D

David Ross

Abe said:
What it comes down to is what it's coming down to for
me... platform maturity.

Python on windows has a broad range of libraries
available for anything you could ever dream of:
Apache, Java, Email, Protocols, GTK, Qt, Tk, OpenGL,
PostgreSQL, MySQL, etc etc etc. As far as Python
library availability for Linux, I really don't know,
as I was only looking for windows stuff last night. My
feeling is that while not being quite as comprehensive
as it's windows offerings it still offers a good
depth.

Ruby, on the other hand, while it has a comprehensive
offering on the Linux platform, is hamstrung on
windows by it's lack in important areas. If libraries
exist, they more often then not are NOT being actively
maintained (my research last night indicated that by
and large more Python libraries are continually
actively maintained). This last point is important
because at one time or another Ruby has HAD libraries
to cover any need, but without active maintenance they
are nearly worthless. I for one will not even look at
a library that hasn't had a release in 2004.
Binary releases are sometimes a problem, most of us are unix users,
there are some windows users. I think a few need to get together and
compile windows binaries. Hopefully, I will be able to continue to have
access to a win2k machine and compile much for the RPA ruby packaging
system. Sorry it didnt work out for you. I will be having a GUI for RPA
soon. I'm the type of person who does think about Windows users and GUIs
for the people who might not know typical compiling routines. Some
linuxes just have a packaging system for them to do it for them, I have
BSD. I know its not easy on windows, I will get some effort into helping
RPA witht he GUI and compiling windows binaries.

What exactly are you needing? What type of developer are you? and What
are the type of modules do you regularly use on Windows?

I'm not a frequent windows developer, but I do know a great deal about
Windows programming. Effort to solve the Windows area is underway.


So, this is what it comes down to for me... Which
language offers what I need in terms of libraries? I
decided to go looking after having an excrutiating
time finding just Ruby FastCGI, mod_ruby, and
PostgreSQL libraries which would actually work on
Windows - forget being maintained at all. No luck
though. Even a post to the Ruby-Talk list asking for
help with an attempt to install FastCGI for Ruby
yielded only one reply.
I seen your question, I didn't know the answer though. Did you try the
maintainer?
Finally, while the Ruby Gem system is exceptionally
easy to work with and a real boon to Ruby, it doesn't
quite match the ease of installing ANY given Python
library. Every Python windows library for the most
part comes with a windows installer (exe or msi).
Would you rather have a GUI, and/or executables which can be installed?
hmm thoughts for RPA
Keep in mind that it may be more doable to run Ruby on
windows given substantial C programming/compiling
experience, I don't know. Obviously, if I had the
experience to satisfy that statement I would be able
to answer my own question. : -)
No problem. What problems were you having, besides fastcgi, and I can
look in to it on my spare time.
So, for those of us who aren't C gurus and don't run
Linux, Python seems to win out when compared to Ruby.
Which is unfortunate because I really love Ruby, and
don't like a number of Python elements. However,
having the capabilities I need is much more important
than syntax preferences at the moment.

Sadly, in order for Ruby to really take over the world
it will require a more substantial focus on providing
windows compatible libraries and maintaining those
libraries. If Ruby continues to be a Linux-centric
language... I don't know. It just seems to me fairly
obvious that in order to have true dominance you have
to meet the needs of the major platforms. Python does
this moreso then Ruby. And believe me, I wish it were
the other way around.

please use the term, unix-centric. I'm a BSDuser :) Thanks.

Also, I agree, Ruby is more towards unix, some of the developers dislike
programming on windows, not mentioning any names but he knows who he is
:). Its not so much that libraries are unix-centric, but someone needs
to compile the libraries on Windows. Most libraries already work well
with windows, but its a compiling issue.
I'll keep my eye on Ruby, and return when it offers
the essentials I require. But until then I'll be
laboring under a hot Python sun.

Regards, Abe Vionas
Maybe sometime in the future it will get better for Windows users, we
can only hope.
If you have any questions, drop me an email.

David Ross
 
A

Alexander Kellett

I'll keep my eye on Ruby, and return when it offers
the essentials I require. But until then I'll be
laboring under a hot Python sun.

you make the point excellently.
noone takes on the job, and therefore..
yeah. noone takes on the job.

:(

Alex
 
H

Howard Lewis Ship

I tried using the basic Ruby for windows package and got a few
mysterious errors ("readline.dll not found" when running irb).

I backed that out and used Cygwin to install ruby. Now it runs perfectly.

I was able to install RubyGems and start exploring that as well. It
didn't work with the "native" Ruby, but is completely seamless (to my
cursory examination) when using Ruby under Cygwin.

Cygwin, by explantion, is a POSIX layer on top of Windows. It adds
aptget/rpm type functionality ... you download a small installer and
it downloads package descriptions for all the (Li|U)nixy stuff. It
handles downloading, installing, versioning, dependencies.

http://www.cygwin.com/


What it comes down to is what it's coming down to for
me... platform maturity.

Python on windows has a broad range of libraries
available for anything you could ever dream of:
Apache, Java, Email, Protocols, GTK, Qt, Tk, OpenGL,
PostgreSQL, MySQL, etc etc etc. As far as Python
library availability for Linux, I really don't know,
as I was only looking for windows stuff last night. My
feeling is that while not being quite as comprehensive
as it's windows offerings it still offers a good
depth.
--
Howard M. Lewis Ship
Independent J2EE / Open-Source Java Consultant
Creator, Jakarta Tapestry
Creator, Jakarta HiveMind
http://howardlewisship.com
 
M

Matt Mower

you make the point excellently.
noone takes on the job, and therefore..
yeah. noone takes on the job.

As a windows user I feel I should chip in here. I don't think I'm
feeling as unloved as the OP and I can live with a little unix
centricity but I wouldn't argue with Ruby becoming more Win-friendly.
I think the one-click installer is a great step in that direction but
I guess there are others.

I have windows programming experience but it's mostly either very old,
rusty, and not terribly relevant (e.g. C/C++ on Windows 3.0) or new
and shallow (VS.NET & C#). Most of my recent programming career has
been Java.

I'd like to help though and, if there is a Ruby on Windows community,
I would get involved.

Regards,

Matt
 
T

trans. (T. Onoma)

On Wednesday 27 October 2004 10:11 am, Abe Vionas_MailingList wrote:
| Ruby, on the other hand, while it has a comprehensive
| offering on the Linux platform, is hamstrung on
| windows by it's lack in important areas. If libraries
| exist, they more often then not are NOT being actively
| maintained (my research last night indicated that by
| and large more Python libraries are continually
| actively maintained). This last point is important
| because at one time or another Ruby has HAD libraries
| to cover any need, but without active maintenance they
| are nearly worthless. I for one will not even look at
| a library that hasn't had a release in 2004.

Ironically that should be a good thing!

It's a poor indicator. A lib may be "relatively perfected" and need not be
changed ever again. People are too caught up on changing things. Get
something to work well, then start a new project.

But I do hear you --since the above is rarely ever done.

2 cents,
T.
 
D

David Ross

Matt said:
As a windows user I feel I should chip in here. I don't think I'm
feeling as unloved as the OP and I can live with a little unix
centricity but I wouldn't argue with Ruby becoming more Win-friendly.
I think the one-click installer is a great step in that direction but
I guess there are others.

I have windows programming experience but it's mostly either very old,
rusty, and not terribly relevant (e.g. C/C++ on Windows 3.0) or new
and shallow (VS.NET & C#). Most of my recent programming career has
been Java.

I'd like to help though and, if there is a Ruby on Windows community,
I would get involved.

Regards,

Matt
Would you be willing to help me package binaries for RPA? :) I can help
you re-learn if needed.

David Ross
 
T

trans. (T. Onoma)

On Wednesday 27 October 2004 10:48 am, Howard Lewis Ship wrote:
| I tried using the basic Ruby for windows package and got a few
| mysterious errors ("readline.dll not found" when running irb).
|
| I backed that out and used Cygwin to install ruby. Now it runs perfectly.
|
| I was able to install RubyGems and start exploring that as well. It
| didn't work with the "native" Ruby, but is completely seamless (to my
| cursory examination) when using Ruby under Cygwin.
|
| Cygwin, by explantion, is a POSIX layer on top of Windows. It adds
| aptget/rpm type functionality ... you download a small installer and
| it downloads package descriptions for all the (Li|U)nixy stuff. It
| handles downloading, installing, versioning, dependencies.
|
| http://www.cygwin.com/


Are there downsides to this approach for Windows users?

T.
 
A

Alexander Kellett

As a windows user I feel I should chip in here. I don't think I'm
feeling as unloved as the OP and I can live with a little unix
centricity but I wouldn't argue with Ruby becoming more Win-friendly.
I think the one-click installer is a great step in that direction but
I guess there are others.

the main problem is that even while i was on
windows i still had no clue how to help out,
build packages etc. i certainly don't have a
spare copy of vs.net or anything lying around
here so i'd be able to do, well, exactly nothing.

Alex
 
A

Alexander Kellett

Are there downsides to this approach for Windows users?

cygwin is huge has an awful interface and
has severe problems with having multiple
cygwin1.dll's on the same system.

native compiles are by far my preference.
windows far from a single platform is *FAR*
more fragmented that linux will ever be.

how many ruby windows sub-platforms exist
now in total? four or is it five now? how
can anyone be expected to help when all of
them suck in there own little way? (e.g,
1-click doesn't have a standard package
thats in base ruby - curses)

Alex (who can't wait any longer to get his ibook and
remove both windows *and* linux at long last)
 
J

Justin Rudd

you make the point excellently.
noone takes on the job, and therefore..
yeah. noone takes on the job.

I've tried a bit. I've got MySQL, PostgreSQL, and SQLite/Ruby
compiled for Windows. The PostgreSQL I haven't released because I
haven't tested it thoroughly. Although I'll probably release the
PostgreSQL one and let the community test it for me :)

My next project is OpenSSL so that I can use the Ruby SSH project.
But that is going to be awhile (I'm in the middle of moving from
Arizona to Washington).

The thing I've noticed is that the extension library code (the C code)
usually has dependencies on things that are not defined in Windows.
That is what takes the most time to get around. But the good news is
that it is a small minority of projects that have this problem.
 
J

Justin Rudd

Are there downsides to this approach for Windows users?

Licensing? If you are interested in just writing programs to use
internally or for personal use, probably no problems. But if you want
to resell your app, I'm not sure how the Cygwin license applies to
your code. Maybe it doesn't affect your code, but the ruby
interpreter that you would have to ship depends on the Cygwin DLL.
And to redistribute that, you have to make your source code available
(the way I read the license). Now is that the source code of the
interpreter or your programs running in the interpreter? It was gray
enough to make me steer clear of it.
 
D

David Ross

Alexander said:
the main problem is that even while i was on
windows i still had no clue how to help out,
build packages etc. i certainly don't have a
spare copy of vs.net or anything lying around
here so i'd be able to do, well, exactly nothing.

Alex
You can use mingw32. Help out you blasted lypanov. :p I told earlier you
its up to us, not end users.

David Ross
 
C

Curt Hibbs

David said:
Binary releases are sometimes a problem, most of us are unix users,
there are some windows users.

I am a big proponent of being cross-platform *and* making things as easy as
possible for end users to install and use. So, this is not intended to start
any kind of competition or flame-war, mostly I'm just curious...

When I see the statement "most of us are unix users, there are some windows
users" it makes me wonder whether or not this is really true. I'm involved
in two major cross-platform Ruby projects: FreeRIDE and wxRuby. In both
cases the windows downloads are higher than all the other platforms
combined.

It would be interesting if there was a more reliable way to gauge Ruby's use
on various platforms, but I don't know how that could be done.

Curt
 
J

Jan Krüger

trans. (T. Onoma) said:
On Wednesday 27 October 2004 10:48 am, Howard Lewis Ship wrote:
| I tried using the basic Ruby for windows package and got a few
| mysterious errors ("readline.dll not found" when running irb).
|
| I backed that out and used Cygwin to install ruby. Now it runs perfectly.
|
| I was able to install RubyGems and start exploring that as well. It
| didn't work with the "native" Ruby, but is completely seamless (to my
| cursory examination) when using Ruby under Cygwin.
|
| Cygwin, by explantion, is a POSIX layer on top of Windows. It adds
| aptget/rpm type functionality ... you download a small installer and
| it downloads package descriptions for all the (Li|U)nixy stuff. It
| handles downloading, installing, versioning, dependencies.
|
| http://www.cygwin.com/


Are there downsides to this approach for Windows users?

Cygwin adds a something like a gnu/linux/posix layer between the
application and Windows, therefore not all "features" of Windows are
easily accessible and sometimes performance suffers. From a
Windows-user point of view sometimes unexpected effects may happen
because of the different semantics of the 2 worlds, eg: file system
permissions (Windows ACL's vs. POSIX bits within cygwin and the
translation between them).

cygwin itself is convinient to install and maintain.

Gruß
Jan
 
H

Howard Lewis Ship

My background is Java, which is typically "build on windows, deploy on
*nix". So, for me, just getting Ruby and RubyGems set up is enough;
I'll worry about deployment and licensing after I've actually written
some code.


trans. (T. Onoma) wrote:



Cygwin adds a something like a gnu/linux/posix layer between the
application and Windows, therefore not all "features" of Windows are
easily accessible and sometimes performance suffers. From a
Windows-user point of view sometimes unexpected effects may happen
because of the different semantics of the 2 worlds, eg: file system
permissions (Windows ACL's vs. POSIX bits within cygwin and the
translation between them).

cygwin itself is convinient to install and maintain.

Gruß
Jan


--
Howard M. Lewis Ship
Independent J2EE / Open-Source Java Consultant
Creator, Jakarta Tapestry
Creator, Jakarta HiveMind
http://howardlewisship.com
 
M

Matt Mower

Hi David,

Would you be willing to help me package binaries for RPA? :) I can help
you re-learn if needed.

If you can put up with teaching me I would be happy to contribute some
of my spare time to this effort. Contact me in #ruby-lang.

Regards,

Matt
 
D

David Ross

Curt said:
David Ross wrote:



I am a big proponent of being cross-platform *and* making things as easy as
possible for end users to install and use. So, this is not intended to start
any kind of competition or flame-war, mostly I'm just curious...

When I see the statement "most of us are unix users, there are some windows
users" it makes me wonder whether or not this is really true. I'm involved
in two major cross-platform Ruby projects: FreeRIDE and wxRuby. In both
cases the windows downloads are higher than all the other platforms
combined.

It would be interesting if there was a more reliable way to gauge Ruby's use
on various platforms, but I don't know how that could be done.

Curt
I don't have anything against windows, but now I will get a team
together and have a group of people build binaries for windows users,
now it consists of lypanov and me. Soon we shall have a binary
revolution. To the Ruby Republic!

David Ross
 
D

David Ross

Its said:
This bites me quite often as well, though I have not given up. There are
likely hordes of unwashed masses like me, not entirely adept at
source-patch-recompile-rebuild, who never even get started with Ruby because
of the kinds of issues Abe describes.

Their loss or Ruby's? Unfortunately, probably both.

I feel gems is one of the keys to getting past this. Gems can make my local
(Windows) Ruby install feel like
- a single plug-in system
- pulling together 'requires'
- incorporating documentation from a single starting point
- including compatible versions and dependencies

It would be great if gems was part of the standard Ruby distribution, if RPA
could use gems as its underlying package manager (reducing confusion for
newBs), and if RPA could then also take on the role of Release Manager for
Ruby itself.

Some misc thoughts:

- Could gems ALSO cover binaries AND binary/library dependencies?

- Could the gems RDOCs have links to some gems-aligned community
documentation site, as someone else proposed here recently?
RPA and RubyGems have different aspects in implementation, so it would
not be compatible/easy. Now that I have a RPA QA team for windows, we
should have binaries put together soon. Good support for software. :)

David Ross
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,983
Messages
2,570,187
Members
46,747
Latest member
jojoBizaroo

Latest Threads

Top