From: Robert Hicks Date: 2008-02-05T00:24:58+09:00 Subject: Re: Learn how to program On Feb 4, 5:04 am, Chad Perrin wrote: > On Sun, Feb 03, 2008 at 10:32:22PM +0900, Eivind Eklund wrote: > > On Feb 1, 2008 7:10 PM, Chad Perrin wrote: > > > > Ruby and Python are pretty decent choices, I think. > > > > To the list of high-level dynamic languages for teaching programming, I'd > > > add Logo (specifically UCBLogo), Perl, and probably DrScheme. > > > Why Perl?  I know Perl fairly well, unfortunately having done most of > > my programming in it over the last 12 years, but I don't see why it > > would be appropriate for teaching.  I'd think all the weird > > irregularities would get in the way, but if you actually have > > experience with it, I'd like to hear why I'm wrong (if I'm wrong). > > Learning Perl, by Randal Schwartz, is one of the all-time best books for > learning a programming language with very little familiarity with > programming at all.  Something like its approach with the addition of a > teacher would make for an excellent instructional course for people who > essentially have *no* familiarity with programming. > > PHP gets a lot of mileage out of how easy it is to pick up from scratch, > and do simple work with only minimal exposure.  Perl has all the benefits > of PHP in this regard, with the exception of PHP's ubiquity for > markup-embedded coding on shared hosting accounts.  What Perl *doesn't* > have is its brain-damaging limitations and design characteristics. > > Ruby, I think, is the best language I've ever met for teaching object > oriented programming.  I don't think it's quite as easily grasped for > someone who has never met a programming language before as Perl, without > additional guidance, though.  Part of the reason for that is also the > reason Ruby's so good for teaching OOP (and Perl's so damned ugly for > OOP). > > I think both Perl and Ruby are among the best languages I've ever > encountered for teaching programming -- with each being stronger in some > niches than the other.  The same goes for UCBLogo as well. > > Does that make sense? > I agree with those points. Robert