Audio edition for This Week in the IndieWeb for July 29th - August 4th, 2017. This week features a brief interview with Ben Werdmüller recorded at IndieWeb Summit 2017. Music from Aaron Parecki’s 100DaysOfMusic project: Day 85 - Suit, Day 48 - Glitch, Day 49 - Floating, Day 9, and Day 11 Thanks to everyone in the IndieWeb chat for their feedback and suggestions. Please drop me a note if there are any changes you’d like to see for this audio edition!
Category: IndieWeb
👓 Link: The futility of science communication conferences by John Hawks
Rich Borschelt is the communication director for science at the Department of Energy, and recently attended a science communication workshop. He describes at some length his frustration at the failed model of science communication, in which every meeting hashes over the same futile set of assumptions: “Communication, Literacy, Policy: Thoughts on SciComm in a Democracy. After several other issues, he turns to the conferences’ attitude about scientists...
I recently came across Science Sites, a non-profit web company, courtesy of mathematician Steven Strogatz who has a site built by them. In some sense, I see some of what they’re doing to be enabling scientists to become part of the IndieWeb. It would be great to see them support standards like Webmention or functionality like Micropub as well. (It looks like they’re doing a lot of building on SquareSpace, so by proxy it would be great if they were supporting these open standards.) I love that it seems to have been created by a group of science journalists to help out the cause.
As I watch some of the Domain of One’s Own community in higher education, it feels to me that it’s primarily full of humanities related professors and researchers and doesn’t seem to be doing enough outreach to their science, engineering, math, or other colleagues who desperately need these tools as well as help with basic communication.
Post Kinds Plugin for WordPress
Post Types
Within the broader social media world there are a huge variety of types of posts. These range from common articles to status updates to likes or favorites to more varied post types like photos, bookmarks, RSVPs, checkins, videos, reviews, jams, reads, audio, exercise, food, recipes, and even an exotic and rare chicken post type. While this list barely scratches the surface, the IndieWeb wiki has an almost exhaustive list along with examples.
Many social platforms sub-specialize in only one specific post type while others provide support for multiple types. Here are some common examples:
- Twitter: status updates
- Instagram: photos, videos
- Facebook: status updates, articles, photos, videos, links, events, life events, checkins, emotions
- LinkedIn: status updates, articles, résumés
- Tumblr: text, photo, quote, link, chat, audio and video
- Swarm/FourSquare: checkins
- Last.fm: listens (aka scrobbles)
- Pinboard: bookmarks
- GoodReads: reads
Wouldn’t it be better to have a single personal website where you could post all these types of content easily and quickly?!
For a few years now, I’ve been posting these and many other types of posts on my personal website. When it’s appropriate I crosspost many of them to the social media silos that support these types so that friends, family, and colleagues can subscribe to them in the way that’s easiest for them.
Post Kinds Plugin

The Post Kinds Plugin for WordPress attempts to make it much easier to create customized displays for and format each of these types of posts (and many more). It leverages the flexibility and power of WordPress to be your single social media hub while, along with other IndieWeb friendly plugins, still allowing you to interact with other social networks.
Post Kinds Plugin not only indicates in the metadata what each post type is, but provides each post with some contextualization as well as the appropriate microformats classes to make it easier for other sites or parsers to interpret these posts. In short it helps to make status updates look like status updates; favorites appear like favorites; (schnozzberrys look like schnozzberrys); and RSVPs look like RSVPs in keeping with common user interfaces on many social platforms. (And in case you didn’t know, you can now post an RSVP on your own website and send a notification to posts elsewhere on the web of your intention!)
Post Kinds Plugin is different from WordPress’s Post Formats functionality
This sounds a little bit like the WordPress theme specific functionality of Post Formats, doesn’t it? Yes and resoundingly no!
Post Formats was a WordPress feature introduced in version 3.1, ostensibly to compete with other social platforms like Tumblr which offers the explicit post types of text, photo, quote, link, chat, audio and video.


Within WordPress, post formats are available for users to choose from if the theme enables support for them. And typically if they do support them they often provide specific display outputs and CSS styling that are controlled by the theme, often to make them look like what users have come to expect these post types to look like on other social media platforms. As an example, a “Status” post would typically display a short update which doesn’t include a title. Each theme that supports post formats chooses which ones they support, how to display them, and they can vary quite a bit from one theme to the next.
Below is the list of the nine supported formats with brief descriptions of their purpose taken from the WordPress codex:
- aside – Typically styled without a title. Similar to a Facebook note update.
- gallery – A gallery of images. Post will likely contain a gallery shortcode and will have image attachments.
- link – A link to another site. Themes may wish to use the first <a href=” “> tag in the post content as the external link for that post. An alternative approach could be if the post consists only of a URL, then that will be the URL and the title (post_title) will be the name attached to the anchor for it.
- image – A single image. The first <img /> tag in the post could be considered the image. Alternatively, if the post consists only of a URL, that will be the image URL and the title of the post (post_title) will be the title attribute for the image.
- quote – A quotation. Probably will contain a blockquote holding the quote content. Alternatively, the quote may be just the content, with the source/author being the title.
- status – A short status update, similar to a Twitter status update.
- video – A single video or video playlist. The first <video width=”300″ height=”150″> tag or object/embed in the post content could be considered the video. Alternatively, if the post consists only of a URL, that will be the video URL. May also contain the video as an attachment to the post, if video support is enabled on the blog (like via a plugin).
- audio – An audio file or playlist. Could be used for Podcasting.
- chat – A chat transcript
There is anecdotal evidence that the WordPress Post Format functionality is slowly falling out of favor and there hasn’t been much, if any, change in how the feature works in the past several years.
The Post Kinds Plugin in many respects picks up where Post Formats left off, extends them significantly, and also builds a stronger platform for more modern website to website interactions.
Plugin Display
The Post Kinds Plugin out of the box generally does an excellent job of styling with some generic CSS to make these various post types look and behave as one expects without any changes or modifications to one’s theme. However, designers are more than welcome to either customize their CSS to their hearts’ content, or, if they prefer, they can manually code specific template views to override the plugin’s original views within their theme or child theme. To do this the plugin looks for a subfolder (or directory) within the theme entitled kind_views and uses those templates instead.
Microformats
Because, in part, the Post Kinds Plugin is designed for use with IndieWeb philosophies in mind, it has built in microformats support. What are microformats? They’re simple semantic classes added to the HTML of one’s site that allow parsers or other programs to read the data on your posts and pages to provide extended or increased functionality. WordPress’s core functionality already includes some microformats version 1 support; Post Kinds Plugin extends this quite a bit and uses the more modern version 2 specifications. Because Post Kinds takes care of these additional microformats, some older themes will have a leg up in the IndieWeb space despite having either limited or no theme support.
As an example using the reply post kind, the context from the site for which the particular post is actually a reply to is wrapped with the semantic class “p-in-reply-to”. As an example of the extended functionality provided by microformats, if one is using the Webmentions Plugin to send a webmention to the post that is being replied to, that remote site can parse the reply and display it properly as a reply in their comments section. (For WordPress sites receiving these webmentions, they can utilize the parser built into the Semantic Linkbacks Plugin.)
Similarly, bookmarklets, feed readers, or other programs could utilize these microformats and the data on your page to create customized views and displays.
Plugin Installation and Configuration
Installation of the plugin is relatively straightforward. From the Plugin tab in the WordPress admin interface, one can click the Add New button at the top of the page and either search for the plugin within the repository and install and activate it, or they can use the Upload Plugin button and install it from a prior download from either the WordPress repository or from the GitHub repository.

Configuration can be done from the Settings tab within the WordPress admin interface or, if the IndieWeb Plugin is installed, the settings can be found under IndieWeb » Post Kinds tabs in the admin interface.
Within the settings you can choose the post kinds you wish to enable on a particular site–not all sites will necessarily need or even want all types. I recommend only enabling the specific kinds you will actively be using; you can always come back and add additional types in the future. Some types may be enabled by other specific plugins that work in conjunction with Post Kinds Plugin.

Click the appropriate check boxes for the kinds of posts you’d like to enable on your personal website.
Not having a post kind enabled will not disable the functionality on existing posts, it only hides the selection in adding new posts. This way if you enable favorites as a type and only use it a few times before deciding to disable it, the old posts will still exist and display properly.
You can also enable a Default Kind for New Posts. Most people will likely choose Article which is the default, but if your site is primarily used like a microblog for short status updates, then obviously Note may be your best default. Are you building a linkblog? Then you could enable the Bookmark kind.
How to use Post Kinds in practice
So how does this all actually work for creating posts?
Let’s start with a simple example. Let’s say I read a lot online and I’d like to have a linkblog of all of the articles I read. Let’s say I’m reading the article Lyme Disease’s Worst Enemy? It Might Be Foxes in the New York Times. I’d like to start out by creating a read post to indicate to those following me that I’ve read this particular article.
While I could do it manually, typically I’ll use a custom bookmarklet (more on how to do this shortly), which I click on in my browser bar as I read the article. The bookmarklet will create a new WordPress post and automatically fill in the URL of the article into the “Post Properties” metabox created by the Post Kinds Plugin in the admin UI of my WordPress site.

Then, I will click on the blue Retrieve button (pictured above) just under the post’s URL. The Post Kinds Plugin will parse the New York Times article page for either explicit metadata or Open Graph data to fill in some context about the article I’m reading in the Post Properties meta box. The main tab will autofill with the Name/Title of the article, a Summary/Quote of the article, and Tags if available. Similarly the other tabs in the Post Properties meta box including Details, Author, and Other will fill in with any available metadata about the Lyme disease post I’m reading.
In this particular example, the Times didn’t do a good job on the author data, so I’ll go to that tab and manually cut/paste the author’s name into the Author/Artist Name field, their URL into the Author/Artist URL field, and (optionally) the URL for their photo image as well. If other fields are improperly filled out or you would like to change them, one can manually adjust them if necessary. Not all kinds need (or show) all theses metadata fields when they’re ultimately published.



The retrieve button will also attempt to fill in an appropriate post Title into the posts’ field for that, but it can be modified manually if necessary. On many post kinds, though one may fill in an explicit (traditional WordPress post) title, it may not display on the final post because an explicit title isn’t really needed and the Post Kinds Plugin won’t display it. The note kind is a particular example of this behaviour.
Now that the contextual part of the post I’m reading is handled, I can, if I choose, add any notes, quotes, thoughts, or other personal data about what I’ve read into the main text box for the particular post.
The bookmarklet should have automatically set the post kind selector in the Kind metabox to Read and, if available, the older WordPress post format to link. (These can be changed or overridden manually if necessary.) Post Kinds does its best to properly and appropriately map Post Kinds to Post Formats, but the relationship isn’t always necessarily one-to-one and there are obviously many more kinds available than there are post formats.
Finally, the article can be published (unless you want to add any additional metadata to your post for other plugins or needs.)
Now I can also go to the URL of my personal site at http://example.com/kind/read/ where I can find an archive of this and all the posts I’ve read in the past.

Other post kinds work relatively similarly, though some may take advantage of other appropriate metadata fields in the Post Property meta box. (For example RSVPs use the RSVP dropdown field within the Other tab in the Post Property box.)
Custom feeds for Post Kinds
For sites adding lots of different post kinds all at once, the extra possible “noise” in one’s RSS feeds may have the potential to turn a site’s subscriber’s off. Fortunately the plugin also has custom RSS feeds for each of the particular post kinds which follows a particular format. As an example, the RSS feed for all the posts marked as “Note”, could be found at either the URL http://www.example.com/kind/note/feed
or http://www.example.com/feed/?kind=note (if one doesn’t have pretty permalinks enabled). Other feeds can be obtained by replacing “note” with the base names of the other kinds (reply, article, etc.).
Archive Displays
Post Kinds Plugin also handles the display of archives for individual post kinds. To view all the posts marked as notes, for example, one could visit the URL http://www.YOURSITE.COM/kind/note/. Simply replace YOURSITE.COM with your particular site name and the particular post kind name to access the others. In some areas of the social media world, this particular archive display of notes might be considered a personal Twitter-like microblog.
Bookmarklet Configuration
For Post Kinds Plugin users who like the simplicity and ease of use of bookmarklets, one can add ?kindurl=URL to their post editor URL and it will automatically fill this into the URL box in post properties. Adding ?&kind=like to the post editor URL will automatically set the kind.
As a full example, the URL pattern https://www.example.com/wp-admin/post-new.php?kindurl=URL&kind=like will automatically create a new post, set the post kind as like and auto-import the permalink URL for the page into the URL field of the Post Properties meta box.
The following code could also be used as a template to create a full set of browser bookmarklets. (Keep in mind the base URL example.com will need to be changed to the base URL of your personal site for it to work properly. One would also change the word bookmark in the code to any of the other types.)
javascript:(function(a,b,c,d){function e(a,c){if("undefined"!=typeof c){var d=b.createElement("input");d.name=a,d.value=c,d.type="hidden",p.appendChild(d)}}var f,g,h,i,j,k,l,m,n,o=a.encodeURIComponent,p=b.createElement("form"),q=b.getElementsByTagName("head")[0],r="_press_this_app",s=!0;if(d){if(!c.match(/^https?:/))return void(top.location.href=d);if(d+="&kindurl="+o(c),c.match(/^https:/)&&d.match(/^http:/)&&(s=!1),a.getSelection?h=a.getSelection()+"":b.getSelection?h=b.getSelection()+"":b.selection&&(h=b.selection.createRange().text||""),d+="&buster="+(new Date).getTime(),s||(b.title&&(d+="&t="+o(b.title.substr(0,256))),h&&(d+="&s="+o(h.substr(0,512)))),f=a.outerWidth||b.documentElement.clientWidth||600,g=a.outerHeight||b.documentElement.clientHeight||700,f=800>f||f>5e3?600:.7*f,g=800>g||g>3e3?700:.9*g,!s)return void a.open(d,r,"location,resizable,scrollbars,width="+f+",height="+g);(c.match(/\/\/(www|m)\.youtube\.com\/watch/)||c.match(/\/\/vimeo\.com\/(.+\/)?([\d]+)$/)||c.match(/\/\/(www\.)?dailymotion\.com\/video\/.+$/)||c.match(/\/\/soundcloud\.com\/.+$/)||c.match(/\/\/twitter\.com\/[^\/]+\/status\/[\d]+$/)||c.match(/\/\/vine\.co\/v\/[^\/]+/))&&e("_embeds[]",c),i=q.getElementsByTagName("meta")||[];for(var t=0;t<i.length&&!(t>200);t++){var u=i[t],v=u.getAttribute("name"),w=u.getAttribute("property"),x=u.getAttribute("content");x&&(v?e("_meta["+v+"]",x):w&&e("_meta["+w+"]",x))}j=q.getElementsByTagName("link")||[];for(var y=0;y<j.length&&!(y>=50);y++){var z=j[y],A=z.getAttribute("rel");("canonical"===A||"icon"===A||"shortlink"===A)&&e("_links["+A+"]",z.getAttribute("href"))}b.body.getElementsByClassName&&(k=b.body.getElementsByClassName("hfeed")[0]),k=b.getElementById("content")||k||b.body,l=k.getElementsByTagName("img")||[];for(var B=0;B<l.length&&!(B>=100);B++)n=l[B],n.src.indexOf("avatar")>-1||n.className.indexOf("avatar")>-1||n.width&&n.width<256||n.height&&n.height<128||e("_images[]",n.src);m=b.body.getElementsByTagName("iframe")||[];for(var C=0;C<m.length&&!(C>=50);C++)e("_embeds[]",m[C].src);b.title&&e("t",b.title),h&&e("s",h),p.setAttribute("method","POST"),p.setAttribute("action",d),p.setAttribute("target",r),p.setAttribute("style","display: none;"),a.open("about:blank",r,"location,resizable,scrollbars,width="+f+",height="+g),b.body.appendChild(p),p.submit()}})(window,document,top.location.href,"http:\/\/example.com\/wp-admin\/post-new.php?kind=bookmark");
Development / Issues
Development for the Post Kinds Plugin takes place on GitHub. While users can certainly report issues/bugs on the page for the WordPress plugin, the developer actively watches the issue queue on GitHub and problems will be seen (if not resolved) there more quickly.
List of available Post Kinds
Now that we’ve seen a few examples and gotten things set up, let’s take a brief look at all of the Post Kinds that are available. To make things a bit easier, we’ll break them up into four groups based on some shared qualities.
The Non-Response Kinds
These kinds have an analog in WordPress’s original post formats. Adding context to one of these may make it a passive kind.
- Article – traditional long form content – a post with an explicit post title
- Note – short content or status update – a post with just plain content and usually without an explicit post title
- Photo – a post with an embedded image as its primary focus. This uses either the featured image or attached images depending on the theme.
- Video – a post with an embedded video as its primary focus
- Audio – a post with an embedded sound file as its primary focus
The Response Kinds
Response kinds differ from the non-response in that they are usually intended to be interactions with other external sites. For the best experience and improved functionality with these post kinds, it is recommended, but not required, that one have the Webmentions and the Semantic Linkbacks Plugins installed and activated. Doing so will send notifications of the replies and other interactions to those external sites which often display them. (These help your site work just like replies and mentions do on many other social media platforms, they just do so in distributed ways, so that neither you nor your friends necessarily need to be on the same platform or content management system to communicate.)
- Reply – used for replying to someone else’s post
- Repost – a complete repost of someone else’s content
- Like – compliments to the original post/poster
- Favorite – content which is special to the favoriter
- Bookmark – this is basically sharing/storing a link/bookmark.
- Quote – quoted content
- RSVP – a specific type of reply regarding attendance of an event
The Passive Kinds
To “Scrobble” a song is to make a related post on your website when listening to it. This is the most well-known example of a passive kind of post. These kinds are formed by having content in the context box on one of these types of posts.
- Listen – scrobble – listening to an audio post
- Jam – Indicates a specific personally meaningful song
- Watch – watching a video
- Play – playing a game
- Read – reading a book, magazine, or other online material
Reserved Kinds
The following kinds are reserved for future use within the plugin but will not currently show up in the interface unless enabled directly within the code. In some cases, these kinds don’t have the appropriate metadata fields within the plugin to make them user friendly without significant work.
- Wish – a post indicating a desire/wish. The archive of all of these posts would be a wishlist, such as a wedding, birthday, or gift registry.
- Weather – a weather post would be about current weather conditions
- Exercise – represents some form of physical activity
- Trip – represents a trip or journey and would require location awareness
- Itinerary – refers to scheduled transit, plane, train, etc. and does not generally require location awareness
- Check-In – identifying you are at a place. This would use the extended WordPress Geodata. It will require the Simple Location Plugin or something equivalent to add location awareness to posts. Some people are beginning to use this with the OwnYourSwarm application, which may require further configuration of your site to work properly.
- Tag – allows you to tag a post as being of a specific tag, or person tagging.
- Eat – for recording what you eat, perhaps for a food diary
- Drink – similar to Eat, but for beverages
- Follow – a post indicating you are now following someone’s activities (online)
- Mood – feelings or emotions you’re having at the time of posting
- Recipe – ingredients and directions for preparing food or other items
- Issue – an article post that is typically a reply to some source code, though potentially anything at a source control repository
- Event – a post kind that in addition to a post name (event title) has a start datetime, (likely an end datetime), and a location.
Additional Examples
If you’re reading this on my personal website, you can click on and view a variety of these post kinds described above to give you an idea of what they look like (and how they function with respect to Webmentions and other IndieWeb functionalities).
Go Forth and Post All the Things!
I’ve tried to cover as much of the basics of the plugin and provide some examples and screenshots to make things easier, but as always, there are ways to do additional custom configuration under the hood. I’m sure there are also off-label uses of the plugin to get it to do things the creator didn’t intend.
For additional details, one is certainly encouraged to skim through the code. If you have specific questions or problems, you can usually find the developer of the plugin and many of its users in the IndieWeb chat (web chat, IRC, Slack, etc.) for possible real-time help or support, or you can post questions or issues at the GitHub repo for the project.

Thanks
Special thanks to David Shanske for creating and doing a stellar job of maintaining the Post Kinds Plugin. Additional thanks to those in the IndieWeb community who continue to refine and revise the principles and methods which make it constantly easier for people to better own and control their social lives online by owning their own websites and data.
🔖 Universal Sign-In Button
The Universal Sign-In Button is a customisable bookmarklet that will auto-fill a sign-in form on the page you are currently visiting and submit it for you. It's a one-click way to tell the current page who you are.
Signing into websites using my own domain name was an awesome concept, but this greatly speeds up the process and makes it an order of magnitude faster.
Thanks Malcolm!
👓 Kill Process or How I discovered the IndieWeb (finally) by Lars Peters
I'm currently reading the book Kill Process by William Hertling. It's about murder, privacy, hacking, high tech surveillance and data mining. The book is great and I can recommend it to everybody who likes tech thrillers. Hertling gets the technical background and hacker stuff of the story really good together. Angie, the heroine, works at Tomo, the largest and quasi-monopoly Facebook-like social network as a database programmer. Part of the story is her ambition to create an alternative to the centralized privacy nightmare the Tomo service became. So she decides to do something about it and plans to build a distributed, federated social network of networks. She also meets and joins with people familiar with the IndieWeb concept. That's when I was reminded of how good the idea really is.
👓 If SoundCloud Disappears, What Happens to Its Music Culture? | New York Times
The platform offered a public space with monetization as an afterthought. Now it could simply be deleted.
What does it mean if someone can delete hundreds and thousands of hours of sound culture overnight?
in If SoundCloud Disappears, What Happens to Its Music Culture? in the New York Times
An Introduction to the IndieWeb | AltPlatform
Whether you're starting a blog, building your personal brand, posting a resume, promoting a hobby, writing a personal journal, creating an online commonplace book, sharing photos or content with friends, family, or colleagues, writing reviews, sharing recipes, podcasting, or any one of the thousand other things people do online it all starts with having a presence and an identity online.
I’ve written an introduction–aimed at beginners (and non-developers)–on AltPlatform.org that I hope might help out others who are thinking about or starting their own journey.
Editor’s Note:
As of December 2017, the AltPlatform.org site which originally published this article has shut down. I’ve smartly kept a private archived copy of the original of this post here on my personal site and manually syndicated a copy of it to AltPlatform for just such a possibility. (Hooray for PASTA (Publish Anywhere, Save to (Private) Archive)!) As a result of the shutdown, I’m making the original public here and you can now read it below.
If you wish, you can also read a copy of the original as it appeared on AltPlatform on the Internet Archive.
An Introduction to the IndieWeb
Why IndieWeb?
Whether you’re starting a blog, building your personal brand, posting a resume, promoting a hobby, writing a personal journal, creating an online commonplace book, sharing photos or content with friends, family, or colleagues, writing reviews, sharing recipes, podcasting, or any one of the thousand other things people do online it all starts with having a presence and an identity online.
The seemingly difficult task these days is deciding where that should be. There’s Twitter for sharing short updates and bookmarks to articles; Instagram, Snapchat, Flickr, and YouTube for photos and videos; Facebook for communicating with family and friends; LinkedIn for work and career related posts; Swarm for sharing your location; and literally thousands of others for nearly every micro-slice of content one could think of.
Can you possibly be on them all? Should you? Would you want to be? Could you keep up with it? Which one really and truly represents the real you? Could any of them?
And what about your friends, family, and potential audience for all of these things? Some will be on Twitter while others only use Facebook. Grandma is worried about privacy and is only on Instagram to see photos of the grandchildren. Mom is on Facebook because she thinks that’s what the internet is, and wants to like everything her children post. Teenagers don’t want to be on any platforms their parents have heard of. It’s obvious that everyone has their own preferences and favorites.
In short, the web and using it for easy communication has become fraught with fragmentation and walls that often make communicating online far more difficult than it should be. Wouldn’t it be better if you had a single website that represented you online and through which you could easily communicate with everyone?
By analogy consider the telephone system which, just like the internet, consists of wires and hardware to access the network. Every user on the network has their own phone and phone number. What would it be like if AT&T users could only speak to other AT&T users and needed another separate phone, account, and phone number to speak to friends and family on Verizon and yet another to talk to friends on Sprint? To a great extent, this is what the internet has evolved to become with monopolistic, for-profit, corporate services like Facebook/Instagram, Twitter, LinkedIn, and all the rest.
Is there a better and more robust solution than these multitudes of social media sites which all come with their own onerous terms of service, limitations on your creativity, reach, ownership, and control of your online identity?
A growing number of people on the web are sure there is and they’re working together in an open yet coordinated way to improve the democratized nature of the decentralized internet. This movement is known as the IndieWeb.
Purpose of IndieWeb
The purpose of the IndieWeb movement is to help put you in control of your web presence, allow you a more true sense of ownership of your content, and to allow you to be better connected to your friends, family, colleagues, and communities. By first owning your own domain name and having your own personal website, the IndieWeb aims to help facilitate the following:
You are in Control
You can post anything you want, in any format you want, with no one monitoring you. In addition, you share simple readable links such as http://www.example.com/ideas. These links are permanent and will always work.
Control and Freedom
You should be able to exercise your freedom of speech and publish anything you want whenever you want. You should be able to set your own rules and own limits. You should be able to post content as long or short as you like with no pre-imposed limits or types whether it be text, photos, audio, or video. You should be able to have control over comments and protection against potential harassment, bullying, and online trolls.
Identity & Identity loss
Almost every social media site has a multi-page statement of their terms of service written in complicated legalese. More often that not, these terms are to protect them and not you. As a result people have found their accounts frozen, they’ve been shut out with no notice or warning, their identities have been reassigned, or their content simply disappears with little or even no notice. Often there is either no method of recourse, or it is difficult to communicate with these corporations and may take weeks or worse to recover one’s account and data, if at all.
Without care, one can become branded with the identity of the social media network of which they’re a part. If trolls overrun your social service then suddenly by association, you’ve become one too.
User Interface/User EXperience
You should have the ability to control how your site looks and works. Do you want a piece of functionality that one of your social network sites doesn’t have? Add it the way you want it. Create better navigation, better interactivity, better design to reflect your own identity instead of a corporation’s cookie-cutter idea of your identity. Since your data is yours you can add new and interesting pieces of functionality using that data instead of waiting on a social site to think about it and implement it for you. Chances are that unless millions will find it valuable or a company doesn’t think it will scale, most won’t build it, so don’t hold your breath.
Your content is yours
When you post something on the web, it should belong to you, not a corporation. Too many companies have gone out of business and lost all of their users’ data. By joining the IndieWeb, your content stays yours and in your control.
Greater reliability and protection against content loss
Social media is only about 11 years old, and one thing is certainly true: sites will go out of business, they will get acquired, they can and will disappear. When this happens, your data can disappear overnight without the ability to back it up or export it. A new corporation can take over and change the terms of service and do things with your data that you never intended. Content can accidentally or even willfully disappear without notice to you. In addition to the data, you can also lose contact with family, friends, and community members that also disappear without the service that connected you to them.
You can have greater control of site downtimes, server outages, maintenance, scalability issues, and database failures of silos attempting to solve massive scaling/engineering problems.
A better sense of ownership
Many in the IndieWeb community have found that they post more interesting and thoughtful pieces of content when they’re doing it on their own site rather than the “throw away” content they used to post to sites like Twitter. They feel a greater sense of responsibility and ownership in what they’re posting about and this can have a profound effect on the future of the internet and its level of civility.
Author centric
When you own your own website, other web sites see that it’s you personally sending traffic to their sites instead of a generic social site. You have the ability to edit content at any time or delete it if you like.
You also have:
- greater choice of public vs. private posts and control of who your audience is;
- the ability to fix URL links when they break or disappear;
- no outside advertising on your site without your explicit permission;
- no one monetizing you;
- no censorship of your content;
- no terms of service which can often co-op your work without notice for advertising or other use;
- ownership and control of affiliate links to monetize your work if you choose.
You are better connected
Your articles and status messages can go to all services, not just one, allowing you to engage with everyone regardless of their choice of platform. Even replies and likes on other services can come back to your site so they’re all in one place.
Since your content isn’t hidden behind the robots.txt of a silo service, you have much better search engine rankings and are more likely to be found, read, or have people interact with your content. If you choose, you can still syndicate your content to one or more social silos while still owning your content in the case that something happens to those silos. This allows you to continue to reach your friends, family, colleagues, and community who may have different ideas about where they prefer to interact online. Comments to and interactions with your content can come back to your original post to create a comprehensive conversation rather than have your conversation disjointed and spread over dozens of sites throughout the web.
How to be a part of the IndieWeb
Now that you’ve got a bit of an idea about what the IndieWeb movement is attempting to help people accomplish, how can you become a part of it and enjoy the benefits for yourself?
Own and use your own domain name
Fifteen or more years ago having your own domain wasn’t as easy or as inexpensive as it is now. There are hundreds and hundreds of domain registrars around the world that can register almost any domain name you can come up with for as little as 99 cents a year with the average closer to the $10-20 range depending on the name and the top level domain (.com, .org, .net, and .edu are examples of top level domains.)
For an extra $0-10 a month you can quickly purchase domain hosting so that when someone visits your fancy URL, it actually connects to a page on the internet. Whether that page is a single page of simple HTML with a line of text and a photo; a plug and play site like Wix or SquareSpace; a full blown professional open source content management system like WordPress or Drupal; a web site you build by hand using your own code; or it points to your Facebook or Twitter account page, you’ve just made a huge step toward better cementing your identity on the internet.
Once you own your own domain name, everything you post to the web will have a permalink URL which you can control. If you wish to change platforms or service providers you can relatively easily move all of your content and the permalinks along with it–much the same way you can move your cell phone number from one provider to another. People who visit your URLs will always be able to find you and your content.

If nothing else, owning your own domain name will give you something useful to put into the ubiquitous field labeled “your website” that exists on literally every social media website out there. (Even they are subtly telling you that you should have your own domain name.)
Added bonus: even most inexpensive domain registrars and hosting services will give you free email for your domain so you can create a custom branded personal email address like susan@yourname.com. Even if you rely on G-mail or some other third party service for your email, it’s pretty easy to connect your own personal email address to your pre-existing account. It’ll make you look a lot more professional and will be far easier for your friends, family, and business colleagues to remember.
So you own your domain now?! Congratulations, you are officially a full-fledged member of the IndieWeb!
Own your data
Wait, it can’t be that simple can it? It is! But now that you’ve got your own website, it’s time to start using it to own your online identity and own your own content.
Next you may want to choose a content management system (CMS) in which to store and present your data. The IndieWeb has lists of projects which range from common services as simple as Tumblr and WordPress.com (both managed services with free hosting) to help in building your own site from the ground up in your programming language of choice. Which project you choose depends on your needs, desires for the future, and your abilities. There is something available for people of nearly every level of ability. Most domain registrars and internet host providers provide one or more means to quickly get up and running–just ask their customer service departments or see what they’ve got available online.
Most of these CMS solutions will give people a far bigger range of flexibility in terms of what they can write, record, and broadcast online. You don’t need to be limited to 140 characters if you choose not to be. Want to post more multi-media-based content with text, video, audio, and photos all at once? The online world can be your oyster and your social media platform no longer limits what is possible.
Further Steps
Ideally, what a lot of the IndieWeb developer community is rapidly building and iterating upon is an open and broadly distributeable way to make it easier for the everyday person to more easily own and operate all the functionality offered by the hundreds of social media websites without a lot of heavy and difficult-to-maintain overhead. A decade ago allowing Facebook to do everything for you may have been a simple “way out”, but now there are far more robust, diverse, and flexible solutions that aren’t as onerous. There are also newer open and easily supportable web protocols that make publishing and sharing your content far easier than before.
The first big piece most people enjoy implementing is writing their own content on their own site and syndicating it out to other services on the internet if they choose. Continuing to participate in your old siloed networks can help you stay connected to your pre-existing social networks, so you’re not leaving all your friends and family behind. Next, having all your replies/comments, likes, and other interactions come back from social silos to your own site as comments along with notifications is incredibly valuable. (These two processes are commonly known as Post On your Own Site, Syndicate Elsewhere (POSSE) and backfeed, and they can typically be done most easily with a free service like Brid.gy.)
Being able to write replies to articles or status updates on your own website and either @mentioning others as a means of notifying them is also very useful. The IndieWeb calls this universal implementation of @mentions that work across website boundaries Webmention and it’s built on an open and straightforward standard so that it can work with any website on the internet. (Remember the telephone analogy above? Now, thanks to Webmentions, everyone can be communicating on the same network.) As an example, imagine for a moment if you could @mention someone on Facebook from Twitter or vice-versa?! What if you could post a reply to a tweet on Twitter with your Facebook account?Using the Webmention spec, independent websites can easily do this now, though it may be quite a while before for-profit corporations support this simple protocol that is now a W3C recommendation.
With some of the basic building blocks out of the way, people tend to spread out a bit in the types of functionalities they’re looking for. It may range from posting status updates, pictures, or video to hosting your own podcast or or having different user interfaces to post to your own site–Micropub is great for this–to being able to put events on your site and allowing people to RSVP to them easily. Wouldn’t it be nice if you could post an event on your own website and people could use Facebook to RSVP to it? My site allows this possibility. Yours could too.
Everyone’s desires and needs will be different. Work on what you find most interesting and useful first (the IndieWeb calls these itches). Make a list of what you use most often on your old social media silos or wish they had and work on that first. Check out the IndieWeb wiki to see how others have implemented it–there’s no need to reinvent the wheel in darkness. Hop into the IndieWeb chat (there are multiple ways of doing this and interacting) and ask questions. Document what you’ve done in the wiki to make it easier for those who come after you.
Personally, I’ve always just thought about what functions do I use most on social sites and then ask myself how I might be able to do that on my own site. There’s little out there that hasn’t been explored by the bigger community, so searching the wiki for those types of functionality and seeing how others managed it usually makes it far easier. Chatting with folks in the community while I’m working always helps to sharpen my thinking and make me aware of ideas and methods I may have never considered much less come up with on my own.
If you never RSVP for things online or host events, then obviously don’t start there. Do you post photos regularly? Maybe you “like” everything you see online. In my case, I was a heavy user of Goodreads, so I spent parts of the last year working on more easily bookmarking things I’d like to read, posting reading status updates, and keeping notes on what I read, as well as highlights, marginalia, and book reviews after I’d finished reading.
Guiding Philosophy
The IndieWeb effort is different in several ways from previous efforts and communities. In particular it values principles over project-centrism. Other efforts have assumed a monoculture of one project as the ultimate solution for everyone. IndieWeb prefers developing a plurality of projects–why not have the same diversity on the web as we do in real life?
The community prefers chat in combination with a wiki to communicate and document its process. Some may prefer email distribution lists, but why? Who likes to read and respond to long email threads where information is typically locked away from the group, ignored, and simply unread? Instead, we utilize a chat (which has multiple methods of access–plurality, remember?) to host searchable conversations after which the best portions are documented on the wiki to be easily searchable and discoverable to all.
In the early days of social media, many talked, emailed and chatted about what they’d like to see. Sadly not much was done about expanding on these ideas, particularly by companies that all had their own profit-driven motives. As a result, the IndieWeb movement values showing before telling. They prioritize development by encouraging people to scratch their own itches, creating what they want to have and use on their own sites, and then iterating on those pieces to improve and refine them. If you won’t use a feature on your own site, why bother to have it?
IndieWeb puts design first and foremost. Protocols & formats come second. They’d prefer to focus on good user experience and user interaction. Users selfdogfood prototypes on their own sites to create minimum necessary formats & protocols.
Perhaps most importantly, the IndieWeb is people-focused instead of project-focused. The community is rich and diverse and has regular in-person meetups as well as camps across the world where everyone is welcome. The IndieWeb community is inclusive and has a code-of-conduct.
Join the IndieWeb Community
Where do I go from here? You said community in there. Where can I find it? How can I interact, get help, or even contribute back?
Regardless of your level of expertise, there are a huge number of resources, events, and even people available to you in a variety of formats. Whether you choose to meet with friends in person at IndieWebCamps or at regularly scheduled Homebrew Website Club meetups or interact online at a nearly continuous worldwide chat (using either web chat, Slack, Matrix, or IRC) there are many means of getting help and interacting to suit your schedule and needs to help build the personal website you’ve always wanted.
Building the indie web is a continuous process. While attending an IndieWebCamp can be an incredibly inspiring and encouraging event, we need to carry on doing so for more than just a few days a year when we can meet up in real life. We can not only support one another; we can share the best way to do things online. As we discover new ways of doing things, we can document them and share them easily with each other and the growing community.
If you’ve made it this far, I invite you to join us, and get started building the internet you’ve always wanted by building your home on the web first.
Editor’s Note:
As of December 2017, the AltPlatform.org site which originally published this article has shut down. I’ve smartly kept a private archived copy of the original of this post here on my personal site and manually syndicated a copy of it to AltPlatform for just such a possibility. (Hooray for PASTA (Publish Anywhere, Save to (Private) Archive)!) As a result of the shutdown, I’m making the original public here.
If you wish, you can also read a copy of the original as it appeared on AltPlatform on the Internet Archive.
❤️ Bitcoin propaganda posters in Brighton | Jeremy Keith
I love the overall advertising concept here–particularly for such a modern product.
I’m almost half-tempted to commission someone to re-purpose old war propaganda posters like this to promote the Indieweb movement.
He controls his own website–and they love that.
Don’t let that shadow touch them. Own your domain.
She may be… accepting Webmentions.
INDIEWEB
First they ignore you.
Then they laugh at you.
Then they fight you.
Then you WIN
👓 A Domain of One’s Own in a Post-Ownership Society | Hack Education
The University of Mary Washington’s initiative, “Domain of One’s Own,” is phrased thusly as a nod to Virginia Woolf’s essay “A Room of One’s Own,” in which she famously quipped that “A woman must have money and a room of her own if she is to write fiction.” We can critique – and certainly we should – the class implications and expectations in Woolf’s commandment here; and we must consider both the financial burden and the transaction mechanism of a push for domains in education – as Maha notes, for example, many students in Egypt don’t have a credit card with which to make online purchases. “Give her a room of her own and five hundred a year, let her speak her mind and leave out half that she now puts in, and she will write a better book one of these days,” Woolf wrote in 1929. (That 500 quid is the equivalent to about $37,000 when adjusted for inflation.) But Woolf is not simply talking about having a piece of paper – a title, for example – that decrees she owns the room. It’s about having the financial freedom and a personal space to write. To own is to possess. To own is to have authority and control. To own is to acknowledge. It implies a responsibility. Ownership is a legal designation; but it’s something more than that too. It’s something more and then, without legal protection, the word also means something less.
Reply to I defy the world and go back to RSS by Bryan Alexander
I’ve lately become more enamored of not only RSS, but new methods for feeds including lighter weight versions like microformats h-feeds. A few months ago I was inspired to embed the awesome PressForward plugin for WordPress into my site, so I could have an integrated feed reader built right in. This makes it far easier to not only quickly share the content from my site, but it means I can also own archival copies of what I’m reading and consuming for later reference, some of which I store privately on the back end of my site as a sort of online commonplace book.
There also seems to be a recent renaissance with the revival of blogrolls. I’ve even recently revived my own to provide subscribe-able OPML lists that others can take advantage of as well. Like your reading list, it’s a work in progress.
On the subject of blogs not being dead and decrying the abuses of the social silos, you might be interested to hear about the Indieweb movement which is helping to both decentralize and re-democratize the web in useful and intelligent ways. They’re helping people to take back their identities online and let them own their own content again. They’re also using open protocols like Webmention (a platform agnostic and universal @mention) and Micropub or syndication methods like POSSE to make it easier to publish, share, and interact with people online anywhere, regardless of the platform(s) on which they’re publishing.
As an example of what they’re doing, I’m publishing this comment on my own site first, and only then sending it as a comment to your post. If you supported Webmention, this would have happened seamlessly and automatically. I’ll also syndicate it as a reply to your tweet, and if you reply on twitter, the comment will be pulled back into my comment stream at the original.
As you may expect, some educators are also using some of these tools and specs for educational reasons.
Here are some resources for those attending:
- Webmention recommended spec at the W3C
- Webmention page at Indieweb.org
- Getting started with Indieweb on WordPress instructions
- Webmention plugin for WordPress
- Semantic Linkbacks plugin for WordPress
- Syndication Links plugin for WordPress
- Brid.gy
- Code for auto-accepting webmentions
🎧 This Week in the IndieWeb Audio Edition for July 8th – 14th, 2017 | Marty McGuire
Audio edition for This Week in the IndieWeb for July 8th - 14th, 2017. This week features a brief interview with Scott Jenson recorded at IndieWeb Summit 2017.
📺 Using IFTTT for WordPress Social Media Automation | Advanced WordPress Meetup, San Diego, CA (YouTube)
This presentation was given by Jim Walker, The Hack Repair Guy, on "Using IFTTT for WordPress Social Media Automation", at the Advanced WordPress Meetup, San Diego, California, July 2017.
Below are the slides from the presentation, which includes this gruesome looking diagram:

[slideshare id=77812040&doc=usingiftttforsocialmediaautomation-170712235441]