Skip to main content

Kevin Marks

The indieweb includes RSS and much more, but @davewiner is still resisting change.

2 min read

Dave Winer writes:

Richard has turned to IndieWeb for the latest on open web tech. That's fine, but you have to look elsewhere too, because as he's discovered, they only embrace part of the open web. It's too bad they chose such an inclusive name, but have an exclusive approach. For example, they have avoided RSS, for reasons I'm sure I don't understand (I've listened, so no need to repeat the reasoning). We need all the advantages we can get because there are serious headwinds these days for blogging. RSS is serious open web technology. To not build on it is unthinkable, for me at least. #

As is often the case, Dave is focused on RSS rather than the web per se. Indieweb does build with RSS, along with Atom, json-feed, Activity Streams as well as h-feed and h-entry. The feedreader I use, woodwind, reads h-feed, RSS and Atom, shows posts as a river, and integrates posting to your own site through micropub.

So Indieweb is inclusive, whereas Dave does tend to be resistive to new technologies -this was his original view on JSON:

No doubt I can write a routine to parse this, but look at how deep they went to re-invent, XML itself wasn't good enough for them, for some reason (I'd love to hear the reason). Who did this travesty? Let's find a tree and string them up. Now.

Nowadays he happily uses JSON, so maybe he'll be inclusive of microformats and the indeweb derived standards like webmention and micropub someday too. I even sent him a pull request.


Kevin Marks

Day 9: Previewing Mastodon instances as h-feed #100DaysOfIndieWeb

1 min read

I was watching Christopher try to decide which mastodon instance to join. This made me realise that we need a way to preview instances’ local and federated streams. So I made one: Here's and here's

How this works is that from mastodon 1.1.1 the public timeline json api no longer needs authentication, so I can read it by default. I do this, then use a tempate to render it as an h-feed compliant view.

I also added a list of known instances from, though I wasn't able to  fetch the list dynamically.

I hope you find a mastodon insatcne community that you like.


Kevin Marks

My rev-canonical misstep with @kellan

1 min read

While writing up the rel-canonical I found an old mistake I made :

Kellan picked it up and ran with it but rel=shortlink is much clearer

Kevin Marks

Day 8: A specification for rel=canonical, by request #100DaysOfIndieWeb

1 min read

Domenic pointed out that rel=canonical was not well specified in the HTML spec. We had a stub page on the microformats wiki, so I expanded it into a more detailed discussion.

I tried to follow my mantra that 'standards should be documentation, not legislation' by explaining and linking rather than just writing a list of imperatives without much explanation. 

Do let me know what you think

Kevin Marks

Day 7: To AMP or not to AMP? #100DaysOfIndieWeb

1 min read

Alan made a bookmarklet to go from the AMP version of an article to the canonical one. This is useful for sharing, but as Aaron pointed out, going the other way is handy for removing ad cruft, which can be a 14GB/day download.

So, here's the 'to amp' version:

javascript:var url = false;var links = document.getElementsByTagName('link');Object.keys(links).forEach(function(key){if(links[key].rel !== 'amphtml'){return;};url = links[key].href;});if(!url){ alert('No AMP URL'); };if(url){document.location = url;};

I'd suggest installing both, so you can toggle back and forth. A related one just turns the url bar into the canonical version for copying (this is handy for removing the utm_ cruft that may be there):

javascript:var c = document.querySelector("link[rel=canonical]"); if(c){ history.replaceState({},document.title, c.href); }

Using bookmarklets on mobile browsers is a bit annoying; but as Chrome syncs them across devices, you can type the name you give the bookmarklet in the address bar and then click it:

using a bookmarklet on mobile chrome

Kevin Marks

Day 6: updating the French version of (thanks to Ricardo Mendes‏ @rMdes_) #100DaysOfIndieWeb

1 min read

I noticed Ricardo was trying out Noterlive, and that it had confused him, so I updated the French translation of the site and made the js code shared between them rather than copied.

Now I have good bandwidth again, I am restarting  

Kevin Marks

Day 5: Improving before the microservices summit #100DaysOfIndieWeb

1 min read

While I've been using my live-noting (well, OK, live-tweeting mostly) site fairly regularly to post live notes to my website, I haven't pushed out a new release for many months.

I'm off to the microservices summit tomorrow, so I thought I'd tidy up the feature requests and bug reports beforehand.

Several of these were helpfully added by Chris Aldrich, including the newly-linked Instructions page and the suggestion to clear the logs and cached speaker list separately.

I also made the site handle blank twitter names better, which means it can now be used as a tweetstorming tool more easily.

I also added a 'New Thread' button that starts a new thread of comments on twitter before the next tweet, which should be useful to break up live tweeting of multiple sessions

Do try it out, and send me any further issues

Kevin Marks

Noir sur blanc

1 min read

Non, je ne parle pas d’héberger l’équivalent d’un réseau social chez vous, sur votre machine personnelle ou sur un bout de serveur dédié. Cela reviendrait à faire un nouveau silo, à la pérennité plus fragile et à l’intérêt moindre. Cette approche-là existe déjà ou a déjà été tentée. Si cela peut avoir un peu de sens au sein d’une entreprise, par exemple, je n’en vois aucun en dehors de ce contexte. Ce dont je parle, c’est de transformer (ou adapter) votre demeure en nœud d’un réseau social entièrement décentralisé.

Noir su blanc

Kevin Marks

Day 4: Broke my Known site #100daysOfIndieWeb

1 min read

What I was trying to do today was monkeypatch my Known site so that it used an updated version of fragmention rather than the old one on However, I typo'd the script include line so that it reads:

<script src="></script

This manages to put the rest of the page inside a script tag and so became blank. Because known includes this header prefix in the editing pages too, I can't undo this mistake.

It also apparently breaks micropub posting, and certainly micropub auth and login.

You can however still read the site as AMP or RSS. Which has a certain irony.

I think I extended the meaning of Tantek's js;dr tonight anyway.

Update: thanks to Peter Molnar in irc for suggesting how to fix this with browser html hacking.


Kevin Marks

Day 3: better hovercards on my live-noted posts #100DaysOfIndieWeb

1 min read

On my live-noted posts (created with noterlive) I have hovercards for the cited users. However these are not great - they attempt to parse out an h-card from the users's URL, but if they fail they show a shrunken version of the website instead.

I only made 2 small tweaks today:

  • I cleaned up the layout of the hovercards (on so that images in posts can't displace the rest of the card.
  • I made the hovercard appear under the linked name which is less jarring

I still need to revisit these again, but that will take more time than is left in today.