[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Printing why's (poignant) guide to ruby

Richard Dale

2/13/2005 7:40:00 PM

I'd like to try ruby on non-programmers teaching them using why's amazing
guide, to see how it works as a beginner's language. I showed some ruby
code to my 45 year old lodger who has never used a computer or seen a
computer program. He said "it looks like English, I thought computer
programming was maths". And he is especially impressed with the cartoon
foxes in Chapter 3, they have got to be the killer feature..

But it would be great to be able to print the guide out as a PDF. Is there a
version with markup available, so it can translated to a PDF to make it
easier to print?

-- Richard
59 Answers

Navindra Umanee

2/13/2005 10:09:00 PM

0

Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote:
> I'd like to try ruby on non-programmers teaching them using why's amazing
> guide, to see how it works as a beginner's language. I showed some ruby
> code to my 45 year old lodger who has never used a computer or seen a
> computer program. He said "it looks like English, I thought computer
> programming was maths". And he is especially impressed with the cartoon
> foxes in Chapter 3, they have got to be the killer feature..

Oh you think Ruby might be suitable for a total beginner?

I have the same problem. My dad wants to learn programming. I
thought maybe Python or even Visual Basic (or one of the KDE
implementations) might be more suitable. He's going to be pretty much
learning on his own, so a suitable book and references must be
available. With something like Visual Basic, he'll probably be able
to get immediate and more gratifying results as well, which should
help keep up the motivation.

I've seen some interesting beginner books for Python that make it a
strong contender as well. One thing that might be a problem at first
is the whitespace issue...

Somehow I'm not sure that Ruby would fit the bill here but I'm
interested in hearing of other's experiences/opinions. I never
considered/read why's guide before but I'll have to take a look now.

Cheers,
Navin.



Alexander Kellett

2/13/2005 10:18:00 PM

0

i'm really puzzled by this.
why python? or even worse. vb??!!

Alex

On Feb 13, 2005, at 11:08 PM, Navindra Umanee wrote:

> Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote:
>> I'd like to try ruby on non-programmers teaching them using why's
>> amazing
>> guide, to see how it works as a beginner's language. I showed some
>> ruby
>> code to my 45 year old lodger who has never used a computer or seen a
>> computer program. He said "it looks like English, I thought computer
>> programming was maths". And he is especially impressed with the
>> cartoon
>> foxes in Chapter 3, they have got to be the killer feature..
>
> Oh you think Ruby might be suitable for a total beginner?
>
> I have the same problem. My dad wants to learn programming. I
> thought maybe Python or even Visual Basic (or one of the KDE
> implementations) might be more suitable. He's going to be pretty much
> learning on his own, so a suitable book and references must be
> available. With something like Visual Basic, he'll probably be able
> to get immediate and more gratifying results as well, which should
> help keep up the motivation.
>
> I've seen some interesting beginner books for Python that make it a
> strong contender as well. One thing that might be a problem at first
> is the whitespace issue...
>
> Somehow I'm not sure that Ruby would fit the bill here but I'm
> interested in hearing of other's experiences/opinions. I never
> considered/read why's guide before but I'll have to take a look now.
>
> Cheers,
> Navin.
>



Joao Pedrosa

2/13/2005 10:29:00 PM

0

Hi,

On Mon, 14 Feb 2005 07:08:53 +0900, Navindra Umanee
<navindra@cs.mcgill.ca> wrote:
> Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote:
> > I'd like to try ruby on non-programmers teaching them using why's amazing
> > guide, to see how it works as a beginner's language. I showed some ruby
> > code to my 45 year old lodger who has never used a computer or seen a
> > computer program. He said "it looks like English, I thought computer
> > programming was maths". And he is especially impressed with the cartoon
> > foxes in Chapter 3, they have got to be the killer feature..
>
> Oh you think Ruby might be suitable for a total beginner?
>
> I have the same problem. My dad wants to learn programming. I
> thought maybe Python or even Visual Basic (or one of the KDE
> implementations) might be more suitable. He's going to be pretty much
> learning on his own, so a suitable book and references must be
> available. With something like Visual Basic, he'll probably be able
> to get immediate and more gratifying results as well, which should
> help keep up the motivation.
>
> I've seen some interesting beginner books for Python that make it a
> strong contender as well. One thing that might be a problem at first
> is the whitespace issue...
>
> Somehow I'm not sure that Ruby would fit the bill here but I'm
> interested in hearing of other's experiences/opinions. I never
> considered/read why's guide before but I'll have to take a look now.

Visual Basic too needs some thinking to put together a program. I
would say that the event-based programming of tools like VB is hard
enough to understand to make them suitable to total beginners, unless
they are kids who are not afraid of trying out things. :-)

I think that the development of non-gui apps is generally easier to
get a grasp of. The one execution path of such apps should help a
beginner understand what programming is all about (you wish :P).

Anyways, there are some materials on the net that you could use. Of
course that you will need to help him setup everything.

I would go with Ruby. :-)

Regards,
Joao


Caio Tiago Oliveira

2/13/2005 10:30:00 PM

0

Alexander Kellett, 13/2/2005 19:17:
> i'm really puzzled by this.
> why python? or even worse. vb??!!
>
> On Feb 13, 2005, at 11:08 PM, Navindra Umanee wrote:
>
>> Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote:
>>
>>> I'd like to try ruby on non-programmers teaching them using why's
>>> amazing
>>> guide, to see how it works as a beginner's language. I showed some ruby
>>> code to my 45 year old lodger who has never used a computer or seen a
>>> computer program. He said "it looks like English, I thought computer
>>> programming was maths". And he is especially impressed with the cartoon
>>> foxes in Chapter 3, they have got to be the killer feature..
>>
>>
>> Oh you think Ruby might be suitable for a total beginner?
>>
>> I have the same problem. My dad wants to learn programming. I
>> thought maybe Python or even Visual Basic (or one of the KDE
>> implementations) might be more suitable. He's going to be pretty much
>> learning on his own, so a suitable book and references must be
>> available. With something like Visual Basic, he'll probably be able
>> to get immediate and more gratifying results as well, which should
>> help keep up the motivation.
>>
>> I've seen some interesting beginner books for Python that make it a
>> strong contender as well. One thing that might be a problem at first
>> is the whitespace issue...
>>
>> Somehow I'm not sure that Ruby would fit the bill here but I'm
>> interested in hearing of other's experiences/opinions. I never
>> considered/read why's guide before but I'll have to take a look now.


I think Ruby easier to learn than Python for a beginer.
Python may be easier for someone migrating from C.
Both languages are quite easy for the beginners, and people who have
never programed can do interesting things in the first or second day.



Anders Engström

2/13/2005 10:43:00 PM

0

On Mon, Feb 14, 2005 at 07:08:53AM +0900, Navindra Umanee wrote:
> Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote:
> > I'd like to try ruby on non-programmers teaching them using why's amazing
> > guide, to see how it works as a beginner's language. I showed some ruby
> > code to my 45 year old lodger who has never used a computer or seen a
> > computer program. He said "it looks like English, I thought computer
> > programming was maths". And he is especially impressed with the cartoon
> > foxes in Chapter 3, they have got to be the killer feature..
>
> Oh you think Ruby might be suitable for a total beginner?
>

I think Ruby would be a great language for a 'total' beginner. First -
the syntax and "wording" makes look and feel very natural IMO. Second -
all you need is a text editor and Ruby itself - no confusing steps where
you have to "make", "compile" or "build" anything. Just "run" your
program (this is of course true for all scripting languages). Third -
there is no need to introduce object oriented concepts such as classes
and objects before the user is ready for them. Compare the standard
Hello World example in Ruby with one in java:

Ruby:

(hello.rb)
puts "Hello World"

$> ruby hello.rb

Java:

(Hello.java)
public class Hello {
public static void main(String[] args) {
System.out.println("Hello World");
}
}

$>javac Hello.java
$>java Hello

The java example prints out the same stuff as the Ruby example, but the
novice user would think: "What is a class?", "What is 'public'?", "What
is 'static'?", "What about that 'args' stuff?", "Where did that
Hello.class file come from, and why do I run 'java Hello' and not 'java
Hello.class'?" etc.

//Anders
--
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Anders Engström aengstrom@gnejs.net
http://www... PGP-Key: ED010E7F
[Your mind is like an umbrella. It doesn't work unless you open it.]




Michael Walter

2/13/2005 10:54:00 PM

0

The Ruby user would think "Who puts?" :-)

Michael

On Mon, 14 Feb 2005 07:42:57 +0900, Anders Engström <aengstrom@gnejs.net> wrote:
> On Mon, Feb 14, 2005 at 07:08:53AM +0900, Navindra Umanee wrote:
> > Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote:
> > > I'd like to try ruby on non-programmers teaching them using why's amazing
> > > guide, to see how it works as a beginner's language. I showed some ruby
> > > code to my 45 year old lodger who has never used a computer or seen a
> > > computer program. He said "it looks like English, I thought computer
> > > programming was maths". And he is especially impressed with the cartoon
> > > foxes in Chapter 3, they have got to be the killer feature..
> >
> > Oh you think Ruby might be suitable for a total beginner?
> >
>
> I think Ruby would be a great language for a 'total' beginner. First -
> the syntax and "wording" makes look and feel very natural IMO. Second -
> all you need is a text editor and Ruby itself - no confusing steps where
> you have to "make", "compile" or "build" anything. Just "run" your
> program (this is of course true for all scripting languages). Third -
> there is no need to introduce object oriented concepts such as classes
> and objects before the user is ready for them. Compare the standard
> Hello World example in Ruby with one in java:
>
> Ruby:
>
> (hello.rb)
> puts "Hello World"
>
> $> ruby hello.rb
>
> Java:
>
> (Hello.java)
> public class Hello {
> public static void main(String[] args) {
> System.out.println("Hello World");
> }
> }
>
> $>javac Hello.java
> $>java Hello
>
> The java example prints out the same stuff as the Ruby example, but the
> novice user would think: "What is a class?", "What is 'public'?", "What
> is 'static'?", "What about that 'args' stuff?", "Where did that
> Hello.class file come from, and why do I run 'java Hello' and not 'java
> Hello.class'?" etc.
>
> //Anders
> --
> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
> . Anders Engström aengstrom@gnejs.net
> . http://www... PGP-Key: ED010E7F
> . [Your mind is like an umbrella. It doesn't work unless you open it.]
>
>



Tim Hunter

2/13/2005 11:15:00 PM

0

On 2005-02-13 17:17:44 -0500, Alexander Kellett <ruby-lists@lypanov.net> said:

> i'm really puzzled by this.
> why python? or even worse. vb??!!
>
> Alex
>
> On Feb 13, 2005, at 11:08 PM, Navindra Umanee wrote:
>
>> Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote:
>>> I'd like to try ruby on non-programmers teaching them using why's amazing
>>> guide, to see how it works as a beginner's language. I showed some ruby
>>> code to my 45 year old lodger who has never used a computer or seen a
>>> computer program. He said "it looks like English, I thought computer
>>> programming was maths". And he is especially impressed with the cartoon
>>> foxes in Chapter 3, they have got to be the killer feature..
>>
>> Oh you think Ruby might be suitable for a total beginner?
>>
>> I have the same problem. My dad wants to learn programming. I
>> thought maybe Python or even Visual Basic (or one of the KDE
>> implementations) might be more suitable. He's going to be pretty much
>> learning on his own, so a suitable book and references must be
>> available. With something like Visual Basic, he'll probably be able
>> to get immediate and more gratifying results as well, which should
>> help keep up the motivation.

I agree that Ruby would make a good "first" language, but I have to
admit that _why's book probably won't be the best guide for your Dad.
It's a great book, don't get me wrong, but it's way too, ah,
avant-guarde for Dad-type people. Unless your dad is an IPod-dancing
Halo II champion that likes to party all night, that is. :-)

William James

2/13/2005 11:18:00 PM

0


Michael Walter wrote:
> The Ruby user would think "Who puts?" :-)
>
> Michael
>
> Anders Engström <aengstrom@gnejs.net> wrote:
> > Ruby:
> >
> > (hello.rb)
> > puts "Hello World"

"Hello, world!".display

Navindra Umanee

2/13/2005 11:19:00 PM

0

Alexander Kellett <ruby-lists@lypanov.net> wrote:
> i'm really puzzled by this.
> why python? or even worse. vb??!!

How is a total beginner going to learn Ruby? By reading Pickaxe? I'm
not talking about a CS student here. My dad lives half-way around the
world from me.

Besides, Python is a more restricted and syntactically uniform
language. Ruby is more flexible and expressive, but IMHO to really
understand the code you have to know more CS concepts and have a
deeper understanding of the syntax than some people like to admit.

Even though in Ruby you can abuse the syntax or treat it glibly --
which makes it look like a nice thing for experienced programmers -- I
think it is better to understand what you are doing first. Python
forces you to understand these issues.

I prefer Ruby but I think Python will be easier for a beginner to
grasp at the beginning, and it has less hurdles as well
documentation/book-wise -- I even saw one of the beginner books
describe how to implement a neat graphical game in a few steps.

And yeah, VB has wizards and stuff on top of plenty of documentation.
Like I said, quicker gratification can be a good thing. Someone used
to fancy windows and GUI stuff probably isn't going to be happy stuck
at the command-line level. Joao makes a good point, of course.

Cheers,
Navin.



Richard Dale

2/13/2005 11:24:00 PM

0

Alexander Kellett wrote:

> i'm really puzzled by this.
> why python? or even worse. vb??!!
Why do you think they are easier to learn than ruby? I'd just like to try
teaching non-programmers programming and find out what it is they don't
know. Or if they don't know much can they get started and learn
incremently?

From Alan Kay's recent interview:

http://acmqueue.org/modules.php?name=Content&pa=showpage&a...

"Basically what happened is this vehicle became more and more a programmerâ??s
vehicle and less and less a childrenâ??s vehicleâ??the version that got put
out, Smalltalk â??80, I donâ??t think it was ever programmed by a child. I
donâ??t think it could have been programmed by a child because it had lost
some of its amenities, even as it gained pragmatic power."

I don't think Why's is the first in the line of 'cartoon computer science
books'. I have 'Think about [TLC] Logo - A Graphic Look at Computing with
Ideas' by John R. Allen, Ruth E. Davis and John F. Johnson. It has great
cartoons, and is written by serious people (I believe why is very serious
too - that's why he's so funny).

People don't seem to want teach computer programming to children anymore (or
45 year old beginners)..

-- Richard