On Sun, 16 May 2004 17:25:14 -0700, Nathan Koren wrote:

> Greetings!
> 
> I'm trying to figure out if Ruby is the right language for a project
> that I'm working on, and I'd appreciate any advice that anyone can
> give me.  First, some background about myself and this project:
> 
> * Depending on who you talk to, I either am or am not a "real"
> programmer.  I have no formal training, and although I have extensive
> experience in scripting languages like Bash, application-specialized
> LISPs, Matlab, and especially PHP, I've never programmed in a "real"
> relatively low-level language.  Nor am I particularly eager to.
> 
> * I am currently developing my project with Matlab, but it looks like
> Matlab's GUI capabilities (among other things) may be insufficient. 
> Thus I am looking for another language to port my program to, or at
> least use to build a graphical front-end for my Matlab programs.
> 
> * Whatever language I use should be cross-platform, although initially
> I am developing for Windows only.  When thinking "cross-platform,"
> Java is the first thing that comes to mind.  But Java is a pain in the
> ass, and I'd rather not do it plus, I've never used a Java
> application that has struck me as anything other than clunky.
> 
> When searching around for languages, I ran across Python, which seemed
> like it would do everything I need, in combination with the wx widget
> library.  Then I noticed some people promulgating this "Ruby"
> language.  I'd never heard of it, but I was intrigued.  Particularly
> because they all seemed to have this particular glassy-eyed zeal that
> I usually associate with Amiga or BeOS users.  Now, I've been an Amiga
> and BeOS user back in their heyday and I know that their zeal is
> ABSOLUTELY 100% JUSTIFIED.  Those systems were simply a JOY to use,
> which is a selling point that seems to elude most computer people, but
> is important to me.  If I can experience some measure of joy while
> learning a new language and porting my project to it, then that is a
> very big selling point indeed.
> 
> However, if Ruby doesn't actually do what I need, then I'll have to
> find another language to work with.  Here are the concerns I have:
> 
> * This is going to be commercial software, and I do NOT intend to give
> away the source code.  Is their a way that Ruby programs can be
> securely compiled so that the source code is inaccessible?
> 
> * For that matter, is there a way that Ruby programs can be compiled
> as binary executables?  On Windows, Linux, and Mac?
> 
> * I will be using a shareware-validation protocol not unlike
> http://www.shareit.com. Will Ruby be compatible with this?
> 
> * If I am porting the entire program to Ruby, rather than just using
> it as a frontend to my standalone Matlab programs, are there good Fast
> Fourier Transform libraries for Ruby?
> 
> If anyone can help me answer these questions, I'd be most
> appreciative.
> 
> Sincerely,
> 
> Nathan

I recently joined the ruby community. I was a python programmer, and I too
became intrigued with ruby as a consequence of their uncompromising
zealotry. Like you, I was also a support of BeOS. If you are anything like
me, ruby is definitely the language for you. Ruby provides astonishingly
elegant OO support, profoundly flexible syntax, immense versatility, and
relatively impressive runtime speeds. It does everything python does, and
quite a bit more. The ruby community has been incredibly helpful and
responsive, and what I have read about potential future developments of
the language itself further increase the allure. Ruby comes from a
tradition of sensibility and innovation. You might be interested in
reading interviews with the creator of the language:
http://www.artima.com/intv/craft.html.

I have studied numerous languages, both compiled and interpreted, and ruby
provides an unprecedented fusion of power, mutability, and usability. If
you want to rapidly produce scalable, portable, and robust applications,
you need look no further.

--SegPhault