Fragmentions for Better Highlighting and Direct References on the Web

Fragmentions

Ages ago I added support on my website for fragmentions.

Wait… What is that?

Fragmention is a portmanteau word made up of fragment and mention (or even Webmention), but in more technical terms, it’s a simple way of creating a URL that not only targets a particular page on the internet, but allows you to target a specific sub-section of that page whether it’s a photo, paragraph, a few words, or even specific HTML elements like <div> or <span> on such a page. In short, it’s like a permalink to content within a web page instead of just the page itself.

A Fragmention Example

Picture of a hipster-esque looking Lego toy superimposed with the words: I'm not looking for a "hipster-web", but a new and demonstrably better web.
29/1.2014 – Larry the Barista by julochka is licensed under CC BY-NC
Feature image for the post “Co-claiming and Gathering Together – Developing Read Write Collect” by Aaron Davis. Photo also available on Flickr.

Back in December Aaron Davis had made a quote card for one of his posts that included a quote from one of my posts. While I don’t think he pinged (or webmentioned) it within his own post, I ran across it in his Twitter feed and he cross-posted it to his Flickr account where he credited where the underlying photo and quote came from along with their relevant URLs.

Fragmentions could have not only let him link to the source page of the quote, it would have let him directly target the section or the paragraph where the quote originated or–even more directly–the actual line of the quote.

Here’s the fragmention URL that would have allowed him to do that: http://boffosocko.com/2017/10/27/reply-to-laying-the-standards-for-a-blogging-renaissance-by-aaron-davis/#I%E2%80%99m%20not%20looking

Go ahead and click on it (or the photo) to see the fragmention in action.

What’s happening?

Let’s compare the two URLs:
1. http://boffosocko.com/2017/10/27/reply-to-laying-the-standards-for-a-blogging-renaissance-by-aaron-davis/
2. http://boffosocko.com/2017/10/27/reply-to-laying-the-standards-for-a-blogging-renaissance-by-aaron-davis/#I%E2%80%99m%20not%20looking

They both obviously point to the same specific page, and their beginnings are identical. The second one has a # followed by the words “I’m not looking” with some code for blank spaces and an apostrophe. Clicking on the fragmention URL will take you to the root page which then triggers a snippet of JavaScript on my site that causes the closest container with the text following the hash to be highlighted in a bright yellow color. The browser also automatically scrolls down to the location of the highlight.

Note: rather than the numbers and percent symbols, one could also frequently use the “+” to stand in for white spaces like so: http://boffosocko.com/2017/10/27/reply-to-laying-the-standards-for-a-blogging-renaissance-by-aaron-davis/#not+looking+for+just This makes the URL a bit more human readable. You’ll also notice I took out the code for the apostrophe by omitting the word “I’m” and adding another word or two, but I still get the same highlight result.

This can be a very useful thing, particularly on pages with huge amounts of text. I use it quite often in my own posts to direct people to particular sub-parts of my website to better highlight the pieces I think they’ll find useful.

It can be even more useful for academics and researchers who want to highlight or even bookmark specific passages of text online. Those with experience on the Medium.com platform will also notice how useful highlighting can be, but having a specific permalink structure for it goes a step further.

I will note however, that it’s been rare, if ever, that anyone besides myself has used this functionality on my site. Why? We’ll look at that in just a moment.

Extending fragmentions for easier usability.

Recently as a result of multiple conversations with Aaron Davis (on and between our websites via webmention with syndication to Twitter), I’ve been thinking more about notes, highlights, and annotations on the web. He wrote a post which discusses “Page Bookmarks” which are an interesting way of manually adding anchors on web pages to allow for targeting specific portions of web pages. This can make it easy for the user to click on links on a page to let them scroll up and down specific pages.  Sadly, these are very painful to create and use both for a site owner and even more so for the outside public which has absolutely no control over them whatsoever.

His post reminded me immediately of fragmentions. It also reminded me that there was a second bit of user interface related to fragmentions that I’d always meant to also add to my site, but somehow never got around to connecting: a “fragmentioner” to make it more obvious that you could use fragmentions on my site.

In short, how could a user know that my website even supports fragmentions? How could I make it easier for them to create a fragmention from my site to share out with others? Fortunately for me, our IndieWeb friend Kartik Prabhu had already wired up the details for his own personal website and released the code and some pointers for others who were interested in setting it up themselves. It’s freely available on Github and includes some reasonable details for installation.

So with a small bit of tweaking and one or two refinements, I got the code up and running and voilà! I now have a natural UI for highlighting things.

How?

When a user naturally selects a portion of my page with their mouse–the way they might if they were going to cut and paste the text, a simple interface pops up with instructions to click it for a link. Kartik’s JavaScript automatically converts the highlight into the proper format and changes the page’s URL to include the appropriate fragmention URL for that snippet of the page. A cut and paste allows the reader to put that highlighted piece’s URL anywhere she likes. It

text highlighted in a browser with a small chain icon and text which says "Click for link to text"
Highlighting text pulls up some simple user interface for creating a fragmention to the highlighted text.

The future

What else would be nice?

I can’t help but think that it would be fantastic if the WordPress Fragmention plugin added the UI piece for highlight and sharing text via an automatically generated link.

Perhaps in the future one could allow a highlight and click interaction not only get the link, but to get a copy of both the highlighted text and the link to the URL. I’ve seen this behavior on some very socially savvy news websites. This would certainly make a common practice of cutting and pasting content much easier to do while also cleverly including a reference link.

The tough part of this functionality is that it’s only available on websites that specifically enable it. While not too difficult, it would be far nicer to have native browser support for both fragmention creation and use.  This would mean that I don’t need to include the JavaScript on my website to do the scrolling or highlighting and I wouldn’t need any JavaScript on my site to enable the highlighting to provide the specific code for the custom URL. How nice would it be if this were an open web standard and supported by major browsers without the need for work at the website level?

Medium-like highlighting and comments suddenly become a little easier for websites to support. With some additional code, it’s only a hop, skip, and a jump to dovetail this fragmention functionality with the W3C Webmentions spec to allow inline marginalia on posts. One can create a fragmention targeting text on a website and write a reply to it. With some UI built out,  by sending a webmention to the site, it could pick up the comment and display it as a marginal note at that particular spot instead of as a traditional comment below the post where it might otherwise loose the context of being associated at the related point in the main text. In fact our friend Kartik Prabhu has done just this on his website. Here’s an example of it in his post announcing the feature.

Example of inline marginalia on Kartik Prabhu’s website “Parallel Transport”.

You’ll notice that small quotation bubbles appear at various points in the text indicating marginalia. By clicking on them, the bubble turns green and the page expands to show the comment at that location. One could easily imagine CSS that allows the marginalia to actually display in the margin of the page for wider screens.

How could you imagine using fragmentions? What would you do with them? Feel free to add your thoughts below or own your site and send me a webmention.

Syndicated copies to:

Reply to Annotating Web Audio by Jon Udell

Annotating Web Audio by Jon UdellJon Udell (Jon Udell)
On a recent walk I listened to Unmasking Misogyny on Radio Open Source. One of the guests, Danielle McGuire, told the story of Rosa Parks’ activism in a way I hadn’t heard before. I wanted to capture that segment of the show, save a link to it, and bookmark the link for future reference.

Jon, this is certainly an awesome and interesting way to target audio on the web, which can be tremendously useful.

Given what you’ve got here, I suspect that you may be unaware of the W3C spec for media fragments which may make portions of what you’re attempting to do a bit easier (and also much more standardized). The spec is relatively broadly supported by most browsers, so it immediately makes things a tad easier from a plumbing perspective.

Some people will be somewhat familiar with the targeting technique as it’s similar to the one used by YouTube which lets users hot link to specific portions of video on their platform.

To summarize the concept, on most audio and video files one can add a #t=XXX the the end of a URL where XXX is the number in seconds into the file where one wants to start. One can target stretches of audio similarly with the pattern #t=XXX,YYY where XXX is the start and YYY is the stop time for the fragment, again in seconds.

As an example I can use it to specifically target the audio  on a particular standalone audio file like so:

https://media.martymcgui.re/70/d5/f1/77/975194c74454dc7a3ef71586bf98612a94bcb5685f7e7d3ca60dc183.mp3#t=269

With some clever JavaScript, one can go a step further and implement this at the level of targeting audio/video as embedded on a particular page which may contain a wealth of additional (potentially necessary) context. As an example of this, we can look at the audio above in its original context as part of a podcast using the same type of time fragment notation:

https://martymcgui.re/2017/10/29/163907/#t=269

As an added bonus, on this particular page with audio, you’ll notice that you can play the audio and if you pause it, the page URL in your browser should automatically refresh to indicate the particular audio timestamp for that particular position! Thus in your particular early example it makes things far easier to bookmark, save, or even share!

For use within Hypothesis, I suspect that one could use this same type of system to directly annotate the original audio file on the original page by using this scheme, potentially by using such JavaScript within the browser plugin for Hypothesis.

It would be nice if the user could queue up the particular audio segment and press pause, and then annotate the audio portion of the page using such a targeting segment. Then one could potentially share a specific URL for their annotation (in typical Hypothesis fashion) that not only targets the original page with the embedded audio, but it could also have that audio queued up to the correct portion (potentially with a page refresh to reset the audio depending on the annotation.)

The nice part is that the audio can be annotated within the page on which it originally lived rather than on some alternate page on the web that requires removing the context and causing potential context collapse. It also means one doesn’t have to host an intermediate page to have the whole thing work.

For more information on the idea, take a peek at the IndieWeb’s page on audio fragments which includes a few examples of people using it in the wild as well as a link to the JavaScript sample for doing the targeting within the page itself.

I’m curious if the scheme may make putting all the smaller loose pieces together even easier, particularly for use within Hypothesis? and while keeping more of the original context in which the audio was found?

I also suspect that these types of standards could be used to annotate audio in much the same way that the SoundCloud service handles their audio annotations, though in a much more open way. One would simply need to add on some additional UI to make the annotations on such audio present differently.

Just for fun, this type of sub-targeting on web pages also works visually for text as well with the concept of fragmention. As an example of this, I can target this specific paragraph with this link http://boffosocko.com/2018/01/07/reply-to-annotating-web-audio-by-jon-udell/#Just+for+fun, and a snippet of JavaScript on the page creates a yellow highlighting effect as well.

Syndicated copies to:

👓 Building Digital Workflows by Aaron Davis

Building Digital Workflows by Aaron Davis (Read Write Respond)
Whether it is how we write or stay organised, technology is always adapting and evolving. Here are a few of the recent changes to my digital workflows.

An interesting philosophy of regularly changing workflows. I’ve done this for a long time, but never really given it a name.

There’s a nice tip about the Listen functionality in Pocket which I hadn’t yet heard about. I’m also curious how they’ve implemented highlighting and what I might do with it.

I suspect that if Aaron hasn’t come across Huffduffer as a tool yet (with a bookmarklet), he’ll appreciate it for both discovery as well as having his own audio feed to push to his mobile player.

Syndicated copies to:

Un-Annotated by Audrey Watters

Un-Annotated by Audrey Watters (Hack Education)
Why Audrey Watters has blocked annotations from News Genius and Hypothes.is from her website.

I thought Audrey Watters’ post on why (and how) she prevents others from annotating her website was so important that I needed to highlight and annotate a few sections for myself for future use on my own site cum commonplace book. Her comments about ownership, control, and even harassment are all incredibly germane to the Indieweb movement as well.

I also wanted to use this post as an experiment of sorts to see how sound her script actually is with respect to people using both of the annotation services she mentions.

The text of her post appears below in full and unaltered (as it did on 2017-05-17 aside from my obvious annotations and highlights). It (and my commentary and highlights) is (CC BY-NC-SA 4.0) as she originally licensed it.


I’ve spent some time thinking about this type of blocking in the past and written about a potential solution. Kevin Marks had created a script to help prevent this type of abuse as well; his solution and some additional variants are freely available. — {cja}

I have added a script to my websites today that will block annotations – namely those from Genius and those from Hypothes.is. I have been meaning to do this for a while now, so it’s mostly a project that comes as I procrastinate doing something else rather than one that comes in response to any recent event.

I took comments off my websites in 2013 because I was sick of having to wade through threats of sexualized violence in order to host conversations on my ideas.

My blog. My rules. No comments.

The article linked at the bottom of the paragraph is a must read in my opinion and sparked some of my original thoughts last year about this same phenomenon. I suspect that Ms. Watters has been wanting to do this since this article was posted and/or she read it subsequently. — {cja}

I’ve made this position fairly well known – if you have something to say in response, go ahead and write your own blog post on your own damn site. So I find the idea that someone would use a service like Hypothes.is to annotate my work on my websites particularly frustrating. I don’t want comments – not in the margins and not at the foot of an article. Mostly, I don’t want to have to moderate them. I have neither the time nor the emotional bandwidth. And if I don’t want to moderate comments, that means I definitely do not want comments to appear here (or that appear to be here) that are outside my control or even my sight.

This isn’t simply about trolls and bigots threatening me (although yes, that is a huge part of it); it’s also about extracting value from my work and shifting it to another company which then gets to control (and even monetize) the conversation.

Does the script Audrey Watters is using really stop people from annotating her site directly?

Based on my quick test, one can still (carefully) use Hypothes.is to highlight and annotate her site, but the script at least prevents Hypothes.is from showing that annotation. When visiting her site with Hypothes.is’ Chrome browser extension on, it does show that there is one annotation on the page. It then requires some hunting to find this comment.

And this particular post is proof of the fact that it can still be annotated, but without impinging on the sovereignty of the original author or her site. — {cja}

Blocking annotation tools does not stop you from annotating my work. I’m a fan of marginalia; I am. I write all over the books I’ve bought, for example. Blocking annotations in this case merely stops you from writing in the margins here on this website.

 

Syndicated copies to:

Boffo Socko Now Supports Hypothes.is Annotations

You can now highlight and annotate most of the pages here on Boffo Socko as well as other web pages.

I’d played around with many of them in the past, but a recent conversation with Matt Gross about News Genius and their issues in the last week reminded me about internet annotation platforms. Since some of what I write here is academic in nature, I thought I would add native Hypothes.is Annotation support to the site.

hypothesisIf you haven’t heard about it before, you might find the ability to highlight and annotate web pages very useful. Hypothesis allows for public or private highlights and notes and it can be a very useful extension of one’s commonplace book.

At the moment, I’m not sure where it all fits into the IndieWeb infrastructure I’m building here, but, at least for the moment, I’d hope that those making public annotations and notes will also enter their commentary into the comments either here on the blog or by way of syndicated versions on Facebook or Twitter so that they’re archived here for posterity. (Keep in mind site-deaths are prevalent and even Hypothes.is acknowledges in a video on their homepage that there have been many incarnations of web annotations that have come and gone in the life of the internet.) Perhaps one day there will be a federated and cross-linked version of highlights and annotations in the IndieWeb universe with webmentions included?!

Educators and researchers interested in using web annotation are encouraged to visit the wealth of information provided by providers like Hypothes.is and Genius.com.  In particular, the Hypothes.is blog has some great material and examples over the past year, and they have a special section for educators as well.

As it’s similar in functionality to highlighting on the web, I’ll remind users that we also still support Kevin Marks’s fragmentions as well.

If anyone is aware of people or groups working on the potential integration of the IndieWeb movement (webmentions) and web annotation/highlighting, please include them in the comments below–I’d really appreciate it.

 

Syndicated copies to: