Close-up photograph of an onion slice.

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.

Share or reply to this post on Twitter!


Next post: I am playing This is the Police

Previous post: The stories of Ashrind’s stickers


Responses from around the web...

Likes

C. JAmes Collier avatar
Joel Berger avatar
Iain Merrick avatar
Sean Gregory avatar
Joe Johnston avatar
Chris Aldrich avatar
Tamarou LLC avatar
Marty McGuire avatar

Reposts

Joe Johnston avatar
Tamarou LLC avatar

Replies and mentions

Matt S Trout

This is fascinating and well worth a look. Shall have to try and remember to RT the post talking more about indieweb in general once jmac finds the CFT to write it.

Jason McIntosh

My admittedly somewhat agitative article about IndieWeb received some excellent critique from that community's core constituency.

Jason McIntosh

IndieWeb has created keys to a better, more democratic web for everyone. They need to get organized before they can start really effecting change.

Peter Stuifzand

Fogknife : Announcing two new IndieWeb modules for Perl (3 minute read)

Jason McIntosh

Notes and thoughts from the eighth annual IndieWeb conference, held in Portland, Oregon.

Suggest a new mention

If a page elsewhere on the web responds to or otherwise mentions this post, you may provide its URL here.