I find myself seeing some immediate and excellent historical examples in Dr. Ibram X. Kendi‘s book Stamped from the Beginning. In chapter nine of the book he discusses the variety and flavors of racism espoused by Thomas Jefferson in his book Notes on the State of Virginia (1785), which would become the most consumed American nonfiction book until well into the mid-nineteenth century.
Shortly afterward Samuel Stanhope Smith countered portions of Jefferson’s racist ideas in the 1787 annual oration to the august American Philosophical Society. This annual lecture was already one of the most heralded scholarly lectures in America and was attended by the wealthy and elite leaders and thinkers in the country. The lecture would be published as the influential Essay on the Causes of Variety of Complexion and Figure in the Human Species.
Samuel Stanhope Smith joined those preeminent intellectuals in Boston’s American Academy of Arts and Sciences and Philadelphia’s American Philosophical Society in attacking polygenesists, in reviving climate theory in America. His scholarly defense of scripture was quickly printed in Philadelphia, in London, and in Lord Kames’s back-yard, Edinburgh. By the time he sat down in Princeton’s presidential chair in 1795, he had amassed an international scholarly reputation.
So in just a few pages Kendi lays out some serious evidence of the direct spread of a wide variety of racist ideas by not only by the academic elite, but the leaders of multiple influential universities and scientific and philosophical institutions in America. The reverberating echos of these wrongs are still haunting us today. They still need to be addressed and righted. We need to use our moral alembic and distill these racist ideas out of science in America.
Lest one wonder about the influence of Samuel Stanhope Smith’s essay, I’ll note that Noah Webster cited Smith directly in Webster’s 1828 Dictionary in the definition of philosophy. The citation was from Smith’s second edition of his Essay on the Causes of Variety of Complexion and Figure in the Human Species (1810). The quote as given: “True religion, and true philosophy must ultimately arrive at the same principle.”
We’re obviously still seeking both true religion and true philosophy.
While you’re thinking about #shutdownSTEM on June 10th and long thereafter, I recommend you spend some time sitting with the ideas that have been handed down to us and question them closely, for this is what science and philosophy are all about. If you find you can’t do that hard work–and it is hard, then perhaps read a bit of Dr. Kendi’s excellent and ardent text Stamped from the Beginning.
Webmention is a relatively recent web standard (or W3C recommendation) that allows notifications when one website mentions a URL on another website. Think of it like @mentions on social platforms, but instead of just working within a particular website from one account to another, they work across websites. Your website can now @mention my website!
For those who are interested in delving deeper into the idea and its implications, I’ve written a primer in the past : Webmentions: Enabling Better Communication on the Internet.
The goal is for other websites to be able to reference content in my TiddlyWiki website, and if those websites support sending the notifications as either webmentions (or the older pingbacks), I’ll get a notification that my content was referenced elsewhere on the web. This is just the beginning of allowing two way communication between websites.
My exploration today is how to quickly get these up and running on a public TiddlyWiki instance. The public part is important because webmentions won’t work for non-public URLs which includes private TiddlyWikis. If you’re wondering how to self-host a TiddlyWiki on your own domain, I’ve recently written up a tutorial for doing just that. At the end of this article, I’ll make a few notes about how one might use webmentions, particularly in a TiddlyWiki ecosystem.
Here I’m going to focus on using a third party service to do all of the heavy lifting and code our behalf. It’s relatively common, especially in the static website space, for websites to rely on third party or publisher services to either send or receive Webmentions on their behalf. Given my current knowledge of TiddlyWiki and how its internals work and my knowledge of Webmention services, I thought it would be quickest and easiest to look at using the Webmention.io service to handle receiving these @mentions from other sites on my behalf.
While this article may seem long, I’m hoping it’s detailed enough for those who are code averse to follow the recipe and do this themselves. If you can create a Tiddler, cut and paste some text, and follow the tutorial you won’t need to know anything about code. I did the entire thing myself in about five minutes from start to finish.
As a quick overview, we’re going to cut and paste a few lines of code into a special tiddler of our TiddlyWiki based website. This will allow us to do two things:
We’ll then rely on the Webmention.io dashboard to show us our notifications or received webmentions.
Webmention.io requires you to log in with your domain name/URL and relies on you being able to authenticate yourself using it. Since I’m not aware of an IndieAuth or equivalent mechanism for using TiddlyWiki to log into Webmention.io, the quickest method to accomplish this is to rely on RelMeAuth using IndieAuth.com to log into Webmention.io using either a Twitter or GitHub account. From a non-technical perspective, we’ll be using either our Twitter or GitHub account and it’s OAuth2 security to log into the service.
First we want to put a link to our public TiddlyWiki website into the website field on either Twitter or GitHub using the profile settings of one of those services. Here’s what mine looks like on GitHub:
Next we want to place a corresponding link to the relevant service into the
<head> of our TiddlyWiki site using one (it’s okay to use both) of the the following lines of code:
<link rel="me" href="https://twitter.com/username" />
<link rel="me" href="https://github.com/username" />
where you will replace the
username in these links with the respective usernames of your accounts. (I’ll note that you don’t need to do this for both accounts, you can use either Twitter or GitHub.)
Then cut and paste one or both of these links as appropriate into this tiddler and save it (and your TiddlyWiki).
You should now be able to go to webmention.io and enter the URL for your TiddlyWiki into the web sign in box and click “sign in”. The service will parse your website’s page, find the link to either Twitter or GitHub and present you with the appropriate sign in button for one or both of those services. Click on the button for your chosen service. IndieAuth.com will then take you to that service to log into it, or, if you’re already logged in, it will take you back to webmention.io to your new account.
Within webmention.io you can now go to the “settings” page which will give you two more links which are your webmention and pingback endpoints. They will look something like this:
<link rel="webmention" href="https://webmention.io/example.com/webmention" />
<link rel="pingback" href="https://webmention.io/example.com/xmlrpc" />
example.com will be replaced with the URL for your website.
Now you should cut and paste these two
<link>s into the same tiddler you created above: $:/plugins/indieweb/core/rawMarkup. Now save the Tiddler and your TiddlyWiki. (Be sure to leave the previous links in case you need to log back into webmention.io in the future.)
That hopefully wasn’t too hard.
But what does this do? When another website links to your website and sends you a notification, the code on your page will delegate the receipt of the webmention to webmention.io which will verify that the sending site has your URL on a publicly viewable page (this helps to cut down on spam problems that pingbacks used to have). It will then store the notification for you.
If you need a reminder to check them occasionally, maybe you could add a Tiddler with the link to your dashboard to appear on your wiki when you open it next.
Perhaps in a future tutorial I’ll delve into the specifics of actually showing these mentions directly within your TiddlyWiki on the Tiddlers to which they relate.
Some may notice that I’ve put a small Webmention badge into the footer of my TiddlyWiki site to visually indicate to human readers that the site accepts webmentions. You can optionally do this for fun if you’d like.
What’s interesting about supporting Webmention, particularly from a TiddlyWiki perspective, is that if my TiddlyWiki is notified of mentions of it from outside sources, I can quickly cut and paste those responses directly into my Wiki pages in a pseudo-comment section similar to the comments section on this post which could serve as a model. If those mentions of a particular Tiddler are from other TiddlyWikis, I could also choose to drag-and-drop (or import) them into my TiddlyWiki!
If I want to go a step further, I could transclude those imported Tiddlers into the Tiddler that they’re in reference to. Perhaps I might do this under a heading of “@mentions” or perhaps “Comments” and suddenly I’ve got a way of displaying two-way conversations on my own TiddlyWiki site.
As is mentioned in Kicks Condor’s post about Hyperchat Modality, one could potentially use custom theming information (cleverly named “whostyles” in that post) from imported Tiddlers (or themes from other platforms) to identify the web identities of the sites they’re received from. I’ll also mention Kicks’ post about Hypertexting which is related and forms an interesting melange of websites, blogs, wikis, and hypertext of all kinds to form a more interesting web medium.
For the broader information collecting and building or academic communities (and here I can’t help thinking about the Open Educational Resources space that uses Creative Commons licensing to build their teaching resources), one could use these webmentions as a means of notifying sites that their content has been used, changed, or updated (typically those using Creative Commons will credit their source using a link). Then the receiver of the notification could optionally add to or change their version or even just collect the changes. This becomes particularly useful when the Tiddlers can be easily dragged and dropped between TiddyWikis!
As an explicit example, imagine a professor who wanted to build a textbook anthology, but who could do so by dragging and dropping a variety of Tiddlers from one site to another to create a quick textbook or reader for their students. This idea is particularly exciting to me when combined with the idea behind TW5-powered ebooks!
What could you imagine doing with webmention notifications on your TiddlyWiki site?