I’m busy this week host­ing my par­ents’ first vis­it to Houston, but I didn’t want to let this Tuesday go by with­out link­ing to my talk from last week’s Ephemeral Miniconf. Thanks so much to Thibault Duponchelle for orga­niz­ing such a ter­rif­ic event, to all the oth­er speak­ers for com­ing togeth­er to present, and to every­one who attend­ed for wel­com­ing me.

Look, I get it. You don’t like the Perl pro­gram­ming lan­guage or have oth­er­wise dis­re­gard­ed it as dead.” (Or per­haps you haven’t, in which case please check out my oth­er blog posts!) It has weird noisy syn­tax, mix­ing reg­u­lar expres­sions, sig­ils on vari­able names, var­i­ous braces and brack­ets for data struc­tures, and a menagerie of cryp­tic spe­cial vari­ables. It’s old: 34 years in December, with a his­to­ry of (some­times ama­teur) devel­op­ers that have used and abused that syn­tax to ship code of ques­tion­able qual­i­ty. Maybe you grudg­ing­ly accept its util­i­ty but think it should die grace­ful­ly, main­tained only to run lega­cy applications.

But you know what? Perl’s still going. It’s had a steady cadence of year­ly releas­es for the past decade, intro­duc­ing new fea­tures and fenc­ing in bad behav­ior while main­tain­ing an admirable lev­el of back­ward com­pat­i­bil­i­ty. Yes, there was a too-​long adven­ture devel­op­ing what start­ed as Perl 6, but that lan­guage now has its own iden­ti­ty as Raku and even has facil­i­ties for mix­ing Perl with its native code or vice versa.

And then there’s CPAN, the Comprehensive Perl Archive Network: a continually-​updated col­lec­tion of over 200,000 open-​source mod­ules writ­ten by over 14,000 authors, the best of which are well-​tested and ‑doc­u­ment­ed (apply­ing peer pres­sure to those that fall short), pre­sent­ed through a search engine and front-​end built by scores of con­trib­u­tors. Through CPAN you can find dis­tri­b­u­tions for things like:

All of this is avail­able through a mature instal­la­tion tool­chain that doesn’t break from month to month.

Finally and most impor­tant­ly, there’s the glob­al Perl com­mu­ni­ty. The COVID-​19 pan­dem­ic has put a damper on the hun­dreds of glob­al Perl Mongers groups’ mee­tups, but that hasn’t stopped the year­ly Perl and Raku Conference from meet­ing vir­tu­al­ly. (In the past there have also been year­ly European and Asian con­fer­ences, occa­sion­al for­ays into South America and Russia, as well as hackathons and work­shops world­wide.) There are IRC servers and chan­nels for chat, mail­ing lists galore, blogs (yes, apart from this one), and a quirky social net­work that pre­dates Facebook and Twitter.

So no, Perl isn’t dead or even dying, but if you don’t like it and favor some­thing new­er, that’s OK! Technologies can coex­ist on their own mer­its and advo­cates of one don’t have to beat down their con­tem­po­raries to be suc­cess­ful. Perl hap­pens to be battle-​tested (to bor­row a term from my friend Curtis Ovid” Poe), it runs large parts of the Web (speak­ing from direct and ongo­ing expe­ri­ence in the host­ing busi­ness here), and it’s still evolv­ing to meet the needs of its users.

The DZone tech pub­lish­ing site select­ed me as their Editors’ Pick Contributor of the Month for June 2021! Here’s my (bless­ed­ly brief) accep­tance speech dur­ing their month­ly awards ceremony.

Unfortunately, they’ve just start­ed to de-​prioritize con­tent syn­di­cat­ed from else­where due to Google not index­ing it. Since every arti­cle has to go through a mod­er­a­tion and edit­ing process, this means that I may not be able to ful­fill my promise to post new Perl con­tent there every week. You can still find it here on phoenixtrap.com, of course. ☺️

black and white laptop

The fol­low­ing is adapt­ed from my light­ning talk Blogging Outside the Bubble” at last week’s Perl and Raku Conference in the Cloud 2021. You can watch the pre­sen­ta­tion and down­load the slides here. Also, a tip: most of this applies to any­one who wants to start a blog.

Let’s say you’re a Perl devel­op­er dis­traught at the con­tin­ued decline in usage and mind­share of your favorite language.

You know that you do good work and that your tools and tech­niques are sound, but the world out­side of Perl-​specific forums, soft­ware archives, social media groups, and IRC chan­nels regards it as anti­quat­ed, out-​of-​date, or worse, that IT epi­thet lega­cy. (And the new­er devel­op­ers haven’t even heard of IRC!)

Let’s say you’re wor­ried about your pro­fes­sion­al prospects both at your cur­rent employ­er and with pos­si­ble future employ­ers. Even though you know or can eas­i­ly be trained in oth­er lan­guages, Perl is still your favorite.

Let’s say you’re me.

What do you do?

Step 1: Get a blog

There are two basic types of blogs: stan­dard­ized for­mat and cus­tomiz­able. If you’re just start­ing and you want to spend more time writ­ing and less time fid­dling with tem­plates and soft­ware, choose stan­dard­ized. Here are some sites that enable you to pub­lish your work while get­ting out of your way and that have developer-​centric com­mu­ni­ties. Pick one and set up an account:

If you want more cus­tomiza­tion options, you could try:

  • WordPress.com (host­ed, but lets you change some things around)
  • GitHub Pages (good if you’re already used to col­lab­o­ra­tive soft­ware devel­op­ment there, but requires more set­up includ­ing blog gen­er­a­tion software)
  • Or your pre­ferred host­ing provider — look for ready-​to-​go blog­ging apps like WordPress

What did I choose? I set up WordPress on a shared plan at HostGator (full dis­clo­sure: I work there). They also offer easy man­aged WordPress host­ing for a bit more, but I like to tinker.

And yes, the WordPress soft­ware is based on PHP. Don’t sweat that it’s not Perl. PHP does­n’t have to lose” for Perl to win.”

Step 2: Write

Finding a top­ic to write about can seem hard, but it does­n’t have to be. The Perl (and Raku) Weekly Challenge pub­lish­es two new pro­gram­ming chal­lenges every week. Work on those and pub­lish your solu­tion along with commentary.

Or write about what­ev­er you’re work­ing on or would like to work on. Write about your favorite Perl mod­ule or fea­ture. It does­n’t mat­ter if some­one else wrote about it; you have a unique perspective.

Coming up with a pithy title for your posts may be hard­er — you want to be click­bait-y but hon­est, and you want to men­tion Perl so that search engines asso­ciate your posts with the topic.

The impor­tant thing to do is write some­thing. And length does­n’t mat­ter; one or two para­graphs is fine.

Step 3: Promote

Here’s the bad news: no one is going to find your blog posts on their own. You need to put them in front of read­ers where they already are.

This means post­ing links on social net­works like Twitter, Facebook, and LinkedIn. It means dis­cus­sion groups and #hash­tags (like #perl, #programming, #webdev, etc.) on those social net­works. It means news forums like Reddit and Hacker News. And it means post­ing inside and out­side of Perl-​specific groups. Here are a cou­ple of exam­ples of the latter:

This social pro­mo­tion might get tedious after a while, so look into plu­g­ins for your blog­ging plat­form and ser­vices like IFTTT and Zapier that will mon­i­tor your blog’s news feed and auto­mat­i­cal­ly post on your behalf.

Also, remem­ber when I said above that there were blog­ging sites with developer-​centric com­mu­ni­ties? Even if your main blog isn’t on one of them, set up accounts and cross-​post. I repost my arti­cles on Dev.to, DZone, and Medium; all of these offer ways to import posts from your main site. One caveat: their importers don’t seem to be very smart when it comes to source code, so you may need to do a bit of edit­ing and refor­mat­ting after import.

Lastly, I would be remiss if I did­n’t men­tion the Perl Weekly newslet­ter. Every Monday a fresh batch of Perl con­tent is sent to peo­ple’s inbox­es and you could be part of it. Contact edi­tor Gábor Szabó about pub­lish­ing links to your new blog.

Step 4: Repeat

Remember that con­sis­ten­cy builds trust from your audi­ence. Make time to write reg­u­lar­ly and pub­lish posts as often as you can man­age. I set a goal to pub­lish at least once a week and have kept up this pace since January of this year. You can often find new top­ics as you mon­i­tor and par­tic­i­pate in the social forums in which you’re pro­mot­ing your blog, espe­cial­ly in the com­ments. Even neg­a­tive com­ments can dri­ve new topics.

Did this arti­cle inspire you to start a blog? Do you have more ques­tions? Let me know in the com­ments below!

Just gave a five-​minute light­ning talk about blog­ging at The Perl and Raku Conference in the Cloud 2021. Here are the slides as a PDF.

Update

The con­fer­ence YouTube chan­nel post­ed the video of my talk (see below). I still need to get con­trol of my um“s and ah“s.