|laziness, impatience, and hubris|
Re: How to learn Perl efficientlyby KeighleHawk (Scribe)
|on Sep 01, 2004 at 18:59 UTC||Need Help??|
I also take a mostly minority view on this. I do agree the O'Reilly books are generally a fail safe and I own almost all the Perl related ones. I would also add to the list any writings by Damian Conway. If you get the chance to hear him speak, do so. It's down-right inspiring.
However, "just coding" in Perl will lead you down all kinds of dark and vile paths and trying to read other peoples' Perl code will likely make your head explode. There is a reason advocates of other languages refer to Perl as a "write only" language.
However, if you have a quest to "do it right" a lot of what was suggested here will hamper you. Perl's greatest advantage as well as its achilles heel is the infamous TIMTOWTDI (There Is More Than One Way To Do It).
Since you are a Comp Sci student that suggests two things to me. 1. You have little coding experience. 2. You are already supposedly being taught the "right way" to code. Therefore, rather than "do it right" I would suggest two alternative paths.
First, rather than trying to determine what is "right" about Perl, just make Perl do what you **want**. This is a big reason why I like Damian Conway. Perl did not support Design by Contract, so he created a module to make it do so. Perl is so rediculously flexible, trust me, you can make it do what you want and not be constrained by what it currently does, nor by what others currently do with it.
Second, as you gain more experience coding **then** start to really explore what makes Perl unique. If you follow the first path, you will begin to find this out anyway.
Keep in mind, you can do almost anything in almost any language. The only real reason for learning multiple languages is to gain "alternative" view points to solving problems. You don't really have enough experience (I am guessing) just yet to make that a worth while effort. However, by applying what you **do** know to Perl, you can begin building that experience as well as see what it takes to twist Perl into your prefered view point...