I've been reading a large number of (mostly troll initiated) threads lately about the choice of Perl above Java or other languages, as well as merlyn's post on perl2exe - no more secrets, and I've got to thinking ...

What made you learn Perl?

I am a programmer "wannabe", I freely admit it. I never meant to become a programmer, of any sort. I just wanted things to WORK, I just found that I had to use the programming tools available in order to get certain jobs done.

In 1989 I taught myself (out of the manuals & by trial & error) QBasic in order to maintain a stock-control / ordering / sales system developed in house by my boss, who didn't have the time to do it himself. My ONLY object was to get the job done & get on with my other work. If I look at that code now, I shudder.

Since then I have learnt smatterings of Pascal, Turbo Pascal, dBase IV, Clipper, Java, HTML, VBA, VBScript ... all for one Purpose - To Get The Job Done.

The only "language" I've ever really attempted to master for its own sake, is T-SQL, in my capacity as a designer of database queries for our reporting tools here at work. And I've got a Looong way to go before I can consider the subject "mastered". Even so, I'm more interested in WHAT I can do with it, as opposed to how the language is supposed to fit together. Yes, you cannot do the one without the other, but I feel it's a matter of perspective.

Then ... the great Adventure ... I decided I needed to standardise on a script language for future projects, so that I could get more expert than just "getting the job done". In other words, I decided to learn a language just to know it. After casting around, looking here & there, & with a bit of inspiration from AcidHawk (the only perlmonk I know personally), I decided on Perl.

My reasons were simple. Perl is Open Source, Perl is Cross-Platform, Perl is (I've been assured) easy to learn, even if difficult to master. Perl projects generally have a shorter cycle time. Issues such as speed-of-execution, etc never even entered my head ...

So ... What's my point?

Well, I've realised that we have three groups here (that I've observed).
There are the pragmatists, who want to know what will WORK.
There are the theorists, who want everything to be done "correctly".
Oh, yes, and there are the trolls ... ;-)

So we seem to have differing opinions about "best practice".
Firstly, because we all differ in our levels of knowledge in the language, and secondly, because we differ in our outlook on the philosophy of coding.
I came to PerlMonks to learn about Perl ... and have ... in heaps. I've also learnt other things. I never knew people could be so passionate about a language! (And, yes, it's catching! :-) I never realised the difference of approach to how people view code.

The question then remains ... What made YOU learn Perl? Was it an accident of work/project. Was it a conscious, planned decision, if so, what influenced it?

Following from that ... When you code, do you attempt to achieve the objective as efficiently as possible (time-wise, etc). Or do you focus on the elegance (or "correctness") of your code. Both is obviously good, but we're not all merlyn or tilly ...

So Long