|Think about Loose Coupling|
In Need of Mentoringby qazwart (Scribe)
|on Jan 15, 2012 at 21:24 UTC||Need Help??|
qazwart has asked for the
wisdom of the Perl Monks concerning the following question:
I've been using Perl in various forms since Perl 3.0. I've tired to keep up with the latest developments, insights, and coding styles. I've gone from the age of chop to chomp, from It's like shell script to use strict/warnings, and from procedural to object oriented Perl.
I've gotten manuals and books and studied them. Throughout it all, I think my Perl coding ability is pretty good. Scripts and modules I've written have been floating around the Internet from one user to another. I'm thankful that others have found my work to be useful.
The problem is that I'm off in my own little isolated world. Yes, I've learned a lot through documentation, seeing examples, and picking up ideas on my own, but would you use a heart surgeon whose sole training is what he read on Wikipedia? Almost every job I've held, I've been the local Perl expert. Not that my Perl knowledge is so vast and great, it's that most of the people I work with aren't that good.
One of the Perl modules I've written has become fairly popular, and I'd like to publish it as part of CPAN. And, I'd like to take this opportunity to really help improve my Perl knowledge and code. I've written the module, and it's all documented via POD. I've used the POD to create a whole bunch of testing using Test::More. As far as I can tell, it's already to upload. What I'd like is to find someone or place that could mentor me. Review my code, tell me where it falls short and how I could improve it.
There are all sorts of questions I have. For example, I know what I am doing should work with Perl as old as Perl 5.8.8, and I do a <use 5.008008;> to verify this. However, should I make sure my code works with earlier versions of Perl? Are there still a lot of people out on Perl 5.6? Should I say To heck with people using software a decade old and say use 5.010;. Or, should I be saying use v5.10;? Are vstrings still used?
This is my problem. I want to improve my coding. I want to be able to post my modules on CPAN, and not have people say "You want to see something sad and tragic? Look at this module!. I've downloaded Perl modules from CPAN and looked at the code, but many CPAN modules are fairly old, and their coding style is dated.
So where do I go to get mentoring on my coding and programming style? I'm not looking for tutoring. I'm willing to pick up manuals and do that on my own. I simply want a code review, or a few hints. This isn't so much as How do I do such and such?, but whether I'm doing it correctly.