Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > Ruby as First Language

Reply
Thread Tools

Ruby as First Language

 
 
woodyee
Guest
Posts: n/a
 
      02-23-2006
Hi! I'm interested in getting opinions on Ruby as a first language. For
example, how it compares to python/perl/basic/etc as a first language.
My goals are to learn the basics of a language, then delve into network
programming, and then learn how to interact with the operating system
programaticallly. Will Ruby help me achieve this goal? Will Ruby enable
me to transition to other languages (ex., C/Assembly/etc)? Thanks in
advance!

WY

 
Reply With Quote
 
 
 
 
dblack@wobblini.net
Guest
Posts: n/a
 
      02-23-2006
Hi --

On Thu, 23 Feb 2006, woodyee wrote:

> Hi! I'm interested in getting opinions on Ruby as a first language. For
> example, how it compares to python/perl/basic/etc as a first language.
> My goals are to learn the basics of a language, then delve into network
> programming, and then learn how to interact with the operating system
> programaticallly. Will Ruby help me achieve this goal?


Yes, and then some.

> Will Ruby enable me to transition to other languages (ex.,
> C/Assembly/etc)? Thanks in advance!


It won't cause you to know those other languages of course, but it
will enable you to learn them in the sense that it won't stop you
And C actually connects up naturally with Ruby, since Ruby is written
in C and you can write C extensions for Ruby.

Have you seen this book?

http://www.pragmaticprogrammer.com/t...ltp/index.html


David

--
David A. Black ((E-Mail Removed))
Ruby Power and Light (http://www.rubypowerandlight.com)

"Ruby for Rails" chapters now available
from Manning Early Access Program! http://www.manning.com/books/black


 
Reply With Quote
 
 
 
 
Robert Klemme
Guest
Posts: n/a
 
      02-23-2006
woodyee wrote:
> Hi! I'm interested in getting opinions on Ruby as a first language.
> For example, how it compares to python/perl/basic/etc as a first
> language. My goals are to learn the basics of a language, then delve
> into network programming, and then learn how to interact with the
> operating system programaticallly. Will Ruby help me achieve this
> goal? Will Ruby enable me to transition to other languages (ex.,
> C/Assembly/etc)? Thanks in advance!


Ruby vs. Perl: much cleaner syntax and less typing.

Ruby vs. Basic: although there might be Basic dialects around that have
evolved from the ridiculous line number + GOTO I'd rather not consider it.

Ruby vs. Python: can't comment on that.

Ruby takes away a lot of the nifty details that you would have to deal
with in C or C++ (memory management etc.) or Perl (how many $'s do I need
here?). OTOH there is no *direct* access to system libs (as from C for
example). For that you would have to write a C extension. Still, I think
to initially learn to develop software Ruby is a pretty good choice.

Kind regards

robert

 
Reply With Quote
 
Charlie Bowman
Guest
Posts: n/a
 
      02-23-2006
--=-TpE+hqRiu7EohiA+v2LD
Content-Type: text/plain
Content-Transfer-Encoding: 7bit

On Thu, 2006-02-23 at 23:14 +0900, http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:

> Have you seen this book?
>
> http://www.pragmaticprogrammer.com/t...ltp/index.html


I wish I had that book when I first started programming. That book
changed my way of thinking about code more than any other book! Be
warned....If you learn ruby first then you'll hate the syntax of just
about every other language!

Charlie Bowman
recentrambles.com

--=-TpE+hqRiu7EohiA+v2LD--


 
Reply With Quote
 
Dave Burt
Guest
Posts: n/a
 
      02-23-2006
Robert Klemme wrote:
> OTOH there is no *direct* access to system libs (as from C for
> example). For that you would have to write a C extension. Still, I think
> to initially learn to develop software Ruby is a pretty good choice.


Just to knock down your only negative point a little, Robert, there is DL,
which makes accessing C libraries about equal in pain to doing it in C, no?

Me, I'm all for learning Ruby as a first language. My first language was
Basic, and I do reckon that it probably doesn't matter too much what you
pick, but an important factor is being able to actually produce something
cool/fun/useful as you go. (Games, for instance.) Learning a second language
will be significantly easier after you've learnt one already, almost
regardless of the language.

Ruby's productive, flexible, and crosses paradigms other languages are built
around. Perhaps it's less simple than, say, Java or Basic, but I think it
more than makes up for it in the
being-able-to-get-something-done-quickly-and-easily department. The
paradigm-crossingness of it may mean it's easier to pick up a wider range of
languages after you've mastered Ruby; it's a bit like Lisp, a bit like
Basic, a bit like Java.

Choose Ruby.

Cheers,
Dave


 
Reply With Quote
 
Gene Tani
Guest
Posts: n/a
 
      02-23-2006

Robert Klemme wrote:
> woodyee wrote:


> Ruby vs. Perl: much cleaner syntax and less typing.
>
>
> Ruby vs. Python: can't comment on that.
>


Perl has gotten a bad rap, well-written perl is pretty easy to follow.
Also perl's kind of hard to avoid, in certain circles, lots of times i
start somethign by reading CPAN modules, lots of OReilly books have
sample code in perl, etc. so at least being able to read perl code is
helpful

python:
http://mail.python.org/pipermail/pyt...er/305692.html

ruby has a couple really nice IDEs, komodo and Arachno, which make
learning as painless as possible, popping up method names for you to
click on when the IDE can determine what object instance you're talking
about. (Wing IDE for python is also really nice).

 
Reply With Quote
 
Giacecco
Guest
Posts: n/a
 
      02-23-2006
Hi Woodyee, how important is this information according to your
profession?

If you're doing this for yourself, Ruby will be a great language to
learn and use.

But if you are doing this to revise your position in the job market,
none of the languages you listed will give you much advantage: it's
Java and/or C# to be obligatory these days in any curriculum.

I am certain that Ruby will grow a lot in the next years and things
will change, but if you have to decide today, and it is for your job,
Ruby is still too weak.

Gianfranco

 
Reply With Quote
 
Robert Klemme
Guest
Posts: n/a
 
      02-23-2006
Gene Tani wrote:
> Perl has gotten a bad rap, well-written perl is pretty easy to follow.
> Also perl's kind of hard to avoid, in certain circles, lots of times i
> start somethign by reading CPAN modules, lots of OReilly books have
> sample code in perl, etc. so at least being able to read perl code is
> helpful


Yes, but this thread is about "first language". I don't know how Perl's
OO has changed since Perl 5 but then it was horrible. Certainly nothing
I'd recommend for learning OO - I'd definitely choose even C++ and of
course Java / C# over Perl for OO.

Kind regards

robert

 
Reply With Quote
 
Robert Klemme
Guest
Posts: n/a
 
      02-23-2006
Dave Burt wrote:
> Robert Klemme wrote:
>> OTOH there is no *direct* access to system libs (as from C for
>> example). For that you would have to write a C extension. Still, I
>> think to initially learn to develop software Ruby is a pretty good
>> choice.

>
> Just to knock down your only negative point a little, Robert, there
> is DL, which makes accessing C libraries about equal in pain to doing
> it in C, no?


I forgot that. Yeah, with DL it seems reasonably easy. Good point!

> Me, I'm all for learning Ruby as a first language. My first language
> was Basic, and I do reckon that it probably doesn't matter too much
> what you pick, but an important factor is being able to actually
> produce something cool/fun/useful as you go. (Games, for instance.)


I wouldn't go that far. For example, at the time I was using BASIC there
were no functions and you had to work with GOSUB and GOTO for
modularization; for me this is a major drawback. I rather recommend to
use PASCAL (no kidding) over ancient BASIC's. I know current BASIC
dialects are much better - but then again, there are so many of them...

> Learning a second language will be significantly easier after you've
> learnt one already, almost regardless of the language.


I'm not sure; it certainly helps, but I guess the paradigmatic distance
(TM) of the second language makes a difference. I guess it's easier to go
from C++ to SmallTalk (both OO) than from Lisp to BASIC...

> Choose Ruby.


Definitively!

robert

 
Reply With Quote
 
James H.
Guest
Posts: n/a
 
      02-23-2006
But more importantly, *should* Ruby be a first language taught, period?
I tend to think no.

C allows you to have a base understanding of all the technical aspects
of programming, like memory management, procedural thought, and the
basics of writing methods. These are generally good skills to have,
and you'll find that you use them everywhere. C is a lot like latin,
insofar that it's not changing much, and is used to communicate ideas.
I also think it's a little more "native" to initial human understanding
about programming. People tend to think of it as a linear, or
semi-cyclical set of instructions. In that regard, I think C is a good
way to enter the scene.

The thought process overhead in object oriented programming is quite
extensive. It takes a long time to really get in the mode. If you
learn somethings about C, and get a basic grasp before moving on to
Ruby, you'll understand and have a better appreciation for some of the
"magic" going on behind the scenes, as well as opening other avenues
for your programming career. Doubly, it takes a long time to learn how
to think in objects -- something I admit, myself, to just be getting
the hang of. When you start reading about design patterns, you realize
the complexity, and beauty that OOP allows you.

If the original poster decides to forgo C for Ruby in the time being, I
hope the poster eventually returns to it, if even just to have a base
understanding of what's going on beneath the scenes.

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Using ruby for generic language parsing (or any language-specificparsing libraries out there?) Andrew S. Townley Ruby 0 04-13-2009 04:29 PM
Should I Learn Ruby as a First Language? MRH Ruby 62 06-07-2008 10:18 PM
A language-agnostic language Ed Java 24 03-27-2006 08:19 PM
Ruby as a first language Martin DeMello Ruby 8 08-18-2004 05:13 AM
Python is the best and most popular general purpose scripting language; the universal scripting language Ron Stephens Python 23 04-12-2004 05:32 PM



Advertisments