If you follow me and read some of my past posts, you know that I generally talk about correcting weaknesses. This is for 3 main reasons:
- There is so much room for improvements
- Perl has bad reputation and it is not deserved
- You could have the best product in the world, but if nobody knows it...
I heard one time that in relationship we finally end up loving our partner for "defects", well I'm not sure it's true and if it applies for programming languages 😀
What is obvious is that Perl programmers love Perl for its strengths and that's all!
In current situation, Perl strengths are more what make people enjoy and stick with Perl when weaknesses are what make people stay out of Perl... (some sort of contrary analysis could probably be valid for some javascript frameworks or other programming languages, hype but then dreaded from users).
Finally, trying to work on weaknesses can also be seen unnatural because at some point that's not by hazard if they became weaknesses. It means they are not really in the DNA of the Perl folks (and it’s also a good thing, after all we love Perl for its DNA).
It could also happen that working on weaknesses could weaken strengths.
So according to you, should Perl focus on its strengths or try to work on its weaknesses?
Some strengths according to me: extreme compatibility, portability, smart interpreter, quality, toolchain, sysadmin...
Some weaknesses according to me: reputation, boilerplate, web presence...
Top comments (5)
A good positive marketing about whole Perl ecosystem is definitely needed.
The strength of Perl is known only to the Perl developers or to someone who spent ample time on it.
I have met various technical people who consider Perl as normal scripting language. They are totally unaware of any Perl web frameworks. They know and use django because someone has said that Instagram/Quora is written in it. They know React.js because of Facebook, they know and use Angular for there next project because of Google. I haven't found anyone who says we should be using Perl or any framework because of this tech giant. The point is in last decade or so most of the language or frameworks owe there popularity to some tech giants and Perl is unlucky in this matter(Though there are some pro Perl company but they are very limited).
This scenario is something I have seen in a technical person. Consider a non technical person(e.g. your Manger or HR). They believe what they see. I was strictly told in one of my previous engagement not to write any code in Perl. That's it. This is because they believe all the negative marketing done in last few decades. They neither have the energy nor the interest to dig up the truth. And in this scenario you can't do much, you have to follow the orders. I also once heard from a HR (yes even they know) that Perl is dead and I was totally surprised on how can they possible know and understand what is meant by this statement.
I have very much expectation from Perl7. This number is not just a number, it is a statement to the world that "Perl is not dead". That's it. Even if we don't add a single feature I am perfectly fine with it. But this number needs to increase.
PHP7 has done that and I hope Perl will also do the same.
Another complain which I heard from my colleagues are the Perl websites. Yes, being a Perl developer I will be little partial and bear it, but consider a new person visiting Perlmonks(they call it 'blue one') for first time. The new person learning the language or looking for something will not spent that much time. They will pass the judgement on the spot.
I love backward compatibly in Perl. I migrated several code from 5.8.9 to new versions with minimal code changes and pain. Having said that, I have migrated some scripts from 5.8.8 to Python3 also because I was told to do so even-though it was a pain for me.
I love Perl documentations(pod) which is something other languages community can learn.
Perl has its strength but the one weakness(negative marketing and reputation/perception) has put a curtain on it by which it is invisible to a non-Perl developer.
I think a "Perl 7" will be sustantivite for perception but it has to have "meat" in the release.
Thank you for this comment, I agree with everything you said!
Why not both?
Yes, and.