Over the past several weeks I’ve been thinking more and more about productivity solutions, bullet journals, and to do lists. This morning I serendipitously came back across a reply Paul Jacobson made about lab books on a post relating to bullet journals and thought I’d sketch out a few ideas.
I’m honestly a bit surprised that no one has created a bullet journal plugin for WordPress yet. Or maybe someone comes up with a bullet journal stand alone product a bit like Autommatic’s Simple Note? Last week after a talk I attended, someone came up to me who had self-published 400+ copies of a custom made bullet journal that they wanted to sell/market. I’ve also been looking at some bullet journal apps, but my very first thoughts were “Who owns this data? What will they do with it? What happens if the company goes out of business? Is there a useful data export functionality?” For one of the ones I looked at my immediate impression was “This is a really painful and unintuitive UI.”
Naturally my next thought was “how would the IndieWeb build such a thing?”
Perhaps there’s a lot of code to write, though I can imagine that simply creating Archive views of pre-existing data may be a good first start. In fact some good archive views would be particularly helpful if one is using a plugin like David Shanske’s Post Kinds which dramatically extends the idea behind Post Formats. This would make tracking things like eating, drinking, reading, etc. a lot easier to present visually as well as to track/journal. One could easily extend the functionality of Post Kinds to create “to do” items and then have archive views that could be sorted by date, date due, tags/categories for easier daily use. Since it’s all web-based, it’s backed up and available almost everywhere including desktop and mobile.
I know a few people like Jonathan LaCour and Eddie Hinkle have been tinkering around with monthly, weekly, or annual recaps on their websites (see also: https://indieweb.org/monthly_recap). Isn’t this what a lot of bullet journals are doing, but in reverse order? You put in data quickly so you can have an overview to better plan and live in the future? If you’re already using Micropub tools like teacup (for food/drink), OwnYourSwarm (for location), or a variety of others for bookmarking things (which could be added to one’s to-do list), then creating a handful of bullet journal-type views on that data should be fairly easy. I also remember that Beau Lebens had his Keyring project for WordPress that was pulling in a lot of data from various places that could be leveraged in much the same way.
I started thinking about some of this ages ago when I prototyped making “itches” for my own website. And isn’t this just a public-facing to-do list? I don’t immediately see a to-do list entry on the IndieWeb wiki though I know that people have talked about it in the past. There’s also definitely no bullet journal or productivity entries, but that doesn’t mean we couldn’t build them.
There are a lot of preexisting silos on the web that do to-do lists or which have productivity related personal data (Google notes, Evernote, Microsoft OneNote, etc.), so there are definitely many UI examples of good and bad display. For distributed group task management I could easily see things being marked done or undone and webmentions handling notifications for these. I suspect for this to take off on a wide, distributed scale for company-wide project management however, more work would need to exist on the ideas of audience and private or semi-private posts. The smaller personal side is certainly much more easily handled.
As another useful sub-case for study, I’ll note that several within the IndieWeb are able to post issues on their own websites, syndicate to GitHub’s issue queue, and get replies back, and isn’t this just a simple example workflow of a to-do list as well?
Greg McVerry has also mentioned he’s tinkered around in this area before primarily using pre-existing functionality in WithKnown. In his case, he’s been utilizing the related idea of the Pomodoro Technique which is widely known in productivity circles.
I’d be thrilled to hear ideas, thoughts, additional brainstorming, or even prior art examples of this sort of stuff. Feel free to add your thoughts below.
Editor’s note: This is a copy of an article that was originally published on A List Apart.
Over 1 million Webmentions will have been sent across the internet since the specification was made a full Recommendation by the W3C—the standards body that guides the direction of the web—in early January 2017. That number is rising rapidly, and in the last few weeks I’ve seen a growing volume of chatter on social media and the blogosphere about these new “mentions” and the people implementing them.
So what are Webmentions and why should we care?
While the technical specification published by the W3C may seem incomprehensible to most, it’s actually a straightforward and extremely useful concept with a relatively simple implementation. Webmentions help to break down some of the artificial walls being built within the internet and so help create a more open and decentralized web. There is also an expanding list of major web platforms already supporting Webmentions either natively or with easy-to-use plugins (more on this later).
Put simply, Webmention is a (now) standardized protocol that enables one website address (URL) to notify another website address that the former contains a reference to the latter. It also allows the latter to verify the authenticity of the reference and include its own corresponding reference in a reciprocal way. In order to understand what a big step forward this is, a little history is needed.
The rise of @mentions
By now most people are familiar with the ubiquitous use of the “@” symbol in front of a username, which originated on Twitter and became known as @mentions and @replies (read “at mentions” and “at replies”). For the vast majority, this is the way that one user communicates with other users on the platform, and over the past decade these @mentions, with their corresponding notification to the receiver, have become a relatively standard way of communicating on the internet.
I been smashed the idea of that album even existing. I got joints to roll @kanyewest
Many other services also use this type of internal notification to indicate to other users that they have been referenced directly or tagged in a post or photograph. Facebook allows it, so does Instagram. Google+ has a variant that uses + instead of @, and even the long-form article platform Medium, whose founder Ev Williams also co-founded Twitter, quickly joined the @mentions party.
The biggest communications problem on the internet
If you use Twitter, your friend Alice only uses Facebook, your friend Bob only uses his blog on WordPress, and your pal Chuck is over on Medium, it’s impossible for any one of you to @mention another. You’re all on different and competing platforms, none of which interoperate to send these mentions or notifications of them. The only way to communicate in this way is if you all join the same social media platforms, resulting in the average person being signed up to multiple services just to stay in touch with all their friends and acquaintances.
Given the issues of privacy and identity protection, different use cases, the burden of additional usernames and passwords, and the time involved, many people don’t want to do this. Possibly worst of all, your personal identity on the internet can end up fragmented like a Horcrux across multiple websites over which you have little, if any, control.
Imagine if AT&T customers could only speak to other AT&T customers and needed a separate phone, account, and phone number to speak to friends and family on Verizon. And still another to talk to friends on Sprint or T-Mobile. The massive benefit of the telephone system is that if you have a telephone and service (from any one of hundreds or even thousands of providers worldwide), you can potentially reach anyone else using the network. Surely, with a basic architecture based on simple standards, links, and interconnections, the same should apply to the internet?
The solution? Enter Webmentions!
As mentioned earlier, Webmentions allow notifications between web addresses. If both sites are set up to send and receive them, the system works like this:
Alice has a website where she writes an article about her rocket engine hobby.
Bob has his own website where he writes a reply to Alice’s article. Within his reply, Bob includes the permalink URL of Alice’s article.
When Bob publishes his reply, his publishing software automatically notifies Alice’s server that her post has been linked to by the URL of Bob’s reply.
Alice’s publishing software verifies that Bob’s post actually contains a link to her post and then (optionally) includes information about Bob’s post on her site; for example, displaying it as a comment.
A Webmention is simply an @mention that works from one website to another!
If she chooses, Alice can include the full text of Bob’s reply—along with his name, photo, and his article’s URL (presuming he’s made these available)—as a comment on her original post. Any new readers of Alice’s article can then see Bob’s reply underneath it. Each can carry on a full conversation from their own websites and in both cases display (if they wish) the full context and content.
User behaviors with Webmentions are a little different than they are with @mentions on Twitter and the like in that they work between websites in addition to within a particular website. They enable authors (of both the original content and the responses) to own the content, allowing them to keep a record on the web page where it originated, whether that’s a website they own or the third-party platform from which they chose to send it.
Interaction examples with Webmention
Webmentions certainly aren’t limited to creating or displaying “traditional” comments or replies. With the use of simple semantic microformats classes and a variety of parsers written in numerous languages, one can explicitly post bookmarks, likes, favorites, RSVPs, check-ins, listens, follows, reads, reviews, issues, edits, and even purchases. The result? Richer connections and interactions with other content on the web and a genuine two-way conversation instead of a mass of unidirectional links. We’ll take a look at some examples, but you can find more on the IndieWeb wiki page for Webmention alongside some other useful resources.
With Webmention support, one could architect a site to allow inline marginalia and highlighting similar to Medium.com’s relatively well-known functionality. With the clever use of URL fragments, which are well supported in major browsers, there are already examples of people who use Webmentions to display word-, sentence-, or paragraph-level marginalia on their sites. After all, aren’t inline annotations just a more targeted version of comments?
As another example, and something that could profoundly impact the online news business, I might post a link on my website indicating I’ve read a particular article on, say, The New York Times. My site sends a “read” Webmention to the article, where a facepile or counter showing the number of read Webmentions received could be implemented. Because of the simplified two-way link between the two web pages, there is now auditable proof of interaction with the content. This could similarly work with microinteractions such as likes, favorites, bookmarks, and reposts, resulting in a clearer representation of the particular types of interaction a piece of content has received. Compared to an array of nebulous social media mini-badges that provide only basic counters, this is a potentially more valuable indicator of a post’s popularity, reach, and ultimate impact.
Building on the idea of using reads, one could extend Webmentions to the podcasting or online music sectors. Many platforms are reasonably good at providing download numbers for podcasts, but it is far more difficult to track the number of actual listens. This can have a profound effect on the advertising market that supports many podcasts. People can post about what they’re actively listening to (either on their personal websites or via podcast apps that could report the percentage of the episode listened to) and send “listen” Webmentions to pages for podcasts or other audio content. These could then be aggregated for demographics on the back end or even shown on the particular episode’s page as social proof of the podcast’s popularity.
Websites selling products or services could also accept review-based Webmentions that include star-based ratings scales as well as written comments with photos, audio, or even video. Because Webmentions are a two-way protocol, the reverse link to the original provides an auditable path to the reviewer and the opportunity to assess how trustworthy their review may be. Of course, third-party trusted sites might also accept these reviews, so that the receiving sites can’t easily cherry-pick only positive reviews for display. And because the Webmention specification includes the functionality for editing or deletion, the original author has the option to update or remove their reviews at any time.
If you’re working with WordPress, there’s a simple Webmention plugin that will allow you to begin using Webmentions—just download and activate it. (For additional functionality when displaying Webmentions, there’s also the recommended Semantic Linkbacks plugin.) Other CMSs like Drupal, ProcessWire, Elgg, Nucleus CMS, Craft, Django, and Kirby also have plugins that support the standard. A wide variety of static site generators, like Hugo and Jekyll, have solutions for Webmention technology as well. More are certainly coming.
A weak form of Webmention support can be bootstrapped for Tumblr, WordPress.com, Blogger, and Medium with help from the free Bridgy service, but the user interface and display would obviously be better if they were supported fully and natively.
As a last resort, if you’re using Tumblr, WordPress.com, Wix, Squarespace, Ghost, Joomla, Magento, or any of the other systems without Webmention, file tickets asking them to support the standard. It only takes a few days of work for a reasonably experienced developer to build support, and it substantially improves the value of the platform for its users. It also makes them first-class decentralized internet citizens.
Webmentions for developers
If you’re a developer or a company able to hire a developer, it is relatively straightforward to build Webmentions into your CMS or project, even potentially open-sourcing the solution as a plugin for others. For anyone familiar with the old specifications for pingback or trackback, you can think of Webmentions as a major iteration of those systems, but with easier implementation and testing, improved performance and display capabilities, and decreased spam vulnerabilities. Because the specification supports editing and deleting Webmentions, it provides individuals with more direct control of their data, which is important in light of new laws like GDPR.
In addition to reading the specification, as mentioned previously, there are multiple open source implementations already written in a variety of languages that you can use directly, or as examples. There are also a test suite and pre-built services like Webmention.io, Telegraph, mention-tech, and webmention.herokuapp.com that can be quickly leveraged.
Maybe your company allows employees to spend 20% of their time on non-specific projects, as Google does. If so, I’d encourage you to take the opportunity to fbuild Webmentions support for one or more platforms—let’s spread the love and democratize communication on the web as fast as we can!
And if you already have a major social platform but don’t want to completely open up to sending and receiving Webmentions, consider using Webmention functionality as a simple post API. I could easily see services like Twitter, Mastodon, or Google+ supporting the receiving of Webmentions, combined with a simple parsing mechanism to allow Webmention senders to publish syndicated content on their platform. There are already several services like IndieNews, with Hacker News-like functionality, that allow posting to them via Webmention.
If you have problems or questions, I’d recommend joining the IndieWeb chat room online via IRC, web interface, Slack, or Matrix to gain access to further hints, pointers, and resources for implementing a particular Webmention solution.
The expansion of Webmentions
The big question many will now have is Will the traditional social media walled gardens like Facebook, Twitter, Instagram, and the like support the Webmention specification?
At present, they don’t, and many may never do so. After all, locking you into their services is enabling them to leverage your content and your interactions to generate income. However, I suspect that if one of the major social platforms enabled sending/receiving Webmentions, it would dramatically disrupt the entire social space.
In the meantime, if your site already has Webmentions enabled, then congratulations on joining the next revolution in web communication! Just make sure you advertise the fact by using a button or badge. You can download a copy here.
About the Author
Chris Aldrich is developer and researcher who lives in Los Angeles. When not working on the abstract mathematics of digital communication, he tinkers on the web. An active member of the IndieWeb community, he enjoys replacing his dependency on social silos with his website which doubles as his commonplace book.
In this episode, David Shanske and Chris Aldrich discuss how the Post Kinds plugin mapped IndieWeb types of posts to WordPress and why, the defined as opposed to implied types set up, and avatars.
While the conversation is WordPress-centric, there are a lot of discussions here relevant to a broader IndieWeb audience about adding new types of posts to your site, trying to design things flexibly (although a developer’s guide is probably needed), etc.