Perl is an island

2017-03-22 09:25:21 mihai.szilagyi Guest blog posts 3 Comments

Disclaimer: this article is metaphorical and rather ironic and it should be taken as such. Any resemblance to real life islands is purely coincidental.

It’s sunny, it’s beautiful, almost like a paradise. It’s filled with people that love Perl. The community is thriving, but only on the island (concept inspired by Stevan Little’s presentation). It’s evolving, but it’s not growing. There’s also a new part of the island, a very small one that wants to be revolutionary, the Perl 6 of the island, but it’s not ready yet. It’s not for everybody yet.

The thing about an island is that it’s very hard for outsiders to get it and people who leave, rarely come back. In order for the Perl “civilization” on the island to thrive and prosper, it needs new people, new individuals that want to live and work on this island. Without these new people, the community, in time, will dwindle and lose importance. Getting people on the island is crucial!

So, how do you do that?

Yes, help is needed, but we’re not trying to leave this island, we’re trying to get people on it. Plenty of people know about the Perl island, but they just pass by and go visit other islands that are more attractive, that offer them more. Java island, PHP island, Node.js island and some people, whom we don’t speak about, Python island.

The Perl people are very good at what they do, they have plenty of experience, years and years of it, you can basically put Senior Senior in their job title. And that’s great. Trouble is, only a few of them are newbies, developers with less than 3 or 5 years of (experience) life on Perl island (from the preliminary survey data). And that’s where the going gets tough. Because if only a few new people come to Perl island, its community will  slowly fade and the island will become deserted.

So what do we do? Do we build a boat?

Maybe something bigger?

That looks rather unsafe.

We need something more like this.

Much better. We need people to get on the boat and to come to Perl island. And we need them to stay. No, we need them to want to stay. We need to build a nice hotel on the island.

No, not this, something more like so.

perl island resort.png

In an earlier article I listed 7 features that I would like to have in Perl 5, alongside them there are plenty others that would help us build a very nice “hotel” on Perl island and attract new visitors that might become permanent residents.

Young developers will check out hot languages and established languages and Perl should be on their radar. Very few will settle with just one, most of us work on at least a few technologies. But to get them to try out the Perl island we need to have that nice boat and nice hotel to bring them in. Perl 5 is fast and easy to learn, something very important for new developers with a gradual learning curve. It gives you freedom because of TIMTOWTDI. But other islands also have very attractive features, so how do we keep developers on Perl island (once/if we do get them here)?

Is Perl 6 the answer? Is Perl 6 our nice hotel and boat? And if so, how will it bring new developers to Perl in time (not on Christmas)?

Leave a comment


    Thats great and neat but theres just a tad little problem: this article will be mostly read by the people on the island And what youre expressing is an issue that Ive worked on for quite a few years with a single conclusionthe question that begs an answer is why dont people come to the island Its because of that lack of boats and hotels that people dont come to the island Because Perl is not sexy or has done nothing sexy Because current islanders like their leaky bots and toolshed hotels Survival of the fittest and of the most adaptable Such is life

    Perl 5 is fast and easy to learn something very important for new developers with a gradual learning curve As someone who had to learn and use Perl 5 professionally I found Perl 5 to be the most difficult language that I have ever learned Prior to using Perl 5 I had experience with Python Javascript and Clojure After learning Perl 5 I learned Java and C I have also dabbled in F OCaml and J APL so you at least know that I wont criticize sigils At the beginning Perl 5 presented many concepts that needed to be understood simply to do common things like creating a nested data structure getting the arguments of a function getting the length of a list or creating an object As I continued to use Perl 5 professionally I ran into more fundamental problems For instance dealing with JSON is a pain since Perl doesnt really have the concept of a variable having a type of string or float IIRC the JSON module ends up encoding the variable via the last way that it had been accessed string or numeric context Trying to perform asynchronous programming requires divining which event loop will remain supported and also embraced by the community While the async situation in Python isnt 100 awesome at least they are working on it at the syntactic level Unlike the learning curve involved as a beginner these are fundamentally problems with the language itself As such I have substantial difficulty recommending Perl to beginners It lacks the vibrant community that it once had in the era of CPAN Its unlikely to be found in any green field development although learning the basics for handling legacy systems is not a bad idea But for beginners who are already facing many challenges in learning to program its difficult to champion any future career benefits of Perl compared to its competition I think that Perl 6 is a very interesting language but it still needs a lot of work If the Perl community wants to remain relevant for peoples careers or even their side projects it needs to look at how other recentlycreated languages have become successful and continue to be successful Without that it will not be able to attract the mass of programmers required to bootstrap an ecosystem

    Perl 6 was once part of the Perl island but it long ago broke off into its own island with its own features though it may sound similar at first in the brochure Whether people are drawn to that doesnt really affect Perl 5 and vice versa except by unfortunate name association

Subscribe to our newsletter!

Make sure you never miss the interesting stories of Perl startups, apps and projects.