Summary: Our first episode since January. David Shanske and Chris Aldrich get caught up on some recent IndieWebCamps, an article about IndieWeb in The New Yorker, changes within WordPress, and upcoming events.
We used to control our online identities, content, and experience. We now share Twitter names instead of domains; even web developers tweet and post on Medium instead of their own sites. We scroll social media and feel empty instead of reading news & blogs to feel informed and connected. Algorithmic feeds amplify rage & conspiracies, enabling tribal ad-targeting to polarise and spread misinformation, threatening democracy itself.
What happened? And what are we doing to fix it?
That's a big question that will require all of us, our communities, our employers, to shift. I don't want to wait, and you probably don't either.
What can you do for yourself, today?
Own your domain. Own your content. Own your social connections. Own your reading experience. IndieWeb services, tools, and standards enable you to take back your web.
Dramatically extending a Domain of One’s Own with IndieWeb technology: How to improve your online research notebooks, commonplace books, and digital pedagogy
(This description will be edited and used on the website. Please include 1-2 paragraphs and a list of key takeaways for the audience.)
Having a Domain of One’s Own and using it as a “thought space” to own your online identity and work is just the tip of the iceberg. Can you imagine how useful it would be if you could use your Twitter account to reply to someone on Facebook (without needing a Facebook account) or vice versa? Open web technology from the IndieWeb movement that utilizes simple plugins, modules, or even built-in functionality now exists so that people can now use WordPress, Drupal, WithKnown, Grav and many other content management systems on any domain name to have rich site-to-site communications in a simple and intuitive way. Third party (and often unethical) corporate platforms are no longer needed to have rich interactions between scholars on the web.
It is now easily possible to have a teacher write a post on their own website and their students to easily reply/react to that post on their own websites (along with a useful reply context) and send that reply to the teacher’s website for possible display. Each participant can now own a copy of both sides of the conversation.
Teachers and students will learn how to (individually or together) collect, analyze, write, collaborate, and interact easily online while doing so in a space they own and control without giving away their data to third party platforms.
Researchers can now easily bookmark, highlight, or annotate portions of the web and keep this data (public/private) on their own website (aka digital commonplace book or notebook) for future reference or use.
We’ll show how courseware can be decentralized so that the instructor and the students each own their own pieces of the learning processes and can keep them for as long as they wish.
We will demonstrate how one can use their WordPress-based website with a few simple plugins to own all of the traditional social media types (bookmarks, items read, highlights, annotations, comments/replies, photos, status updates, audio, checkins, etc.) on their own site while still allowing interacting (if desired) with other websites as well as in social spaces like Twitter, Instagram, Swarm, etc.
We will demonstrate a new generation of free feed readers that allow composing in-line responses and reactions that post them directly to one’s own website as well as send notification to the site being read and interacted with.
You can now have the joy of a Domain of Your Own and still easily interact just as if your site were a (better-than) first class social media platform.
More Information About Your Session
(Please describe your session in greater detail for the organizers. You may be more casual in this description as it will not be posted on the website.)
In some sense, this session will be a crash course on using IndieWeb technologies and building-blocks with WordPress in the Education space. I’ll aim to remove a lot of technical jargon and keep coding examples to a bare minimum (if using any at all) so that those with the technical ceiling of downloading and installing a plugin can immediately benefit from the talk. I will also provide enough pointers and describe the broad outlines that developers will have a broad overview of the IndieWeb space to find and extend these plugins and functionality if they wish.
I’ll be covering the basics of new W3C recommendations like Webmention, Micropub, and WebSub along with forthcoming specs like Microsub in combination with IndieAuth (a version of OAuth2 for login). I’ll show how they can be applied to personal websites in research, teaching, collaboration, and other educational domains like creating Open Educational Resources. Many of these can be easily implemented in WordPress with just a handful of simple plugins that allow the web to become the social media platform we all wish it would be.
I’ll use examples from my own personal website and several others (which use Drupal, WithKnown, Grav, etc.) to show how these plugins can be used in educational settings and will walk through a case study of a course built using DoOO and IndieWeb philosophies and technologies (EDU 522: Digital Teaching and Learning at Southern Connecticut State University) on which I collaborated with Dr. Gregory McVerry.
Here’s the description of the book from the publisher:
The world is working exactly as designed. The combustion engine which is destroying our planet’s atmosphere and rapidly making it inhospitable is working exactly as we designed it. Guns, which lead to so much death, work exactly as they’re designed to work. And every time we “improve” their design, they get better at killing. Facebook’s privacy settings, which have outed gay teens to their conservative parents, are working exactly as designed. Their “real names” initiative, which makes it easier for stalkers to re-find their victims, is working exactly as designed. Twitter’s toxicity and lack of civil discourse is working exactly as it’s designed to work.The world is working exactly as designed. And it’s not working very well. Which means we need to do a better job of designing it. Design is a craft with an amazing amount of power. The power to choose. The power to influence. As designers, we need to see ourselves as gatekeepers of what we are bringing into the world, and what we choose not to bring into the world. Design is a craft with responsibility. The responsibility to help create a better world for all. Design is also a craft with a lot of blood on its hands. Every cigarette ad is on us. Every gun is on us. Every ballot that a voter cannot understand is on us. Every time social network’s interface allows a stalker to find their victim, that’s on us. The monsters we unleash into the world will carry your name. This book will make you see that design is a political act. What we choose to design is a political act. Who we choose to work for is a political act. Who we choose to work with is a political act. And, most importantly, the people we’ve excluded from these decisions is the biggest (and stupidest) political act we’ve made as a society.If you’re a designer, this book might make you angry. It should make you angry. But it will also give you the tools you need to make better decisions. You will learn how to evaluate the potential benefits and harm of what you’re working on. You’ll learn how to present your concerns. You’ll learn the importance of building and working with diverse teams who can approach problems from multiple points-of-view. You’ll learn how to make a case using data and good storytelling. You’ll learn to say NO in a way that’ll make people listen. But mostly, this book will fill you with the confidence to do the job the way you always wanted to be able to do it. This book will help you understand your responsibilities.
I suspect that this book will be of particular interest to those in the IndieWeb, A Domain of One’s Own, the EdTech space (and OER), and really just about anyone.
How to participate
I’m open to other potential guidelines and thoughts since this is incredibly experimental at best, but I thought I’d lay out the following broad ideas for how we can generally run the book club and everyone can keep track of the pieces online. Feel free to add your thoughts as responses to this post or add them to the IndieWeb wiki’s page https://indieweb.org/IndieWeb_Book_Club.
Buy the book or get a copy from your local bookstore
Read it along with the group
Post your progress, thoughts, replies/comments, highlights, annotations, reactions, quotes, related bookmarks, podcast or microcast episodes, etc. about the book on your own website on your own domain. If your site doesn’t support any of these natively, just do your best and post simple notes that you can share. In the end, this is about the content and the discussion first and the technology second, but feel free to let it encourage you to improve your own site for doing these things along the way.
Folks can also post on other websites and platforms if they must, but that sort of defeats some of the purpose of the Indie idea, right?
I’ll also try to keep track of entries I’m aware about on my own site as read or bookmark posts which I’ll tag with #IWBCMM (ostensibly for IndieWeb Book Club Mike Monteiro), which we can also use on other social silos for keeping track of the conversation there.
Perhaps as we move along, I’ll look into creating a planet for the club as well as aggregating OPML files of those who create custom feeds for their posts. If I do this it will only be to supplement the aggregation of posts at the stub on indieweb.xyz which should serve as the primary hub for the club’s conversation.
If you don’t already have your own website or domain to participate, feel free to join in on other portions of social media, but perhaps consider jumping into the IndieWeb chat to ask about how to get started to better own your online identity and content.
If you need help putting together your own site, there are many of us out here who can help get you started. I might also recommend using micro.blog which is an inexpensive and simple way to have your own website. I know that Manton Reece has already purchased a copy of the book himself. I hope that he and the rest of the micro.blog community will participate along with us.
If you feel technically challenged, please ping me about your content and participation, and I’m happy to help aggregate your posts to the indieweb.xyz hub on your behalf. Ideally a panoply of people participating on a variety of technical levels and platforms will help us create a better book club (and a better web) for the future.
Of course, if you feel the itch to build pieces of infrastructure into your own website for improved participation, dive right in. Feel free to document what you’re doing both your own website and the IndieWeb wiki so others can take advantage of what you’ve come up with. Also feel free to join in on upcoming Homebrew Website Clubs (either local or virtual) or IndieWebCamps to continue brainstorming and iterating in those spaces as well.
Kickoff and Timeline
I’m syndicating this post to IndieNews for inclusion into next week’s IndieWeb newsletter which will serve as a kickoff notice. That will give folks time to acquire a copy of the book and start reading it. Of course this doesn’t mean that you couldn’t start today.
Share and repost this article with anyone you think might enjoy participating in the meanwhile.
I’ll start reading and take a stab at laying out a rough schedule. If you’re interested in participating, do let me know; we can try to mold the pace to those who actively want to participate.
I’ve already acquired a copy of the book and look forward to reading it along with you.
i could come up with gmail, sieve, etc email filters for people to install that would forward all facebook emails except password resets. or maybe only notification emails. still seems iffy security wise, and awful UX, but...meh?
quick poll time. hey @aaronpk @chrisaldrich @jgmac1106 @grantcodes @dshanske @tantek and others: if you could get facebook backfeed again by setting up an email filter like this, but it'd be somewhat sketchy security wise (discussion above), and might be inconsistent and incomplete, and the bridgy UI might be weak or nonexistent...would you do it? feel free to emoji respond +1 for yes, -1 for no. also feel free to @-mention anyone else who might vote.
I should have outlined this originally… Likely safer (for Bridgy and the end user) would be to follow the model of posting to WordPress via email (or services like Reading.am which allow posting to it via custom email addresses). Bridgy could provide users with a private hashed email address like 123xyzABC@brid.gy which could be linked to their particular account to which they could manually (or automatically) forward the relevant Facebook notification emails. Upon receipt, Bridgy would know which account sent it and could also match it to the user’s post URL as a check before sending the appropriate webmentions.
This would leave Bridgy free from being the potential source for security leaks and put the onus on the end user. You’d naturally need to have the ability to reset/change the user’s hash in the case that they accidentally allowed their custom email address to leak, although generally this isn’t a huge issue as emails which don’t match the user’s account/endpoints would be dropped and not send webmentions in any case. (In some sense it’s roughly equivalent to my being able to visit https://brid.gy/twitter/schnarfed and clicking on the Poll now or Crawl now buttons. It’s doable, but doesn’t give a bad actor much. You’d probably want to rate limit incoming emails to prevent against mass spam or DDoS sort of attacks against Bridgy.)
A side benefit of all of this is that those who have kept their old email notifications could relatively easily get much of their past missing back feed as well. Or if they’re missing back feed for some reason, they could easily get it by re-sending the relevant emails instead of some of the current manual methods. Perhaps allowing preformatted emails with those same manual methods could be used to do back feed for Facebook or other providers as well?
We could also put together some forwarding filters for common platforms like gmail to help people set up autoforwarders with appropriate keywords/data to cut down on the amount of false positive or password containing emails being sent to Bridgy.
The one potential privacy issue to consider(?) is that this set up may mean that Bridgy could be sending webmentions for private messages since users get both private and public message notifications whereas the API distinguished these in the past. To remedy this, the comment URL could be tested to see if/how it renders as a test for public/private prior to sending. Separately, since Bridgy doesn’t need to store or show these messages (for long?), private messages could be sent, but potentially with a payload that allows the receiving end to mark them as private (or to be moderated to use WordPress terminology). This would allow the user’s website to receive the notifications and give them the decision to show or not show them, though this may be a potential moral gray area as they could choose to show responses that the originator meant to be private communication. The API would have prevented this in the past, but this email method could potentially route around that.
2013-04-19: the day the indieweb successfully federated a comment post. The Test Note
It started with Laurent Eschenauer using Storytlr to post a simple note on his site that sent mention pingbacks to Barnaby Walters and Aaron Parecki:
Testing #indieweb federation with @waterpigs.co.uk, @aaronpareck...
I use Hypothes.is regularly as part of my daily workflow. I’m also very interested in being able to “own” the data I generate with the tool and being able to keep it on my own digital commonplace book (aka website). As part of this, I’d like to be able to receive notifications from people publicly annotating, highlighting, and replying to my content and potentially display those directly on either my website in the comments section or as marginalia.
I’d promised to do a quick outline for the kind gang at Hypothes.is to outline how to make their product could be a bit more open and support some additional web standards to make it more IndieWeb friendly as well as to work toward supporting the Webmention protocol to send notifications of annotations on a page. A few weeks ago at IndieWebCamp New Haven I decided to finally sketch out some of the pieces which should be relatively easy for them to implement into the product. Below are some of the recommendations and some examples of what needs to be done to implement them into their platform to allow it to better interact with other content on the web. This post is in reply to a few prior conversations about Webmention, but primarily pertains to Microformats which will help in creating those.    
To my knowledge Hypothes.is generates a hash for each annotation it has in the system and generates two separate, but related URLs for them. As an example, here are the two URLs for a response Jon Udell made on my website recently:
The first URL is where a stand-alone copy of the annotation lives on the web, separate from the content it is related to. The second URL resolves to the page on which the annotation was made and both will automatically open up Hypothesis’ side drawer UI to the annotation in question and will–on most browsers–auto-scroll down the page to show the point at which the annotation was made. Essentially this second URL shows the annotation in-situ in conjunction with the Hypothes.is user interface. I’ll note that they can also have some human readable trailing data in the URL that indicates the site on which the annotation was made like so: https://hyp.is/_tLJyA-cEemE-qPndyfQow/boffosocko.com/?p=55708991. However, in practice, one could remove or replace the boffosocko.com and trailing portion with any other URL and the correct page will still resolve.
Add the appropriate microformats classes on those pages;
Add the canonical URL for the page on which the annotation is in reference to either instead of or in addition to the Hypothes.is prefixed URL which already appears on these pages. Webmention functioning properly will require this canonical URL to exist on the page to be able to send notifications and have them be received properly.
These things would make these pages more easily and usefully parseable on the open web. If/when Hypothes.is may support Webmention (aka web notifications) then all of these prerequisite pieces will already be in place. In the erstwhile, even without Hypothes.is running code to support sending Webmentions, users could force manual Webmentions using services like Telegraph, mention-tech.appspot, or even personal endpoints generated on individual posts (see the one below) or on custom endpoint pages like mine on WordPress. Aaron Parecki’s article Sending your First Webmention from Scratch is a useful tutorial for those with little experience with Microformats or Webmention.
Types of Annotations and Microformats Markup
To my knowledge there are three distinct types of annotations that might occur which may need slightly different microformats mark up depending on the type. These are:
Unassigned page notes (or sometimes orphaned page notes): For all intents and purposes are the equivalent of bookmarks (and are used this way by many) though they go by a different name within the service.
Highlights of particular passages: In IndieWeb parlance, these are roughly equivalent to quotations of content.
Highlights and annotations of particular passages: In IndieWeb terms these again are quotes of content which also have what might be considered a reply or comment to that segment of quoted text. Alternately the annotation itself might be considered a note related to what was highlighted, but I suspect from a UI and semantic viewpoint, treating these as replies is probably more apropos in the majority of cases.
Each of these can obviously have one or more potential tags as well. Some of the examples below include the p-category microformats for how these would logically appear. Using the example URL above and several others for the other cases, I’ll provide some example HTML with proper microformats classes to make doing the mark up easier. I’ve created some minimal versions of text and mark up, though Hypothes.is obviously includes much more HTML (and a variety of divs for CSS purposes. While some of the mark up is a bit wonky, particularly with respect to adding the hyp.is and the original posts’ canonical URLs, it could be somewhat better with some additional reworking of the presentation, but I wanted to change as little as possible of their present UI. For the minimal examples, I’ve stripped out the native Hypothes.is classes and only included the semantic microformats. Because microformats are only meant for semantic mark up, the developers should keep in mind it is good practice NOT to use these classes for CSS styling.
<a class="p-author h-card" href="https://hypothes.is/users/judell">judell</a>
Public on <a href="https://hyp.is/gBZPQucmEeaPBQvYzSRo-Q/www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/">"As We May Think"</a> (<a class="u-quotation-of h-cite" href="https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/">www.theatlantic.com</a>)
<time class="dt-published" datetime="2017-04-30 08:40:00" title="Sunday, Apr 30, 2017, 08:40 AM"><a href="https://hypothes.is/a/_tLJyA-cEemE-qPndyfQow" target="_blank" rel="noopener">Apr 30, 2017</a></time>
<blockquote>First he runs through an encyclopedia, finds an interesting but sketchy article, leaves it projected. Next, in a history, he finds another pertinent item, and ties the two together.</blockquote>
<a class="p-author h-card" href="https://hypothes.is/users/jeremydean">jeremydean</a>
Public on <a href="https://hyp.is/9JrX5lf9RraeLKKn9WwmMQ/www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/">"As We May Think"</a> (<a class="u-in-reply-to" href="https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/">www.theatlantic.com</a>)
<time class="dt-published" datetime="2015-09-02 15:11:00" title="Wednesday, Sep 2, 2015, 03:11 PM"><a href="https://hypothes.is/a/_tLJyA-cEemE-qPndyfQow" target="_blank" rel="noopener">Sep 2, 2015</a></time>
<blockquote class="p-in-reply-to h-cite">This has not been a scientist's war; it has been a war in which all have had a part.
<p>It kind of blows me mind that the end of WWII is the context for these early dreams of the Internet. Is it the hope experienced in patriotic collaboration toward technological innovation? That's what Bush seems to acknowledge explicitly. It's a techno-militaristic union that haunts us to this day (#prism). But I wonder too if it's the precarious of knowledge, or perhaps the destructiveness of knowledge, that also inspires Bush…</p>
I’ll also note that there’s the potential of a reply on Hypothes.is to a prior reply to a canonical URL source. In that case it could be either marked up as a reply to the “parent” on Hypothesis and/or a reply to the canonical source URL, or even both so that webmentions could be sent further upstream. (My experience in this is more limited, not having dealt with it personally in the past.) Once these pieces are implemented, they can be tested against a variety of microformats parsers to ensure they’re outputting the correct (and properly nested) information. I often find that pin13 is a pretty solid modern and up-to-date choice for this.
I’ll also leave the caveat here, that while I’ve got a stronger grasp of Microformats than the average bear, that the above examples may have some subtle quirks that others may catch or which could be improved upon. I find that the Microformats web chat can be a good source for helps from some of the world’s best experts in the area. (Other methods for engaging in chat via IRC, Slack, etc. can be utilized as well.)
If Dan, Jon, or any of the gang has questions about any of this, I’m happy to chat via phone, video conference, or other to help get them going.
The best I could hope for back in 2008, and part of why I created the @JohnsHopkins Twitter handle, was that researchers would discover Twitter and be doing the types of things that some of the Johns Hopkins professors outlined in this recent article The Promise and Peril of Academia Wading into Twitter are now finally doing. It seems sad that it has taken over a decade and this article is really only highlighting the bleeding edge of the broader academic scene now. While what they’re doing is a great start, I think they really aren’t going far enough. They aren’t doing their audiences as much service as they could because there’s only so much that Twitter allows in terms of depth of ideas and expressiveness. It would be far better if they were doing this sort of work from their own websites and more directly interacting with their colleagues on the open web. The only value that Twitter is giving them is a veneer of reach to a broader audience, but they’re also opening themselves up to bigger attacks as is described in the article.
In addition to Kimberly’s example, another related area of potential innovation would be moving the journal clubs run by many research groups and labs online and opening them up. Want to open up science? Then let’s really do it! By bookmarking a variety of articles on their own websites, various members could be aggregated to contribute to a larger group, which could then use their own websites with protocols like Webmention or even simple tools like Hypothes.is to guide and participate in larger online conversations to move science communication along at an even faster pace. Greg McVerry and I have experimented in taking some of these tools into the classroom in the past.
If you think about it, arXiv and other preprint servers are really just journal clubs writ large. The problem is that they’re only communicating in one direction by aggregating the initial content, but they’re dramatically failing their audiences in that they aren’t facilitating or aggregating any open discussion around that content. As a result, the largest portion of their true value is still locked away in the individual brains of their readers rather than as commentary or even sentence level highlights and annotations on particular pieces out in the open. Often is the time that I’ll tweet about an interesting article only to receive a (lucky) reply that the results have been debunked, yet that information is almost never disclosed in or around the journal article (especially online) where it certainly belongs. Academic publishers are not only gouging us financially by siloing their content, they’re failing us far worse than most realize.
Another idea: Can’t get a journal of negative results to publish your latest research failure? Why not post a note or article on your own website to help out future researchers? (or even demonstrate to your students that not everything always works out?)
Now wouldn’t it be cool if this were available in the main UI? Perhaps if there were a button for “Site notes” or highlights? This may be unwieldy for the New York Times, but could be reasonable and very useful for smaller personal and/or academic based websites.
I’ve had a following page (aka blogroll on acid) where I list all the websites I’m following in my feed reader (along with OPML files for those who’d like to quickly follow them as well), but last night I quickly mocked up a followers page as well. It lists people who have either added me to their blogrolls or who have sent my site notifications (trackbacks, pingbacks, or webmentions) that they’re following me.
This is another in a long line of social media functionalities that I’m now able to relatively easily support on my own website.
To my knowledge, I may be the first person to be displaying “following” webmentions anywhere. The nice part is that this following webmention functionality is built into the Post Kinds plugin by default, so that if people begin creating follow posts on a more regular basis, then several hundred WordPress sites that have Post Kinds will automatically be able to display them.
To get started quickly, just to have the notifications, you might try creating an account with Webmentions.io and put the endpoint into the <head> of your site so you can receive them in the erstwhile on a separate service and worry about direct integration at a later date. As I recall Aaron Gustafson has a Webmention.io Jekyll Plugin for display and some of the outline is covered in this recent article by Max Böck.
Contribute to dshanske/wordpress-refback development by creating an account on GitHub.
Refbacks in conjunction with the Webmention plugin and Semantic Linkbacks plugin don’t have as solid a parity with webmentions as they show up in the comments section as text instead of as an avatar. Perhaps it would be prettier if refbacks were given a default system avatar (possibly modifiable) for display?
Colin, thanks for the great interview and the overview of where Micro.blog is going.
I’m noticing in the responses section of your site (and on this particular post) that you’ve got a “Mentions” section, and that when I click on some avatars I get the original post while others (for Twitter) link to the profile page. This isn’t the typical Webmention plugin for WordPress behavior, so I’m curious what particular lines you’ve changed in the plugin and how as I’d love to have this behavior instead of the less useful links to the profiles that the plugin typically gives. Thanks!
Social networks encourage us to take less ownership of our content. That needs to change.
Some excellent motivation here for “Why IndieWeb” as well as some interesting thoughts on legacy from someone who has been blogging for years. Great to see another designer and website creator appreciating the immense value that IndieWeb principles can bring to the web.
Jason, while it looks like you don’t have webmentions set up or displaying yet (I’m guessing you’re on Craft 3 and the plugin for Craft is only compatible with v2 as I recall), you might try creating an account with Webmentions.io and put the endpoint into your head so you can receive them in the erstwhile on a separate service and worry about direct integration at a later date.