Feed reader revolution

It's time to embrace open & disrupt social media
Editor’s note: This post originally appeared at AltPlatform.org.

The state-of-the-art in feed readers was frozen in place sometime around 2010, if not before. By that time most of the format wars between RSS and Atom had long since died down and were all generally supported. The only new features to be added were simple functionalities like sharing out links from readers to social services like Facebook and Twitter. For fancier readers they also added the ability to share out to services like Evernote, OneNote, Pocket, Instapaper and other social silos or silo related services.

So the real question facing companies with stand alone traditional feed reader products–like Feedly, Digg Reader, The Old Reader, Inoreader, Reeder, NewsBlur, Netvibes, Tiny Tiny RSS, WordPress reader–and the cadre of others is:

  • What features could/should we add?
  • How can we improve?
  • How can we gain new users?
  • How can we increase our market share?

In short the primary question is:

What should a modern RSS feed reader be capable of doing?

Continue reading “Feed reader revolution”

Syndicated copies to:

📺 Domains2017 Conference: Tuesday June 6, 3:00pm with the OU Crew | YouTube

Tuesday June 6, 3:00pm with the OU Crew from YouTube
For more information see the blog post for the event at http://virtuallyconnecting.org/blog/2017/05/31/domains17/

Indieweb for Education: Some thoughts after the Domains 17 Conference

There’s some interesting discussion of Indieweb-related principles in this live-streamed (and recorded) conversation (below) from the Domains 2017 conference for educators and technologists which covers a lot of what I’d consider to be Indieweb for Education applications.

In particular, some asked about alternate projects for basing education projects around which aren’t WordPress. Some suggested using WithKnown which is spectacular for its interaction model and flexibility. I suspect that many in the conversation haven’t heard of or added webmentions (for cross-site/cross-platform conversations or notifications) or micropub to their WordPress (or other) sites to add those pieces of functionality that Known comes with out of the box.

Another section of the conversation mentioned looking for ways to take disparate comments from students on their web presences and aggregating them in a more unified manner for easier consumption by the teacher and other students (as opposed to subscribing to each and every student’s RSS feed, a task which can be onerous in classrooms larger than 20 people). To me this sounded like the general concept of a planet, and there are a few simple ways of accomplishing this already, specifically using RSS.

I was also thrilled to hear the ideas of POSSE and PESOS mentioned in such a setting!

An Invitation to Attendees

I’d invite those in attendance at the Domains 17 conference to visit not only the Indieweb wiki, but to feel free to actively participate in the on-going daily discussions (via IRC/Slack/Matrix/Web). I suspect that if there’s enough need/desire that the community would create a dedicated #education channel to help spur the effort to continue to push the idea of owning one’s own domain and using it for educational purposes out into the mainstream. The wiki pages and the always-on chat could be useful tools to help keep many of the educators and technologists who attended Domains17 not only connected after the event, but allow them to continue to push the envelope and document their progress for the benefit of others.

I’ll admit that one of my favorite parts of the Indieweb wiki is that it aggregates the work of hundreds of others in an intuitive way so that if I’m interested in a particular subject I can usually see the attempts that others have made (or at least links to them), determine what worked and didn’t for them, and potentially find the best solution for my particular use case. (I suspect that this is some of what’s missing in the “Domains” community at the moment based on several conversations I heard over the past several days.)

If you’d like, please add yourself to the growing list of Indieweb related educators and technologists. If you need help connecting to any of the community resources and/or chat/IRC/Slack, etc. I’m more than happy to help. Just call, email, or contact me via your favorite channel.

Syndicated copies to:

📖 Read pages 106-114 of Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern

📖 Read pages 106-114 of Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern

Finishing up chapter 6

Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern

📖 Read pages 100-106 of Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern

📖 Read pages 100-106 of Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern

Chapter 6 is pretty important. After going over the rest of the text, I’ll be sure to come back and re-read this particular section.

Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern

Title-less Status Updates for Micro.blog

Micro.blog just launched in beta recently and one of the biggest things burning up the airwaves there is how to easily post content from one’s own site as notes without including titles. Why? If a post has a title, then micro.blog thinks it’s an article and just posts the title along with a permalink to it rather than the desired content of the status update.

In the long run and for easier mass adoption, I’m hoping Manton can figure out how to parse RSS feeds in a simpler way so that users don’t need to do serious gymnastics to import their microblog posts from other sources. I’d imagine it’s far easier for him to adapt to the masses than for the masses to adapt to micro.blog. At the very worst, he could create a checkbox on the RSS import feeds to indicate which feeds are status updates and which aren’t and this would quickly solve the problem for the average user as most CMSes allow users to define custom feeds based on content type.

While there are a number of people doing things from simply adding date/time stamps (which micro.blog ignores) to functions.php tweaks to to custom plugins, some of which I’ve tried, I thought I’d come up with my own solution which has helped to kill two proverbial birds with one stone. (Note: I’ve listed some of these others on the Indieweb wiki page for micro.blog.)

The other day, I’d had a short conversation about the issue in the Indieweb chat with several people and decided I’d just give up on having titles in notes altogether. Most people contemplating the problem have an issue doing this because it makes it more difficult to sort and find their content within their admin UI dashboard which is primarily keyed off of the_title() within WordPress. I share their pain in this regard, but I’ve also been experiencing another admin UI issue because I’ve got a handful of plugins which have added a dozen or so additional columns to my posts list. As a result the titles in my list are literally about four characters wide and stretch down the page while knucklehead metadata like categories needlessly eat up massively wide columns just for fun. Apparently plugins aren’t very mindful of how much space they decide to take up in the UI, and WordPress core doesn’t enforce reasonable limits on these things.

So my solution to both problems? If found a handly little plugin called Admin Columns with over 80,000 users and which seems to be frequently updated that allows one to have greater simple control over all of the columnar UI interfaces within their sites.

In just a few minutes, I was able to quickly get rid of several columns of data I’ve never cared about, expand the title column to a reasonable percentage of the space so it’s readable, and tweak all the other columns to better values. Even better, I was able to add the slug name of posts into the UI just after the title columns, so I can leave status update titles empty, but still have a field by which I can see at least some idea of what a particular post was about.

My first title-less status update with a descriptive slug
Syndicated copies to:

Checkin Cross Campus Old Pasadena

Checkin Cross Campus Old Pasadena

WordPress Pasadena Meetup for April

Syndicated copies to:

Checkin Cross Campus Old Pasadena

Cross Campus Old Pasadena

Attending the Advanced WordPress Meetup (Advanced Topics April 2017 Edition)

Pasadena, California, United States of America

Syndicated copies to:

📖 Read pages 57-103 of Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern

📖 Read pages 57-103 of Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern

The review of core had some resources I’m sure I knew about and have even used before, but somehow forgotten from long disuse. The quick review of the loop was useful to have again particularly as I delve into some themeing work these past few weeks.

The examples they provide are pretty solid from a pedagogic standpoint.

Professional WordPress: Design and Development 3rd Edition by Brad Williams, David Damstra, and Hal Stern
Syndicated copies to:

@Mentions from Twitter to My Website

An outline of how I used Indieweb technology to let Twitter users send @mentions to me on my own website.

You can tweet to my website.

One of my favorite things about the indieweb is how much less time I spend on silo sites like Facebook and Twitter. In particular, one of my favorite things is not only having the ability to receive comments from many of these sites back on the original post on my own site, but to have the ability for people to @mention me from Twitter to my own site.

Yes, you heard that right: if you @mention me in a tweet, I’ll receive it on my own website. And my site will also send me the notification, so I can turn off all the silly and distracting notifications Twitter had been sending me.

Below, I’ll detail how I set it up using WordPress, though the details below can certainly be done using other CMSes and platforms.

rel=”me”

The rel=”me” is put on the link that wraps this Twitter icon in my h-card on my homepage.

On my homepage, using a text widget, I’ve got an h-card with my photo, some basic information about me, and links to various other sites that relate to me and what I’m doing online.

One of these is a link to my Twitter account (see screenshot). On that link I’m using the XFN’s rel=”me” on the link to indicate that this particular link is a profile equivalence of my identity on the web. It essentially says, “this Twitter account is mine and also represents me on the web.”

Here’s a simplified version of what my code looks like:

<a href="https://twitter.com/chrisaldrich" rel="me">@chrisaldrich</a>

If you prefer to have an invisible link on your site that does the same thing you could alternately use:

<link href="https://twitter.com/twitterhandle" rel="me">

Similarly Twitter also supports rel=”me”, so all I need to do there is to edit my profile and enter my website www.boffosocko.com into the “website” field and save it. Now my Twitter profile page indicates, this website belongs to this Twitter account. If you look at the source of the page when it’s done, you’ll see the following:

<a class="u-textUserColor" title="http://www.boffosocko.com" href="https://t.co/AbnYvNUOcy" target="_blank" rel="me nofollow noopener">boffosocko.com</a>

Though it’s a bit more complicated than what’s on my site, it’s the rel=”me” that’s the important part for our purposes.

Now there are links on both sites that indicate reciprocally that each is related to the other as versions of me on the internet. The only way they could point at each other this way is because I have some degree of ownership of both pages. I own my own website outright, and I have access to my profile page on Twitter because I have an account there. (Incidentally, Kevin Marks has built a tool for distributed identity verification based on the reciprocal rel=”me” concept.)

Webmention Plugin

Next I downloaded and installed the Webmention plugin for WordPress. From the plugin interface, I just did a quick search, clicked install, then clicked “activate.” It’s really that easy.

It’s easy, but what does it do?

Webmention is an open internet protocol (recommended by the W3C) that allows any website to send and receive the equivalent of @mentions on the internet. Unlike sites like Twitter, Facebook, Medium, Google+, Instagram, etc. these mentions aren’t stuck within their own ecosystems, but actually work across website borders anywhere on the web that supports them.

I use the domain name BoffoSocko as my online identity.

The other small difference with webmention is instead of using one’s username (like @chrisaldrich in my case on Twitter) as a trigger, the trigger becomes the permalink URL you’re mentioning. In my case you can webmention either my domain name http://www.boffosocko.com or any other URL on my site. If you really wanted to, you could target even some of the smallest pieces of content on my website–including individual paragraphs, sentences, or even small sentence fragments–using fragmentions, but that’s something for another time.

Don’t use WordPress?

See if there’s webmention support for your CMS, or ask your CMS provider or community, system administrator, or favorite web developer to add it to your site based on the specification. While it’s nice to support both outgoing and incoming webmentions, for the use we’re outlining here, we only need to support incoming webmentions.

Connect Brid.gy

Sadly, I’ll report that Twitter does not support webmentions (yet?!) otherwise we could probably stop here and everything would work like magic. But they do have an open API right? “But wait a second now…” you say, “I don’t know code. I’m not a developer.”

Worry not, some brilliant engineers have created a bootstrap called Brid.gy that (among many other useful and brilliant things) forces silos like Twitter, Facebook, Google+, Instagram, and Flickr to send webmentions for you until they decide to support them natively. Better, it’s a free service, though you could donate to the ASPCA or EFF in their name to pay it forward.

So swing your way over to http://brid.gy and under “Get started” click on the Twitter logo. Use OAuth to log into Twitter and authorize the app. You’ll be redirected back to Brid.gy which will then ensure that your website and Twitter each have appropriate and requisite rel=”me”s on your links. You can then enable Brid.gy to “listen for responses.”

Now whenever anyone @mentions you (public tweets only) on Twitter, Brid.gy will be watching your account and will automatically format and send a webmention to your website on Twitter’s behalf.

On WordPress your site can send you simple email notifications by changing your settings in the Settings >> Discussion dashboard, typically at http://www.exampl.com/wp-admin/options-discussion.php. One can certainly use other plugins to arrange for different types of notifications as well.

Exotic Webmentions

A bonus step for those who want more control!

In the grand scheme of things webmentions are typically targeted at specific pages or posts on your site. General @mentions on Twitter not related to specific content on your site will usually be sent to your homepage. Over time, this may begin to get a bit overwhelming and may take your page longer to load as a result. An example of this is Kevin Marks’ site which has hundreds and hundreds of webmentions on it. What to do if this isn’t your preference?

In my case, I thought it would be wise to collect all these unspecific or general mentions on a special page on my site. I decided to call it “Mentions” and created a page at http://boffosocko.com/mentions/.

Then I inserted a small piece of custom code in the functions.php file of my site’s (child) theme like the following:

// For allowing exotic webmentions on homepages and archive pages

function handle_exotic_webmentions($id, $target) {
// If $id is homepage, reset to mentions page
if ($id == 55669927) {
return 55672667;
}

// do nothing if id is set
if ($id) {
return $id;
}

// return "default" id if plugin can't find a post/page
return 55672667;
}

add_filter("webmention_post_id", "handle_exotic_webmentions", 10, 2);

This simple filter for the WordPress Webmention plugin essentially looks at incoming webmentions and if they’re for a specific page/post, they get sent to that page/post. If they’re sent to either my homepage or aren’t directed to a particular page, then they get redirected to my /mentions/ page.

In my case above, my homepage has an id of 55669927 and my mentions page has an id of 55672667, you should change your numbers to the appropriate ids on your own site when using the code above. (Hint: these id numbers can usually be quickly found by hovering over the “edit” links typically found on such pages and posts and relying on the browser to show where they resolve.)

Tip of the Iceberg

Naturally this is only the tip of the indieweb iceberg. The indieweb movement is MUCH more than just this tiny, but useful, piece of functionality. There’s so much more you can do with not only Webmentions and even Brid.gy functionality. If you’ve come this far and are interested in more of how you can better own your online identity, connect to others, and own your data. Visit the Indieweb.org wiki homepage or try out their getting started page.

If you’re on WordPress, there’s some additional step-by-step instructions: Getting Started on WordPress.

Syndicated copies to:

Our comment quiz module is now Open Source | NRKbeta

Our comment quiz module is now Open Source by Henrik Lied (NRKbeta)
Our quiz module is now open source on GitHub. After launching our comment quiz module, we’ve received a lot of questions about whether it’s available for download. Now it is.

Continue reading “Our comment quiz module is now Open Source | NRKbeta”

Syndicated copies to: