Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re: Recommendations for a self-taught Perl programmer

by imp (Priest)
on Nov 16, 2006 at 18:46 UTC ( #584566=note: print w/replies, xml ) Need Help??

in reply to Recommendations for a self-taught Perl programmer

Being self-taught is valuable in that it teaches you to be do independent research and solve your own problems, but it can also leave gaps in your understanding. What specific areas are you finding yourself lacking?

Your peers with a CS background are likely stronger in the algorithm, implementation, and planning/writing departments. The peers with a lot of industry experience likely have more wisdom about what you should do, versus what you can do.

The Pragmatic Programmer should be required reading in my opinion, as it addresses common areas where people are lacking in wisdom. Some of the most important areas (in my opinion) are revision control and testing.

If you are looking for perl specific information then I very highly recommend Perl Best Practices.

I'm very fond of Design Patterns: Elements of Reusable Object-Oriented Software, but recommend against embracing it immediately. There are some very useful patterns covered, but you also need the wisdom to know when to apply each pattern. I have heard good things about the "head first" version of that book, but haven't read it yet.

One of the best resources when learning more about perl is this community. Taking a passive role and reading the posts each day is valuable in that you can learn about modules and practices that you were not aware of.. but taking an active role is far more informative. There is a big difference between knowing how to do something, and knowing how to explain it. Frequently when you attempt to explain something you discover that you didn't know the topic nearly as well as you had assumed. After you submit your response keep an eye on the thread and see what you can learn from the way other monks approached/solved the problem.

You might find the following related threads from this site useful:

  • Comment on Re: Recommendations for a self-taught Perl programmer

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://584566]
[Corion]: marto: How's things? I hope the kids are fine and you too!
[Corion]: Oh yay. I wonder why a very simple change in a program doesn't elicit a diff, and now I see that my diff program seems to have a bug ;)
[1nickt]: marto thanks for asking, so far so good. A pretty modern stack and decent procedures, although rather too much home-built stuff (e.g. a logging role that should tries to duplicate Log::Any).
[Corion]: No. It's just that I'm comparing the same output file twice, instead of comparing the output files of the two runs %-)
[Corion]: Lo and behold, running a program with the correct input files yields the correct (and expected) output. Yay me.
[1nickt]: Got a MacBook and am expected to develop directly on it, ironic given the recent thread about that.
[marto]: Corion, some not too serious issues with the kids, hopefully, other than that just dealing with commuting by car again in the winter, not much fun so far, and there's no real 'bad' weather yet :)
[marto]: 1nickt, glad to hear it, I'm sure you'll bring improvements to their stack in due course ;)

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (8)
As of 2017-12-11 11:41 GMT
Find Nodes?
    Voting Booth?
    What programming language do you hate the most?

    Results (289 votes). Check out past polls.