From: "M. Edward (Ed) Borasky" Date: 2006-01-01T05:03:22+09:00 Subject: Re: About Steve Yegge's 'Opinions considered harmful' post Gregory Seidman wrote: >I came to Ruby because I had been resisting learning Perl and Python for >years. Perl because of its unholy nastiness (I can still understand the >shell scripts I wrote a decade and a half ago; can anyone say the same >about a perl script written even a year ago?), and Python because of its >significant whitespace (there are those who say it's a feature; let's agree >to disagree). Finally, a scripting language with pleasant syntax, a strong >community, and a rich ecosystem of libraries springs up. Even better, it >has the main benefits of Perl (regex wizardry) and the good design sense of >SmallTalk. Once I learned about that stuff, I decided I would learn it. > > Hmm ... I moved from (n)awk/sed/(k)sh to Perl (4) precisely *because* of the readability! This was about 10 years ago. In particular, I never have found ksh particularly readable. Before Perl, all I used ksh for was executing (n)awk scripts, and I rarely used sed at all. Most of this "application" was written in awk, and worked with either nawk or gawk but not with pure awk. Times change ... if I were implementing the pacakge now I'd use Ruby instead of the mix of Perl and R it has evolved into from the original awk. >Granted, it was not until I decided to develop a Rails app that I actually >got around to learning it. And I was delighted both by the ease with which >I developed the toy web app I was working on and the pleasure of using the >language itself. > > I think a lot of us discovered Ruby from being immersed in the Rails hype. I actually discovered it about two years ago in connection with computer music; Ruby is used in the GridFlow package. But I never took the time to learn it then, or even mess with GridFlow -- I moved back to Lisp, which is where much of the experimental music community resides. >Oh, and why did I actually need to learn a scripting language (other than >awk/sed/sh which I know well already)? I didn't. I just felt the itch to >learn a new language. > > I wanted to learn web application design specifically rather than Ruby. I suppose I should have picked PHP to learn, since a lot more web apps are written in PHP than Ruby/Rails. I may yet learn PHP, but certainly from the point of view of language design elegance, Ruby is light-years ahead of the "big three" scripting languages -- Perl, PHP and Python. Strangely enough, the one "wart" on Ruby in my opinion is the continuation of the UNIX/vi/awk/sed/perl "tradition" of regular expression syntax and semantics. I appreciate its usefulness and its ubiquity, certainly, but it is decidedly awkward to me, even after having used it for 20 years. Using it represents a thinking mode shift for me; it's as if my programs are speaking two different languages. Perhaps Matz can earn a lasting place in the computer science Hall of Fame by developing a more elegant way to do these tasks "The Ruby Way". -- M. Edward (Ed) Borasky http://linuxcapacityplanning.com