|Think about Loose Coupling|
Beloved monks, this is related to our culture and our community, more or less, what I am about to utter does also serve as an emotional dump on the sounding board of our great monastery and not in anyways an alarmist behavior, it is just an upheaval within me seeking to be released and I am certain this has happened to many of you upon dealing with folks not particularly versed in Perl.
Last week, I delivered an introductory talk on Data cleaning, wrangling and munging using Perl, my audience included a colleague who touched Perl last 5 years ago in addition to my boss who is essentially a bio-statistician and computer scientist using SAS routinely but he knows other languages, examples I used were relevant to both numerical as well biological data sets and nothing but on introductory borders, touching on topics such as PDL, BioPerl, Text::Table, DBI, Styles (OOP, Procedural, Functional)...etc. It all was well received and my code was clean and tidy.. and we have started on gathering the requirement to streamline data cleaning efforts...
However, over at lunch, days later, we were discussing different statistical analysis programs and they mentioned a certain solution and my response was "That syntax is so arcane, ambiguous and disconnected", and floodgates unleashed, "Dude you're the last person who speaks when it comes to syntax, you are a Perl coder, it is so unreadable, unorganized, painfully articulated....blah blah".
My reply was, not everyone who writes Perl is a Perl programmer, the language is designed to have a shallow learning curve and you could get up and running producing code that gets the job done which explains why some of the scattered around programs written in Perl can work and the ones who wrote them could get away with impunity for the mistakes in there; the language is flexible and forgiving but you can turn strictures on that enforce legitimizing measures on the way you write your code, declare your variables...etc, the language has wide uses in different areas (CGI, system administrations, tying applications together, relational object mapping through T2) and not only restricted to the famed text processing prowess that even SAS has implemented in it functions through which Perl regular expressions can be compiled, parsed and executed and how it has debugging capacities and error reporting too and of course, how the community is so cohesive, supportive and diversified that development in the language capabilities can simultaneously occur on different fronts..
They were so opinionated that Perl only exists as long as Bio data is in text files, if that changes then no more Perl and I was like guys, a language is a tool and the right tool at the right time rules.
Monasterians, you must have gone through such discussions at some point or the other or you will at some time or the other. What poor and stricken me has faced was dire and I couldn't but let it out in here and entertain you to share some of your stories, wisdom and everlasting support to a comrade...
Excellence is an Endeavor of Persistence. A Year-Old Monk :D .