While you’re playing with Open Graph, you’re sure to appreciate this entertaining exercise: http://www.kevinmarks.com/partialsilos.html
Ian, thanks for putting together all of these examples. I think my preference is for option three which provides the most context and seems easiest to read and understand. I like the way you’ve incorporated the blue arrow, which makes semantic sense as well.
I’m sure I’ve seen other versions, but Jon Udell has at least one example of some annotations on his own website like yours too.
When it comes to the “conversation” side of what you’re looking for, I think the biggest piece you’re really missing and which some on the Hypothes.is side (except perhaps for Nate who may have a stronger grasp of their value after the recent IndiewWeb Summit) are apt to miss is that Hypothes.is doesn’t support sending webmentions. Presently you’re putting your data out there in a one-sided manner and Hypothes.is isn’t pushing the other side or any of the follow up back to you. As a result it’s operating as a social silo the same way that sites like Facebook and Twitter do. Based on their GitHub repository, I know that they’ve considered webmentions in the past, but apparently it got put on a back burner and hasn’t been revisited.
Ideally they’d want to have webmentions work in two places. It would be great if they could send webmentions of annotations/highlights to the original page itself, so that the site owner is aware that their content is being marked up or used in this manner. This also means that Hypothes.is could be used as a full-blown and simple commenting system as well so that those who aren’t using their own sites to write replies could use Hypothes.is as an alternative. The second thing it might want to do is to send webmentions, particularly for replies, to the original page as well as to any URLs that are mentioned in the comment thread which appears on Hypothes.is. This would mean that you’d want to add the permalink to your post back to the copy you put on Hypothes.is so that you and your website stay in the loop on the entirety of the conversation. In many senses, this is just mirroring what is going on in threaded Twitter conversations that get mirrored back to your WordPress website. [I’ll note that I think I’ve got the last of the moving pieces for this Twitter/WordPress workflow properly linked up in the past week.] Since Twitter doesn’t support webmentions itself, Brid.gy is handling that part for you, but in Hypothes.is’ case you don’t have any of the details coming back for allowing you to display the discussion on your site except by doing so manually. Doing it manually for extended conversations is going to become painful over time.
From an IndieWeb perspective, you’re primarily implementing a PESOS workflow in which you post first on Hypothes.is and then send a copy of it to your own website. Naturally it would be better if you were posting all the details on your own website and using the Hypothes.is API to syndicate your copy there for additional public conversation outside of the readership of your website. Unfortunately building the infrastructure to do this is obviously quite daunting. Since they’ve got an API, you might be able to bootstrap something webmention-like onto it, but for your purposes it would obviously be easier if they had direct webmention support.
It would also be wonderful if Hypothes.is supported the micropub specification as well. Then you could ideally log into the system as your website and any annotations you made could be automatically be published to your website for later storage, display, or other use. In some sense, this is what I’m anticipating by making explicit standalone annotation and highlight post kinds on my website. In practice, however, like you, I’d prefer to have a read, like, or bookmark-type of post that aggregates all of my highlights, annotations, and marginalia of a particular piece for easier future use as well as the additional context this provides. I suspect that if I had the additional tag within the Hypothesis Aggregator plugin for WordPress that would let me specify the particular URL of an individual article, I would have most of the front side PESOS functionality we’re all looking for. The rest will require either webmention or a lot more work.
I may have mentioned it before, but in case you hadn’t found it I’ve got a handful of posts on annotations, many of which include some Hypothes.is functionality.
Not itemized in that list (yet?) are some experiments I’d done with the Rory Rosenzweig Center’s PressForward plugin for WordPress. It allowed me to use a simple browser bookmarklet to save a webpage’s content to my personal website with a rel=”canonical” tag for the page pointing at the original page. (Here’s a good example.) Because of the way the canonical set up works within Hypothes.is, I noticed that annotations I (and others) made on the original were also mirrored and available on my website as well. In my case, because PressForward was copying the entirety of the article for me, I used the <mark> HTML tag to make the highlights on my page, but with Hypothes.is enabled, it also shows the other public annotations as well. (Use of the title attribute adds some additional functionality when the mark tagged text is hovered over in most browsers.)
In another example, I annotated a copy of one of Audrey Watters’ articles (after she’d disabled the ability for Hypothesis to work on her site, but before she changed the Creative Commons licensing on her website). But here I added my annotations essentially as pull-quotes off to the side and syndicated copies to Hypothes.is by annotating the copy on my website. If you visit Audrey’s original, you’ll see that you cannot enable Hypothesis on it, but if you’re using the Chrome extension it will correctly indicate that there are five annotations on the page (from my alternate copy which indicates hers is the rel=”canonical”).
In any case, thanks again for your examples and documenting your explorations. I suspect as time goes by we’ll find a more IndieWeb-centric method for doing exactly what you’ve got in mind in an even easier fashion. Often doing things manually for a while will help you better define what you want and that will also make automating it later a lot easier.
Yes,can be an issue, but if one is providing various feeds (RSS, Atom, JSON, or h-feed) of various post types, then it becomes easier to slice and dice the content coming out of particular websites. I’ve got my website set up so that nearly every post format, post kind, category, and tag has its own feed. Ideally, you should be able to extract almost anything you’d want from my site via a custom feed if necessary.
Separately, I maintain a following page which, similar to a blogroll, is a list of sites I’m following along with OPML of the full list or subcategories. Thus if you want to subscribe to the IndieWeb OPML list, it’s there for you. (Even more fun if you’re using functionality like OPML subscriptions as they’re done in Inoreader, so that when I update my list, yours automatically does too.)
If you’re interested in recreating portions of some of this I’ve tried to document a lot of it (for WordPress at least) at https://boffosocko.com/research/indieweb/.
My heart forever broken by social-media silos, I’m not really interested in using Micro.blog as yet another “Okay, I’m over here now” social network. I get the impression that it has potential for much deeper use than that, if I can only get my head around it.
Micro.blog can be many things to many people which can be confusing, particularly when you’re a very tech savvy person and can see all the options at once. I’d recommend looking at it like a custom feed reader for a community of people you’d like to follow and interact with. Spend some time in the reader and just interact with those you’re following and they’ll do likewise in return.
It’s purposely missing some of the dopamine triggers other social silos have, so you may need to retrain your brain to use it appropriately, but I think it’s worthwhile if you do.
I really need to hash out my domain situation! IndieWeb encourages its memership to claim a single domain and use it as their personal stamp for everything they do on the internet. I, though, have two domains: my long-held personal catch-all domain of jmac.org, and fogknife.com, which I use exclusively for blogging. My use of both predates my involvement with IndieWeb.
Don’t fret too much over having multiple websites. As you continue on the answer to what you want to do with them will eventually emerge more organically than if you force it to. For some thoughts and inspiration, check out https://indieweb.org/multi-site_indieweb.
I was just thinking about how this might be codified a bit better as well, particularly for folks who are attending their first BarCamp-style event.
While there is some implication in the event pages, I don’t know if some people were expecting the sessions and planning to play out the way they did (or if they knew what to expect on that front at all, particularly in chatting with people in the early morning registration/breakfast part of the day).
It was certainly more productive for me to think about and post some of the things I wanted to accomplish pre-camp. (It also helped to have your reminder a month or more ago about what I might build before even going to the summit.)
Having additional time to know what the scheduling process looks like, if nothing else, gives people a bit more time to think about what they want to get out of the conference and propose some additional ideas without being under the short time crunch. This is particularly apropos when the morning presentations may have run long and the conference is already a few minutes off track and we’re eating into valuable session time otherwise. I would suspect that helping to get the session ideas flowing sooner than later may also help the idea and creative processes, and even more so for participants who may need a bit more time to organize their thoughts and communicate them as they’d like.
I definitely liked the process of having beginners go first and then letting people advocate for particular ideas thereafter. This worked particularly well for an established event and one with so many people. It might be helpful to pre-select one potentially popular proposal from an older hand to go first though, to provide an example of the process for those who are new to it, and in particular those who might be quiet, shy, or not be the type to raise their hands and advocate in front of such a large group. In fact, given this, another option is to allow people to propose sessions and then allow advocation across the board, but for beginners first followed by everyone thereafter. This may also encourage better thought out initial proposals as well.
Thanks again for all your hard work and preparation Tantek!
@vishae Wishes are already built into the core version of Post Kinds, so it shouldn’t take much work, but you’ll need to make a few changes. I’ve written before about the generalization of how to do this. You’ll need to dip into the code here to change the show value from
true. (Hint: on your admin dashboard visit:
/wp-admin/plugin-editor.php?file=indieweb-post-kinds%2Fincludes%2Fclass-kind-taxonomy.php&plugin=indieweb-post-kinds%2Findieweb-post-kinds.php). Then save the file. There’s already a reasonable template built into the plugin, so you shouldn’t need to make your own.
The plugin will generally import a “featured image” if one is available on the page you’re bookmarking, but it doesn’t yet have functionality for showing it yet. I often I add one manually myself by cutting and pasting the URL for the photo the plugin returns and put it into the External URL featured image plugin. (Eventually when Post Kinds handles featured images, I should be able to turn the plugin off so it doesn’t duplicate the data.)
This is an intriguing little company. I could see this being some great opening infrastructure for creating read posts.
On my own website I’ve got a relative heirarchy of bookmarks, likes, reads, replies, follows, and favorites. (A read post indicates that I’ve actually read an entire piece–something I wish more websites and social platforms supported in lieu of allowing people to link or retweet content they haven’t personally vetted.) Because I’m posting this content on my personal site and it’s visible to others as part of my broader online identity I take it far more seriously than if I were tossing any old comment into an empty box on someone else’s website. To some extend this is the type of value that embedded comments sections for Facebook tries to enforce–because a commenter is posting using an identity that their friends, family, and community can see, there’s a higher likelihood that they’ll adhere to the social contract and be civil. I suspect that the Nieman Lab is using Disqus so that commenters are similarly tied to some sort of social identity, though in a world with easy-to-create-throw-away social accounts perhaps even this may not be enough.
While there’s a lot to be said about the technology and research that could be done with such a tool as outlined in the article, I think that it also ought to be bundled with people needing to use some part of their online social identities which they’re “stuck to” in some sense.
The best model I’ve seen for this in the web space is for journalism sites to support the W3C’s recommended Webmention specification. They post and host their content as always, but they farm out their comment sections to others by being able to receive webmentions. Readers will need to write their comments on their own websites or in other areas of the social web and then send webmentions back to the outlet which can then moderate and display them as part of the open discourse. While I have a traditional “old school” commenting block on my website, the replies and reactions I get to my content are so much richer when they’re sent via webmention from people posting on their own sites.
I’ve also recently been experimenting with some small outlets in allowing them to receive webmentions. They can display a wider range of reactions to their content including bookmarks, likes, favorites, reads, and even traditional comments. Because webmentions are two-way links they’re audit-able and provide a better monolithic means of “social proof” relating to an article than the dozens of social widgets with disjointed UI that most outlets are currently using.
I’ve been watching that space for a few years. Apparently you saw the same article push them into the broader mainstream consciousness. I would mention Mathematica, but you’re certainly aware of it. There are a few other math-related platforms I’ve used, but I suspect they’re not within the realm you’re looking for.
I’ve seen one or two much smaller projects along the lines of bash_kernel, but they’re either in incredibly rough shape or have very limited scopes or very niche uses. There’s a reasonably interesting list of open science related resources on GitHub, but it’s a tad old and some of the projects on it have merged or changed drastically since it was started. Foster has some interesting material and resources on open science if you care to dig through it. One day I’ll delve into the Open Science Framework to see if they’ve got anything I haven’t seen before too.
I keep meaning to document people who are using their own websites for pieces of this type of thing , but most are doing it in a hybrid fashion. Carl Boettiger is certainly a good example and may be aware of some additional resources including one he helps manage.
@jbj Given the number of people I’ve seen experimenting over the past months, I’d be happy to put together a series of short pieces for @ProfHacker covering the areas of overlap of between #edtech, #DoOO, #indieweb, research, academic publishing, samizdat, commonplace books, etc. Essentially tighter versions of some of https://boffosocko.com/research/indieweb/ but specifically targeting the education space using WordPress, Known, and Grav. Let me know if you’d accept submissions for the community.
Perhaps better than allowing simply the download of an OPML file, it would be nice to have the ability to provide a link to an OPML file as well? This way feed readers like Inoreader that support OPML subscription would be able to auto update themselves when new feeds/friends are added to the list?
Depending on your infrastructure, you could potentially leverage the old Link Manager within WordPress which provided OPML outputs as well as outputs arranged by category. This would prevent you from needing to rebuild the side-files unless you’re doing that already.
I love how you’re trying to take control of all of the parts of your website. In particular, I think it’s a great idea to improve the usability of particular pages (both for yourself as well as for others) based on how you’re using the pages. I think more people should be considering this as an option.
Certainly having multiple WordPress installs can be a headache, though it will obviously work. I know some IndieWeb tech related to syndicating to various silos and using services like Brid.gy for backfeed will be hard to do when using more than two domains and targeting a single silo presence, so it’s not only a maintenance tax, but you might not have the flexibility you’d like if you syndicate content in multiple locations.
Another option is to use the same WordPress install to run multiple websites, which is also a possibility. Or you could also run a multi-site installation and go that route. This at least would cut down on needing to maintain and update multiple sites one at a time.
Possibly the best option, however, is to know that you can custom theme any and every page generated within your website. This isn’t done quite as often as it may take a bit more upfront development work and knowledge of how WordPress works internally as well as how to tweak your theme. The easiest thing to do is to create custom templates for each of the particular pages you want to change. When WordPress tries to build a page it relies on a nested hierarchy of templates potentially available within your theme. It starts at the top and stops when it finds one available and then uses that template. By targeting the particular page you’re making (by a variety of means) you can have direct control over what your page will look like. The nice part is if you’ve got templates from other themes, you can use those as a guide and include their CSS files to get the exact look and feel you want.
Now that you know it exists as an option, there are a huge variety of resources on the web that you can consult to begin tinkering. Below are a few potentially useful ones:
- A Detailed Guide To A Custom WordPress Page Templates
- Creating Custom Page Templates in WordPress
- How to Create a Custom Page in WordPress
- Page Templates (documentation from WordPress Developer)
- Taxonomy Templates (documentation from WordPress Developer)
I suspect even for those without a development background, one could do a bit of reading followed by some judicious cutting and pasting to get some reasonable results. I’m far from an expert in this area myself, but I was recently able to create a sort of landing page template for my podcast recently by creating a custom page that displays when the archive page for my ‘podcast’ category is rendered. Essentially I copied the archive template from my theme, added a bit of detail about the podcast just above the part where it renders the reverse chronological order of the category posts (I did this in simple raw HTML, without any ‘real’ coding), gave the file a new name
category-podcast.php so it would trigger when
/category/podcast/ is the URL, put it into my child theme (so it wouldn’t be overwritten if I update my theme), and voila–a landing page for the podcast!
If you’re not much of a developer/tinkerer, you could likely ask your departmental, divisional, or institutional web developer, someone at a local WordPress meetup or maybe a Homebrew Website Club to help you out a bit. I think once you’ve done it once with even some simple changes like I did on one page, you’ll have the gist of it and the sky is the limit for every other page on your site.