http://qs1969.pair.com?node_id=53908

Every perl program I've ever written has been a learning experience. Each program has involved broadening my perl vocabulary, learning how to use a new module or two, etc. According to the late1 great Larry Wall it's perfectly acceptable to speak "a subset of perl" and even "perl baby talk". While I'm by no means a proficient perl programmer, I thought I had at least a basic understanding of things like the context sensitivity of many perl functions. Evidently not. I'm well aware of things like scalar and list context, but a piece of code I wrote earlier today which uses bitwise negation (via the ~ operator) introduced2 me to numeric vs. string context, which I later learned about in perlop2.

Roughly four months after my first perl program, there is no end to this learning process in sight. And I'm beginning to wonder, "does this learning process ever end? Should it?" Do you ever reach a point where you are coding entirely from memory, without the need to brush up on a nuance of some obscure perl function, or learn the use of some new module? What kinds of realistic goals might a young perl programmer set for himself? Aside from reading good books, applying what I learn, and of course hanging out in the monastery, what other ways might I broaden my knowledge of perl, and computer programming in general?


1 In the "fashionable" / "he said he'd be here to speak at 1800 sharp. It's only 1823, so I'm not worried yet." sense of the term. Not the equally permanent but less attractive "posthumous" sense.

2And had I not enabled warnings via the -w argument on the shebang line I would still be pulling my hair out trying to figure out where the problem was. Many thanks to all the monks who fill the monastery halls with chants of "use strict, enable warnings" during the otherwise silent moments.


And no, I don't own 27 pairs of sweatpants.

Replies are listed 'Best First'.
Re: Programmer Endorphins: When does the learning process end?
by lemming (Priest) on Jan 24, 2001 at 11:45 UTC
      "When you've stopped learning, you might as well be dead."

      I say that ALL the time.

      Advice to newbies: if you want to be a programmer, then know that it is a never-ending journey, and besides, the point of the journey is not to arrive. . .

      Besides, if you do get to the end of your programming journey before you die (barring a change of careers), then you will probably wake up one morning and realize you are in Dilbert-Land, complete with Pointy-Headed Imbeciles.

      Jeff

      L-LL-L--L-LL-L--L-LL-L--
      -R--R-RR-R--R-RR-R--R-RR
      F--F--F--F--F--F--F--F--
      (the triplet paradiddle)
      
      "When you've stopped learning, you might as well be dead."

      My version is "If you don't learn at least one new thing a day, you are dead." =)

      --
      $you = new YOU;
      honk() if $you->love(perl)

Re: Programmer Endorphins: When does the learning process end?
by Trinary (Pilgrim) on Jan 24, 2001 at 12:18 UTC
    I don't know what other programming experience you have, but I've found one of the better ways of learning a programming language (other than actual use, reading books, and looking at other code, of course) is comparing it to others to hilight it's unique qualities. Pick up a general programming languages book (I used Concepts of Programming Languages, by Sebesta in my formal education) and if you have the inclination, poke around with some other languages and figure out how they work.

    I garuntee that you'll come back with a new understanding of Perl (I think this works better with Perl than most other languages, because it allows so much more freedom than most procedural programming languages).

    Enjoy

    Trinary

Re: Programmer Endorphins: When does the learning process end?
by clemburg (Curate) on Jan 24, 2001 at 14:40 UTC

    the end of learning
    the end of understanding
    no more programming

Re: Programmer Endorphins: When does the learning process end?
by cat2014 (Monk) on Jan 24, 2001 at 11:29 UTC
    Hopefully the learning never ends. (:

    I'll make a small plug for learning another language- you can sometimes grow a lot more by learning a different way of programming in a new language than you would by just sticking with one language. I'm not bashing perl- I love it. But i think that I'm a stronger programmer for having learned assembly language programming & scheme in college. For more on this, you should check out Why I like functional programming.

    I'd recommend scheme as a great second language- or lisp (they're fairly similiar- I learned lisp first, but I hear that scheme is better to start with). But I think you'd get the same benefit by learning Java or some other language -- just make sure that it's one that interests you. -- cat

Re: Programmer Endorphins: When does the learning process end?
by dmckee (Scribe) on Jan 24, 2001 at 18:55 UTC
    It ends when you've written a self-correcting, self-programming language like they have on Star Trek.

    In other words, not in your lifetime.

    Or, if you're not aiming quite that high, when Larry Wall bows down and 'worships' you...

Re: Programmer Endorphins: When does the learning process end?
by ColonelPanic (Friar) on Jan 25, 2001 at 08:27 UTC
    $all_of_it = 100; my $learned = 2; while($learned < $all_of_it) { $learned++; $all_of_it.='0'; }


    When's the last time you used duct tape on a duct? --Larry Wall