You have just read a blog post written by Jason McIntosh. If you enjoyed it, please anonymously acknowledge your visit by tapping the little star button underneath it.
Thank you kindly for your time and attention today.
I’m pleased to announce two new open-source code libraries for the Perl 5 programming language, my first contributions to the CPAN in well over a decade. They represent a significant milestone in a side-project I’ve quietly but obsessively pursued for the last couple of months, some effects of which have become immediately visible on this blog.
Getting the nitty-gritty out of the way: Web::Microformats2 can parse, query, and serialize HTML documents marked up with Microformats2 metadata. Web::Mention provides a Perl object representation of Webmention-adherent HTTP requests, with methods to verify, determine authorship, and extract content from valid mentions. Both modules are free and open-source, released under the MIT license.
The modules bring to Perl two of the many “building block” concepts espoused by IndieWeb, a relatively small but worldwide community promoting technologies and policies that encourage people to self-host their web-based content. I have a lot of thoughts about the surprisingly impressive and frustratingly obscure IndieWeb movement that I plan to explore in a future post. For now, allow me to describe my specific attractor to it, and how I’ve implemented it for the sake of my own blog.
After I saw it in action on Watts Martin’s blog in February, the particular IndieWeb concept of backfeeds struck me as a killer app, and I knew immediately I wanted it for Fogknife. A website with a backfeed pulls reactions to its content from across the web, sorting them all together and representing them meaningfully on its own pages. This felt like an obvious next direction to move in after my brief experiment with Disqus and my subsequent and somewhat more successful use of posts aware of their own Twitter-links.
Starting a couple of days ago, Fogknife began running on an experimental and unreleased branch of Plerd. It uses both of my new Perl modules to make backfeeds possible, and you can see a live early example underneath this post about my recent read-through of a new Odyssey translation. All the facepiles and comments come from Twitter reactions to that article. (The bridging step between the suddenly IndieWeb-enabled Fogknife and Twitter, a silo that doesn’t give a hoot about any of this stuff, is the aptly named Bridgy service run by Ryan Barrett and Kyle Mahan.)
I consider these modules unstable and fragile, and use Fogknife as their live-fire proving grounds — via the Bridgy-fed backfeeds as well as the manual webmention-suggestion form that currently appears under every post. I expect therefore Fogknife’s support for webmentions and backfeeds to start out rather wobbly, but I do plan to continue improving it by increments, with all such improvements carrying over into new releases of the public Perl modules as appropriate.
When everything seems reasonably stable, I’ll follow up with an official Plerd release so that other bloggers may squeeze similar magic from my humble little publishing platform. Until then, I hope that the rather nerdier Perl modules will prove interesting to my fellow web-worried programmers.
I’m a weird place with Perl (and so is Perl)A meditation on my relationship with Perl, and Perl's relationship with the world, 20 years after I started using it.
Rejecting the “Post-web era” while embracing The FutureMy response to Nick Montfort's recent article asserting that the era of the open web as the main platform for digital writing has forever passed.
A bit of IndieWeb pushbackMy admittedly somewhat agitative article about IndieWeb received some excellent critique from that community's core constituency.
Looking back at my 2010sHaving arrived at the concluding day of a year that ends in “9”, I can’t not take stock.
I read Mojolicious Web ClientsThoughts on the new book by brian d foy about the Mojolicious web toolkit, and about Mojo's role in the Perl ecosystem.
If a page elsewhere on the web responds to or otherwise mentions this post, you may provide its URL here.