12 Matching Annotations
  1. Sep 2021
  2. May 2021
    1. Books and OER distributed by RSS. OPML lists creating collections for specific purposes - courses, discussion lists, whatever. RSS readers like gRSShopper using these OPML files to aggregate the contents and present them inside the student's own integrated learning environment. And then these - chapters, resources, comments, etc. - shared through the network among people taking the same course, working in the same community, or associated in any other way.

      This is roughly what I'd been thinking when reading Tonz' work on OPML recently as well. OPML could be used for quite a lot more and when paired with dumping things into a reader environment could be incredibly powerful.

    1. Inclusion however is a concept in OPML: I can add a list as a new branch in another list. If you do that once you only clone a list, and go your own seperate way again. You could also do it dynamically, where you always re-import the other list into your own. Doing it dynamically is a de-facto subscription. For both however, changes in the imported list are non-obvious.

      When this is done with RSS, you have what is known as OPML subscription. Some feed readers like Inoreader let you subscribe to someone's OPML list of RSS feeds which means your feed reader will autoupdate to show you new feeds from the list you've subscribed to.

      Ha! I'm noticing you mention it in the next section! :)

  3. Feb 2021
    1. Small world of annotation enthusiasts, but hopefully getting bigger!

      I've always wished that Hypothes.is had some additional social features built in for discovering and following others, but they do have just enough for those who are diligent.

      I've written a bit about how to follow folks and tags using a feed reader.

      And if you want some quick links or even an OPML feed of people and material I'm following on Hypothesis: https://boffosocko.com/about/following/#Hypothesis%20Feeds

    1. I have so many ideas about this. The first one being that it's awesome.

      While WordPress is about websites, it's also got a lot of pieces of social media sites hiding under the hood and blogrolls are generally precursors of the following/followed piece.

      Blogrolls were traditionally stuck on a small widget, but I think they now deserve their own full pages. I'd love to have one with a list of all the people I follow (subscribe to) as well as a similar one with those who follow me (and this could be implemented with webmention receipts of others who have me on their blogroll). I've got versions/mock ups of these pages on my own site already as examples.

      Next up is something to make these easier to use and import. I'd love a bookmarklet or a browser extension that I could use one click with to have the person's page imported into my collection of links that parses the page (perhaps the h-card or meta data) and pulls all the data into the link database.

      I always loved the fact that the original generated OPML files (even by category) so that I could dump the list of data from my own site into a feed reader and just go. Keeping this would be awesome, but the original hasn't been updated in so long it doesn't use the updated OPML spec

      If such a currated list is able to be maintained on my site it would also be cool if I could export it in such a way (similar to OPML) as to dovetail it with social readers like Aperture, Yarns, or other Microsub servers to easily transport or mirror the data there.

      Here are some related thoughts: https://boffosocko.com/2017/11/10/a-following-page/

      I'm happy to chat about other useful/related features relating to this any time!

  4. Feb 2020
    1. Make your own automatic blogroll This is the script I use to generate a blogroll from my OPML: #! /usr/bin/env python3 """ Parse OPML into markdown. """ import sys import re from xml.etree import ElementTree def main(fname): with open(fname, 'r', encoding='utf8') as fp: tree = ElementTree.parse(fp) for cat_node in tree.find('body').findall('outline'): print("\n## {}\n".format(cat_node.get('title'))) for node in cat_node.findall('outline'): name = node.attrib.get('text') feedurl = node.attrib.get('xmlUrl') url = node.attrib.get('htmlUrl') print("* [{}]({}) ([feed]({}))".format(name, url, feedurl)) if __name__ == "__main__": main(*sys.argv[1:])

      This is an awesome little script that may come in handy.

  5. Apr 2017
    1. opml2json A simple tool to convert opml files exported by Mindnode Pro to JSON consumable by D3 Javascript library.