WebMentions, Privacy, and DDoS - Oh My!


Crappy line drawing explaining the above.

Mastodon - the distributed social network - has two interesting challenges when it comes to how users share links. I'd like to discuss those issues and suggest a possible way forward. When you click on a link on my website which takes you to another website, your browser sends a Referer1. This says to the […]

Continue reading →

Is Open Graph Protocol dead?


Robot faced Mark Zuckerberg is weating a VR headset - it digs painfully into his smiling cheeks.

Facebook Meta - like many other tech titans - has institutional Shiny Object Syndrome. It goes something like this: Launch a product to great fanfare Spend a few years hyping it as ✨the future✨ Stop answering emails and pull requests If you're lucky, announce that the product is abandoned but, more likely, just forget about […]

Continue reading →

Semantic Comments for WordPress


The Logo for WordPress

As regular readers will know, I love adding Semantic things to my blog. The standard WordPress comments HTML isn't very semantic - so I thought I'd change that. Here's some code which you can add to your blog's theme - an an explanation of how it works. The aim is to end up with some […]

Continue reading →

How to add ISSN metadata to a web page


creenshot of an email from the British Library. Dear Terence Eden INTERNATIONAL STANDARD SERIAL NUMBER (ISSN) Thank you for your recent enquiry, we have assigned ISSN to the following publication(s): Terence Eden’s blog ISSN 2753-1570 .

Inspired by John Hoare at the Dirty Feed blog - I've asked the British Library to assign my blog an International Standard Serial Number (ISSN). An ISSN is an 8-digit code used to identify newspapers, journals, magazines and periodicals of all kinds and on all media–print and electronic. Why? Shut up. OK. It turns out […]

Continue reading →

Reducing GPS accuracy in photos


Unix is user-friendly — it's just choosy about who its friends are.

Here's a quick one-liner to reduce the precision of location stored in a photo's EXIF metadata: exiftool -c "%.2f" -TagsFromFile @ -GPSLatitude -GPSLongitude photo.jpg (Thanks to the EXIFtool Forum for their help.) Why is this useful? Modern phones automatically attach a GPS location to every photo you take. GPS resolution is around 10 metres. When […]

Continue reading →

Adding Semantic Reviews / Rich Snippets to your WordPress Site


Screenshot of JSON code in a web page.

This is a real "scratch my own itch" post. I want to add Schema.org semantic metadata to the book reviews I write on my blog. This will enable "rich snippets" in search engines. There are loads of WordPress plugins which do this. But where's the fun in that?! So here's how I quickly built it […]

Continue reading →

Removing default metadata from .opus files


Binary code displayed on a screen.

I'm trying to create some ridiculously tiny audio files. The sort where every single byte matters. I've encoded a small sample. But the opusenc tool automatically adds metadata - even if you don't specify any. Using the amazing Mutagen Python library I was able to completely strip out all the metadata! import mutagen mutagen.File("example.opus").delete() It […]

Continue reading →

Interesting Email Metadata


For many years, my email footer said "Sent via my Casio cPhone" - my attempt to poke fun at the users who hadn't updated their iPhone's default email signature. This leads to an interesting question: Is there an easy way to see what device an email is sent from? If I type the attached on […]

Continue reading →