Possible Duplicate:
How do I pick up a new language quickly, given I know several others?

I started a new job working on an application I'm vaguely familar with, and it's in PERL! I come from a PHP and Java background, so while I understand the basics, there are lot of nuances in PERL that make it troublesome.

updated < Im supposed to be a UI developer, but the smallness of the office requires me to learn and do a lot more than just javascript. So that was slightly unexpected in some aspects and I'm just thinking about what approach to take with this > /updated

So far I've been sifting through the code to understand what each part does, printed out copies of code and try to lookup APIs I'm not familiar with, and so I dunno how effective this process is -- I feel like it's gonna take some time -- and I dont want my new employers to feel like I'm not being productive.

Anyone have some ideas or approaches for this kind of situation?

I read some of the questions about learning new languages, but I'm curious to see if anyone's had experience with this with PERL.

  • 2
    Did you know you'll code using perl? Did they know you don't know it? If both are yes - you all had known it'll take a time for you to become at least intermediate perl-coder. – zerkms Aug 15 '11 at 3:17
  • 3
    Get some books: first, Learning Perl(the llama book), then Programming Perl(the camel book) – Rafe Kettler Aug 15 '11 at 3:20
  • @zerkms I was supposed to be a UI developer not a backend developer, so while I can blow javasacript issues out of the water, I've discovered that I have to know a lot more Perl than I expected. – qodeninja Aug 15 '11 at 3:23
  • @Rafe great idea! – qodeninja Aug 15 '11 at 3:24
  • 2
    Since you already know PHP, I would suggest the Cookbook to learn common idioms in perl. I also found helpful the tutorials, function reference, and FAQs in the perldoc. – stevenl Aug 15 '11 at 3:50

You should focus your learning on small use cases in the code. Try to run a specific scenario. See what parts of the code it touches. Fixing bugs and writing tests helps you focus as well.

Also, try to find some documentation, specs or "architecture" documents; or someone with experience in that code base, for some "knowledge transfer". It's normal to be unproductive in new code bases, even experienced developers are. You never know how much quality (or lack thereof) you'll find.

The book "Working Effectively with Legacy Code" should help.

As for Perl, you should learn the language as much as possible. When you don't understand a particular construct, look it up. Perldocs, CPAN and a good Perl book are indispensable.

  • I looked up the book! Sealed the deal for me. Thank you! – qodeninja Aug 15 '11 at 3:32

Not the answer you're looking for? Browse other questions tagged or ask your own question.