User Interface to Indicate Posting Activity

In addition to the sparkline graphs I’ve got in the sidebar of my website, I’ve recently been looking at alternate ways to indicate the posting activity on my own website.

An example of a sparkline graph on Boffosocko.com. A blue line indicates the comment posting velocity and an orange line indicates the comment velocity.
“Monthly activity over 5 years” for both posting activity as well as commenting activity on my website.

Calendar Heatmaps

Yesterday I was contemplating calendar heatmaps which are probably best known from the user interface of GitHub which relatively shows how active someone is on the website. I’ve discovered that JetPack for WordPress provides a similar functionality on the back end (in blue instead of green), but sadly doesn’t make it available for display on the front end of websites. I’ve filed a feature request to see if it’s something they’d work on in the future, so if having something like this seems useful to you, please click through and give the post a +1.

Orderly grid of squares representing dates which are grouped by month with a gradation of colors on each square that indicate in heat map fashion how frequently I post to my website.
A screen capture of what my posting “velocity” looks like on the back end of my website. The darkest squares indicate 30+ posts in a day while the next darkest indicate between 15-30 posts. My “streak” is far longer than this chart indicates. I obviously post a LOT.

Circular Widthmaps

Today I saw a note that led me to the Internet Archive which I know has recently had a redesign. I’m not sure if the functionality I saw was part of this redesign, but it’s pretty awesome. I’m not sure quite what to call this sort of circular bar chart given what it does, but circular widthmap seems vaguely appropriate. Here’s a link to the archive.org page for my website that shows this cool UI, screencaptures of which also appear below: http://web.archive.org/web/sitemap/https://www.boffosocko.com/

Instead of using color gradations to indicate a relative number of posts, the UI is measuring things via width in ever increasing concentric circles. The innermost circle indicates the root domain and successive levels out add additional paths from my site. Because I’m using dated archive paths, there’s a level of circle by year (2019, 2018, 2017, etc.) then another level outside that by months (April 2019, March 2019, etc.), and finally the outermost circle which indicates individual posts. As a result, the width of a particular year or month indicates relatively how active that time frame was on my website (or at least how active Archive.org thinks it was based on its robot crawler.)

Of course the segments on the circles also measure things like categories and tags on my site as well along with the date based archives. Thus I can gauge how often I use particular categories for example.

I’ll also note that in the 2018 portion of the circle for July 11th, I had a post that slashdotted my website when it took off on Hacker News. That individual day is represented as really wide on that circular ring because it has an additional concentric circle outside of it that represents the hundreds of comment URL fragments for that post. So one must keep in mind that things in some of the internal rings aren’t as relative because they may be heavily affected by portions of content further out on the ring.

Interface that presents concentric circles with archived links of a website. The center circle is the domain itself while outside portions of the circle include archive pages, categories, pages, posts, and other portions of a site.
My website posting activity (and a little more) from 2018 and before according to the Internet Archive.
Interface that presents concentric circles with archived links of a website. The center circle is the domain itself while outside portions of the circle include archive pages, categories, pages, posts, and other portions of a site.
My website posting activity (and a little more) from April 2019 and before according to the Internet Archive.

How awesome would it be if this were embed-able and usable on my own website?

Jackie Robinson Day at Dodger Stadium on April 15, 2019

Last night I got some last minute tickets to the Los Angeles Dodger’s 11th game of the season against the Reds. The stadium was celebrating Jackie Robionson Day! As a result the give away for the night was a custom white Dodger’s jersey with Robinson’s 42 emblazoned on it. So in addition to all the fans wearing 42, all the players on both the Dodgers and the Reds also wore their respective jersies, but with the number 42! It made the game a lot harder to follow and score, but it was a fantastic way to honor Robinson’s career. All I can say is that #​​42 had a particularly spectacular night on my score card.

I also had some pretty spectacular tickets for the game. I had tickets in the Lexus Dugout Club in Section 1DG, Row GG, Seat 8 which ostensibly meant that I was in row 6 immediately behind home plate. I’ve been in rows 2 and 4 in the same section before at Dodger’s games, but they still don’t rate as impressive as the below-field-level tickets I had for a Padre’s game right next to the dugout were if I put my arm straight out, my finger was literally touching the dirt on the field and my yelling as a fan was able to cause a spat between the home plate umpire and the visiting team’s coach!

Lets Fix This

Jeffrey Zeldman does an excellent job of indicating why and what is wrong with the internet and social media and points to IndieWeb.org as a way forward.

If you’re personally using WordPress as a possible solution to those problems, I’m happy to help point to some quicker ways for people to rapidly implement them without struggling as much as many others have along the way.

(If WordPress isn’t your thing, the wiki has a plethora of other pathways depending on your CMS or programming language of choice–just search. It is abundantly clear that no single CMS is going to dig us out of the hole.)

I’ve written about and documented how I’ve gotten a lot of IndieWeb related technologies running on my own website. In many cases, these solutions are simple plugin downloads and activations, though it helps to have an idea of what they all do and how they may help.

I was particularly impressed with Brent Simmons’ post yesterday explaining how he was using his particular talents to further the cause. Though some may feel overwhelmed at the apparent size and scope of the problem, many diverse hands chipping away at small pieces can help to make a major dent in the problem.

Jen Simmons has indicated a useful paradigm structured around making resolutions with simple concrete steps and deadlines.

I have no doubt that even if you’re not a developer or programmer that you can help. If you’re not sure, ask me or others how.

I hope you’ll join us. Let’s roll up our sleeves and #​LetsFixThis.

A brief reflection on Kate Bowles’ keynote at OER 19

Kate Bowles gave a great Keynote at the Open Education Resources 2019 (OER19) conference in Galway last night. In it she indicates how politicians, economists and even universities themselves measure their growth at the level of imports/exports and even compare it with mining in a cynical way to describe the movement of their educational resources and students.

Slide from Bowle's talk with an image of a heavily mined and damaged site. The slide is entitled "This is how the expanded university talks" and contains the quote:'What do iron ore, coal and Australia'sinternational education sector have in common? They're the top three exports for Australia, with recent international trade data showing that the international education sector contributed AUS$32.2 billion (US$24.7 billion) dollars to the economy in 2017' --ICEF Monitor, 2018

Slide from Bowle's talk with an image of a heavily mined and damaged site. The slide is entitled "This is how the expanded university talks" and contains the quote: '81 per cent of Australians grasp that international education makes a major contribution to national prosperity. This overwhelming public support rises again--to 85 per cent--when Australians learn exactly how much income this sector brings into the Australian economy each year.'--Universities Australia, March 2019
A slide from

“What a chilling thing to say about young people crossing the world to learn.” –Kate Bowles (in response to the slide immediately above)

The fact that businesses, governments, and even universities themselves would take such an ugly standpoint on teaching and learning is painful. It reminds me that one of the things that I think the open IndieWeb movement gets right is that it is people-centric first and foremost. If you can take care of people at the most base level, then hopefully what gets built upon that base–while still watching it carefully–will be much more ethical.

The IndieWeb is a people-focused alternative to the “corporate web”.

As a result of this people-centric vision, I’m seeing a lot less of the sort of ills, unintended consequences, and poor emergent behaviors caused by the drive toward surveillance capitalism within the giant social media silos like Facebook, Twitter, Instagram, et al.

I’m reminded of a part of the thesis that Cesar Hidalgo presents in Why Information Grows: The Evolution of Order from Atoms to Economies of the idea of the personbyte and what that looks like at a group level, then a corporate level, and I wonder how it may grow to the next level above that. Without ultimately focusing on the person at the bottom of the pyramid however, we may be ethically losing sight of where we’re going and why. We may even be building an edifice that is far more likely to crumble with even worse unintended consequences.

Here’s her talk in full. I highly recommend it.

https://youtu.be/ff1NBTLjWj8?t=1900,3943

Ideas for IndieWeb-ifying Hypothes.is

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. [1] [2] [3] [4]

Overview

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. screen capture of the content at URL https://hypothes.is/a/_tLJyA-cEemE-qPndyfQow 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.

It is great that they make the first URL available with the relevant data. This in itself is very IndieWeb friendly to have each annotation in the system have its own stand-alone URL. Sadly all the data on this particular page seems to be rendered using JavaScript rather than being raw HTML. (See also js;dr.) This makes the page human readable, but makes it much more difficult for machines to read or parse these pages. I’d recommend three simple things to make Hypothes.is more (Indie)Web friendly:

  1. Render the annotation on the first URL example in full HTML instead of JavaScript;
  2. Add the appropriate microformats classes on those pages;
  3. 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:

  1. 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.
  2. Highlights of particular passages: In IndieWeb parlance, these are roughly equivalent to quotations of content.
  3. 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.

Page note with no annotations (bookmarks)

Example from https://hypothes.is/a/_tLJyA-cEemE-qPndyfQow (but without the annotation portion)


<div class="h-entry">
    <a class="p-author h-card" href="https://hypothes.is/users/judell">judell</a>
    Public on <https://hyp.is/_tLJyA-cEemE-qPndyfQow/boffosocko.com/?p=55708991>"Chris Aldrich on the IndieWeb"</a> (<a class="u-bookmark-of" href="https://boffosocko.com/?p=55708991">boffosocko.com</a>)
    <time class="dt-published" datetime="2019-01-11 18:052:00" title="Friday, Jan 11, 2019, 6:52 PM"><a href="https://hypothes.is/a/_tLJyA-cEemE-qPndyfQow" target="_blank" rel="noopener">Jan 11</a></time>
    
<div class="p-category">tag-name1</div>
 
<div class="p-category">tag-name2</div>
 
<div class="p-category">tag-name3</div>
</div>

Page note with an annotation

(aka a reply, but could alternately be marked up as above as a bookmark) Example from https://hypothes.is/a/_tLJyA-cEemE-qPndyfQow


<div class="h-entry">
    <a class="p-author h-card" href="https://hypothes.is/users/judell">judell</a>
    Public on <https://hyp.is/_tLJyA-cEemE-qPndyfQow/boffosocko.com/?p=55708991>"Chris Aldrich on the IndieWeb"</a> (<a class="u-in-reply-to" href="https://boffosocko.com/?p=55708991">boffosocko.com</a>)
    <time class="dt-published" datetime="2019-01-11 18:052:00" title="Friday, Jan 11, 2019, 6:52 PM"><a href="https://hypothes.is/a/_tLJyA-cEemE-qPndyfQow" target="_blank" rel="noopener">Jan 11</a></time>
    
<div class="e-content">
        
<p>This is web thinking in action.</p>
<p>https://blog.jonudell.net/2011/01/24/seven-ways-to-think-like-the-web/</p>
<p>Well done!</p>

    </div>

    
<div class="p-category">tag-name</div>
</div>

Highlights (aka quotes)

Example from https://hypothes.is/a/_tLJyA-cEemE-qPndyfQow


<div class="h-entry">
    <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>

    
<div class="p-category">IAnnotate2017</div>
</div>

Annotations (replies)

Example from https://hypothes.is/a/9JrX5lf9RraeLKKn9WwmMQ


<div class="h-entry">
    <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.
<blockquote>
    
   
<div class="e-content">
        
<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>

    </div>

    
<div class="p-category">tag-name</div>
</div>

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.

Additional resources with examples

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.

Reflections on WordCamp Santa Clarita Valley 2019

I really had a grand time at WordCamp Santa Clarita Valley yesterday. I’d like to thank the visionary Joe Simpson, Jr. and his entire group of fantastic organizers and kind volunteers for putting the entire thing together. I couldn’t imagine a better launch for a brand new camp.

College of the Canyons was a fantastic location for the camp and even had some excellent outdoor patio and dining space for lunch.

I do wish I’d been able to make my schedule work out to have been able to attend on Friday. I’m particularly bummed that I didn’t get to see Glenn Zucman’s presentation as he’s always doing some of the most interesting and creative things with WordPress. I’ll wait patiently for WordPress.tv to deliver it for me.

Some of my favorite highlights:

  • David Nuon wearing a blonde Richard Dean Anderson wig during his talk MacGyver plays with blocks: Using the Gutenberg editor in new and surprising ways
  • Chatting with Kat Christofer of Woo Commerce about how she and the Woo team create better documentation for their product. I think there’s some things we can learn for documenting pieces of the IndieWeb experience with WordPress. She also mentioned the beginning of a new short Mustang road trip.
  • Joseph Dickson going old school on Upgrading Kubrick for Gutenberg. His highlighting the fact that the editor is able to better mirror the ultimate output as a time saver is an intriguing idea.
  • Not that they aren’t always in general, and I didn’t think about it until reflecting on it today, but I also want to mention the spectacular diversity of speakers and attendees at the camp. It really made for a better and more well-rounded experience. I’ll give all the credit to Joe and his team who I suspect are directly responsible for designing it to be that way from the very beginning.

On a more personal level, my two favorite parts included:  Seeing the viceral reactions of a handful of people as the proverbial light switch was turned on when they realized the power and flexibility of the posting interfaces provided by micropub clients during my talk. There was also a palpable rush at the end while using a few minutes of extra time demoing some examples of my website and and the power of Micropub, Webmention, and backfeed along with some other IndieWeb goodness. I’ve already had a number of people following up with additional questions, conversations, and emails.

For those who may have missed them, here is a link to my slides from the Micropub and WordPress talk and a link to some of the bigger pieces I’ve wrtitten about with respect to WordPress and IndieWeb technologies in the past. Naturally, these are only a supplement to the hundreds of others who are working in and documenting the space

I’ll also give a special thanks to Joseph Dickson for the photo/tweet of me just before the talk:

A selfie by Chris Aldrich with other campers in the background
Hanging out with old friends and new after WordCamp on the patio at Draconum.
Joseph Dixon, Erik Blair

Thoughts on open notebooks, research, and social media

I remember thinking over a decade ago how valuable it would be if researchers kept open notebooks (aka digital commonplace books) like the one Kimberly Hirsh outlines in her article Dissertating in the Open: Keeping a Public Research Notebook. I’d give my right arm to have a dozen people in research areas I’m interested in doing this very thing!

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?)

Naturally having aggregation services like indieweb.xyz, building planets, using OPML subscriptions, or the coming wave of feed readers could make a lot of these things easier, but we’re already right on the cusp for people who are willing to take a shot for doing this type of research online on their own websites and out in the open.

Want to try out some of the above? I’m happy to help (gratis) researchers who’d like to experiment in the area to get themselves set up. Just send me a note or give me a call.

Sparklines of recent activity on my website

Inspired a bit by the work of Jeremy Keith and others, I’ve recently been playing around with some sparklines on my website. While tinkering around with things, mostly on the back end of my site, I’ve tried out several WordPress-specific plugins, both to see how they’re built and the user interfaces they provide. 

There are several simple plugins for adding sparklines to WordPress websites including:

  • Activity Sparks plugin by Greg Jackson which adds some configurable functionality for adding sparklines to WordPress sites including for posts and comments as well as for tracking categories/tags.
  • Sparkplug by Beau Lebens has similarity to the Activity Sparks plugin (above), but with a slightly older looking and somewhat less refined output.

At present, I’m using the Activity Sparks plugin in my sidebar to display the recent activity on my site in terms of my posting frequency and the comment frequency. One chart provides the daily activity on my site over the past 3 months while the other provides the monthly activity over the past 5 years.

When on particular category pages, you can see the posting velocity for those particular categories in these respective time periods. While on the homepage and other miscellaneous pages, you can see the aggregate numbers for the website.

Generally I don’t care very much about the statistics, but in aggregate they can sometimes be fun to look at. As quick examples, I can tell roughly by looking at the 5 year time span when I added certain posting features to my website or that time my site got taken down by HackerNews.


hat tip to Khürt Williams who reminded me I needed to circle back around and finish of a small piece of this project and document it.

Brief thoughts on receiving read posts

I’ve been posting “read” posts/notes/links–reads, for simplicity– to my own website for a while to indicate articles and material which I’ve spent the time to read online (and oftentimes even offline). While I automatically send notifications (via webmentions or trackbacks/pingbacks) to notify the original articles, few sites know how to receive them and even less actively display them.

It’s only in the last few weeks that my site has actively begun receiving these read posts, and I have to say it’s a really lovely and heartwarming experience. While my site gets several hundreds of hits per day, and even comments, likes and other interactions, there’s just something additionally comforting in knowing that someone took the time to read some of my material and posted that fact to their own website as a reminder to themselves as well as a signal to others.

Mentally there’s a much larger value in receiving these than likes or tweets with links from Twitter, in part because there’s a larger indicator of “work” behind these signals. They’re not simply an indicator that “I saw the headline of this thing somewhere and shared it because the friction of doing so was ridiculously low”, but they represent a lot of additional time, effort, and energy and thus are a stronger and more valuable signal (both to me and hopefully to others.)

I suppose I’ll eventually need to preface that these are especially interesting to me now when I’m only getting small numbers of them from particular people who I know are deeply engaging with specific portions of my past work. I can also imagine a day when these too may become spam-like, and I (or others) are inundated with them. But for now I’ll just revel in their joyous, little warmth.

It’s interesting from my website’s administrative interface to see the path individuals are taking through my thoughts and which topics they may find interesting. I don’t think that many (any?) social media silos provide these types of views which may actually help to spark future conversations based on our shared interests.

Of course I must also admit that, as nice as these read notifications have been, they actually pale in comparison to the rest of the work that the particular sender has been doing in replicating large portions of the sorts of things I’m doing on and with my website.  I hope all of our work, experimenting, and writing is infectious and will help others out in the future.

Modifying some of the taxonomies on my digital commonplace book

Spent a few minutes today cleaning up the various categories and tags within my digital commonplace book (aka website). Some of the automated methods I use as well as my general carelessness and fat fingers on mobile introduce spelling errors in some of these taxonomies. I also find that sometimes when choosing them from the pre-populated lists my website’s back end makes it more difficult to choose the canonical one when there are several there by error.

These issues tend to flatten these taxonomies out and make them much more difficult to search (or for others to be able to subscribe to reliably).

As an example, having tags “Domain of One’s Own” and “Domain of Ones Own” (with and without the apostrophe) as well as the acronym “DoOO” can be difficult or frustrating to use. Things get even more complicated when I hold the mental model that these concepts are just a sub-set of the broader idea of the “IndieWeb” or what I sometimes tag things as “IndieWeb for Education”. This is all much easier for me, but may be more difficult for newcomers to the site who know what one shorthand means, but are unaware of the others and thus miss details, references, or content that may have a lot of value for them.

I’ve cleaned up and concatenated many of these troublesome tags (roughly A-D alphabetically and other sections at random), but there’s still a lot of distance to go. There are 66 categories–some are hidden or used for programmatic purposes–and nearly 7,000 tags! The top 100 tags are used 30 or more times on the site and the second century of tags are used between 20 and 30 times each. At the long end of the tail there are about 4,000 tags with either 1 or no uses.

I’m promoting the economics tag to that of a category since it’s a topic in which I have a lot of interest and content. I also have a number of other tags related to sub-areas of economics. (If you were subscribed to this individual tag, you may want to fix your feed.) Other potential considerations for promotion included the topics of history, physics, and web development. I also noticed that there’s a tag for mathematics with 70 instances despite the fact that there’s already a category for it with 315 posts already–I’ll have to figure out how that happened and clean it up another day. And look, there’s somehow a tag for “math” too. Ugh!

I also put both the Quotes and Events categories under the parent category of Social Stream, though I plan on leaving them showing in the hierarchy–unlike some post kinds–as there are many legacy posts and likely future posts that aren’t just events I’m hosting, but events that are of interest to me in general. Naturally the more important events (to me) will appear in my RSVP posts. With any good luck courtesy of WordPress, links to the old versions should still work or redirect to the new hierarchy.

The manual or even automated effort of fixing or tweaking some of these things feels problematic, and I’m just looking at just my own website. I’m curious to delve into some research on taxonomies and folksonomies to see how something like this may be better systematized and/or automated. Of course categorizing things is somethings humans really love doing, but I’m not sure how deep down the rabbit hole it’s worth going for my own work. Besides, someone far smarter than I will likely crack the discovery nut from an IndieWeb perspective. Fortunately I can use the site search queries for several search engines to more quickly find the things I’m looking for without needing these taxonomies. So perhaps I’ll put some of the exercise off to another day by filing this in my tag.

📅 Micropub and WordPress: Custom Posting Applications at WordCamp Santa Clarita Valley 2019

Details

Come for two days of WordCamp Santa Clarita Valley on Friday and Saturday April 5 & 6, 2019, featuring an IndieWeb-related talk by me on Saturday afternoon.
 
I will be at WordCamp both days to chat with participants about the IndieWeb and implementing its principles and related plugins using WordPress in addition to giving a featured talk on Saturday afternoon.

Micropub and WordPress: Custom Posting Applications

The W3C recommended Micropub specification (2017) allows developers to create custom posting applications for a wide variety of data targeting any content management system that supports the spec.
I will provide an overview of the setup and use of the available plugin and endpoint for WordPress. I’ll also provide a beginner walk-though for a variety of client applications like Quill, Teacup, OwnYourGram, OwnYourSwarm, Omnibear, and others that allow one to easily post status updates, bookmarks, likes, check-ins/location data, photos, and more directly to their WordPress sites.
We’ll also talk about how developers can create custom posting interfaces to drastically simplify content creation and posting for clients in ways that can be even simpler and more flexible than working with Gutenberg.

When

My talk on “Micropub and WordPress: Custom Posting Applications” will take place on  from

Where

College of the Canyons
Dr. Dianne G. Van Hook University Center
26455 Rockwell Canyon Road
Santa Clarita, California 91355
USA

Tickets

This post is an “indie event” so feel free to RSVP by adding yourself in the comments section below or by sending a webmention so I’ll know to expect you, but be sure to purchase tickets in advance. General admission is $40 and includes:

  • Two days of sessions of everything WordPress — design, development, e-commerce, marketing and more!
    • Day 1 (Friday, April 5) will focus on getting started with WordPress and WooCommere;
    • Day 2 (Saturday, April 6) offers a full slate of WordPress content spread across three simultaneous tracks;
  • Lunch on Friday & Saturday, including snacks and refreshments;
  • Swag and sponsor goodies; and
  • Afterparty Saturday (details to follow)

Any questions? Respond below or ask me in the IndieWeb chat. I look forward to seeing everyone there!

IndieWebCamp Online 2019 and What to Expect at Camps

Over the weekend, I attended my first online-only IndieWebCamp thanks in large part to some excellent planning and execution by Eddie Hinkle, Greg McVerry, and David Shanske. I’ve attended many camps both in person and remotely but somehow managed to miss that first IndieWebCamp Online in 2014.

I remember a few years back hosting my very first IndieWebCamp in Los Angeles. I had only done a small handful of HomeBrew Website Club meetups up to that point, so I was excited that the community rallied around the camp to help make it what it was particularly since I didn’t have half a clue. At the time, I remember being excited that one of the co-founders of the BarCamp concept was attending not only the first BarCamp I had ever hosted, but had ever attended–sure, no pressure there, right?!. While there, I was also floored to see one of the most experienced web designers in the world ever-so-patiently sit down with several people on a volunteer basis and help them learn to write raw HTML for the first time to make their very first websites. The entire thing was a mix of kindness, excitement, and exhilaration I’ve only ever seen  and experienced at IndieWebCamps. 

This past weekend was not very different from that first camp. Over the weekend, however, I did hear from a few folks who said that they had issues finding and accessing resources to make their camp experiences like the ones I’ve experienced. Sadly, some of them gave up altogether. It’s often the case that the old hands and organizers, even with the best intentions, can’t think of everything or remember what it was like before they knew what they know now. In searching through the IndieWeb wiki, I noticed that there were few resources directed specifically towards first time campers. While there’s a LOT there for newcomers (maybe even too much), all of it is very spread out and takes too much time and effort to sift through quickly, so I spent some time at the end of camp to put together a quick overview of what to expect at an IndieWebCamp as well as some technology basics for campers and people new to the IndieWeb. Naturally there are links to other resources for those who want more, but hopefully it’s got the immediate resources that many will be looking for.

If you’re an “old hand” I’d ask you to read over the page and add anything I may have missed or which could assuredly be improved, clarified, or even shortened.

If you’re new to the game, I’d welcome you to let us know what other things might worry you, you’re unsure of, or don’t get going into such a camp or which might not be clear on that page or any of the other pages one might access when first approaching any of the camps and their resources. (You can give me your feedback directly in the comments below or via your favorite mode of communication. I’ll add them and answers to the wiki on yours and others’ behalf.)

Hopefully over time, we’ll have some better resources for first time campers to have the same sort of first time camp experiences I managed to get lucky enough to stumble into myself that first time and had yet again this weekend.

See you at the next camp!

Reminder: IndieWebCamp Austin (& streaming) is this Weekend 2/23-24

Here’s a quick reminder that IndieWebCamp Austin is this weekend. If you’re in the , , or spaces and can’t attend in person, there should be some interesting conversations and work that can be done to participate remotely (via chat, video, etc.) to help you improve and better use your personal website.

We welcome anyone who is interested, so feel free to pass the invitation along to your colleagues, students, and friends who are interested in using their websites as more than “just a business card” or “just a blog”. Even if you don’t yet have a domain or web hosting, show up and we’ll see what we can help you create over the weekend. 

Feel free to come with ideas, propose an online session (maybe?!!), or just watch, listen, and absorb ideas from others. Find out more about what you can do with a simple domain name and website.

Perhaps sometime in the future we ought to have an IndieWebCamp specifically for the education space?! Let me know if you’re interested in helping to organize one.

Of course if you can’t join us this weekend, there is an IndieWebCamp Online coming up on 

Don’t worry if you can’t RSVP this late, just show up… We all hope to see you there!


👤 Stephen Downes,William Ian O’ByrneGreg McVerryKimberly Hirsh,  John JohnstonAaron DavisCathie LeBlanc,   Kathleen FitzpatrickNate AngellRobin DeRosa, Jon Udell, Dan CohenTim OwensTaylor JadinMark GrabeRick WysockiDoug HoltonJim GroomAnelise H. ShroutJeffrey KeeferJeremy DeanAudrey WattersDan ScottAntonio Sánchez-PadialMiriam AveryTom CritchlowKen BauerKim HansenLarry Sanger 

A Followers Page on My Personal Website using Webmention

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.

A hashtag functionality hiding with the ActivityPub for WordPress Plugin

I discovered yesterday that when I added a # (or hash, pound sign, octothorpe, et al.) in front of any word on my site, it created a native version of something akin to Twitter’s functionality, but it was working on my own website. The primary difference was that the hashed word on the page was, upon publishing the post, automatically wrapped with a URL for that tag on my own website, and it was also automatically added to the list of tags for the post. (As an illustrative example, I’m doing the same thing with the word hashtag earlier in this paragraph.)

I had previously considered adding this type of functionality myself to make syndicating posts (via POSSE) from my own website to sites like Twitter or Mastodon easier. There are a small handful of plugins in the WordPress repository that will add that type of functionality already, but I had eschewed them generally, not wanting yet-another-plugin.

I spent some time trying to track down the plugin that was effecting this change. I couldn’t remember having installed something that would have done this sort of functionality, and I had noticed it only by complete happenstance. I eventually gave up my search halfway through only to later get a message from Matthias Pfefferle that his ActivityPub plugin was the likely culprit. I probably should have guessed as I had literally spent part of that very day looking at the code in his IndieWeb News plugin on GitHub which had code that essentially did the exact same thing, but for a narrower set of results.

The upside of the entire process is that the functionality is now built into a plugin which I’d be using otherwise. As of today’s update, there’s now also a setting for the plugin that will allow one to turn the functionality on or off–I, for one, am definitely keeping it. Of course if you’re looking for the functionality without the extra overhead of the ActivityPub code, I believe you can use Matthias’ WordPress hashtags plugin which does only this.

I’ve never quite liked that Twitter uses @names highlighted within posts. All the additional cruft in Twitter like the “@” and “#” prefixes, while adding useful functionality, have always dramatically decreased the readability and enjoyment of their interface for me. So why not just get rid of them?!

Of course I also remember myself railing against the addition of the symbols @ and # in general text not too long ago, so I’m also now brainstorming and contemplating how one might more quickly (and even in a DRY manner) do this sort of tagging using some other (probably easily accessed, but infrequently used) symbol which could be hidden visually, but which would allow one to add these sorts of tags and the appropriate microformats markup. I suspect there may be some sort of clever CSS I may be able to use too, though it would be better not so that it works easily via syndication and in feed readers with different styling. The goal should be that it would work as plain text from a Micropub client too. With any good luck someone may have thought of it already, otherwise I may be able to hack something simple together to do roughly what I want. The upside would be that simply by writing your post, you could simultaneously be tagging it as well and not need to bother going in and separately adding additional tags!