Yet another AI Racism example


Sophie Okonedo wearing a red cloak and brandishing two laser pistols.

Here's a good pub-quiz trivia question - which Oscar-winning Actors have appeared in Doctor Who? It's the sort of thing that you can either wrack your brains for, or construct a SPARQL Query for WikiData0. I was bored and asked ChatGPT. The new Omni model claims to be faster and more accurate. But, in my […]

Continue reading →

Book Review: Myself When Young (1938)


My sex must have been a disappointment to my parents, as they already had three daughters and only one son, but their disappointment was probably not so great as my own, for I longed to be a boy, and, while staying with my uncle, Sir Walter Farquhar, at Polesdem Lacey, my delight was to wear my cousin's clothes, to climb trees, chase pigs, ride barebacked ponies and play cricket with the stablebovs.

I'm not a paper fetishist. The smell of old books does nothing for me. But I'll admit to a slight sense of wonder when I held this 86-year old book in my hands. What is feminism? This is an out of print, and somewhat obscure, attempt to answer that question. Out of the shadow of […]

Continue reading →

How much money do banks owe you if you're scammed?


A fiver and some coins on a table.

There's currently an open consultation about whether banks should have a lower compensation limit to refund their customers who have been scammed. Currently, if a customer falls for an Authorised Push Payment (APP) scam, they may be eligible for up to £415,000 back from their bank. The proposal is to limit this to a maximum […]

Continue reading →

Some thoughts on the YubiKey EUCLEAK Vulnerability


Photo of electrical equipment placed very close to a circuit board.

It looks like everyone's favourite FIDO token provider might have an unpatchable vulnerability! Much Sturm und Drang from the usual sources. But how bad is it really? Not so bad - but it does expose some weaknesses in the very idea of having physical tokens. First up, as the research paper's abstract says: The attack […]

Continue reading →

Comparing Embeds from Short-Form Social Media Sites


The HTML5 Logo.

It is sometimes useful to embed the contents from one website into another. For example, you may wish to quote a post from a microblogging site like Twitter, Threads, BlueSky, or Mastodon. All of them offer an "embed" button which will copy a snippet of code for you to paste into your website. Here's how […]

Continue reading →

WordPress - Display hook action priority in the dashboard


List of actions with various priorities.

If your WordPress site has lots of plugins, it's sometimes difficult to keep track of what is manipulating your content. Ever wondered what priority all your various actions and filters have? This is a widget which will show you which actions are registered to your blog's hooks, and their priority order. It looks like this: […]

Continue reading →

Inline CSS - The Link "Cheat"


The HTML5 Logo.

I am a bear of very little brains sometimes. I had a site which, for various boring reasons, was printing a <style> element in the middle of the HTML's body. Because <style> is a metadata element, it should only appear within the <head> element. This is OK: <!doctype html> <html> <head> <style> a { color: […]

Continue reading →

What programming language is in this <code> block?


Screenshot of the Schema.org site showing the technical information about the metadata.

I'm a little bit obsessed with the idea of Semantic markup. I want the words that I write to be understood my humans and machines. Imagine this piece of code: print( "Hello, world!" ) Is that code example written in Python? C++? Basic? Go? Perhaps you're familiar enough with every programming language to tell - […]

Continue reading →

Liberate your Markdown posts from JetPack in WordPress


JetPack Markdown switched off.

A scrap of code which I hope helps you. Problem You installed the WordPress JetPack plugin and wrote all your blog posts in Markdown. Now you want to remove JetPack or replace it with a better Markdown parser. You turn off JetPack's "Write posts or pages in plain-text Markdown syntax". You click edit on a […]

Continue reading →

Replace Twitter Embeds with Semantic HTML


Tweet from me in 2009. "Ah. I appear to have spent the majority of the night playing World Of Goo What an addictive little game."

I logged into Twitter using a fresh account last week. No followers, no preferences set. The default experience was an unending slurry of racism and porn. I don't care to use Twitter any more. Whatever good that was there is now drowned in a cess-pit of violent filth. I still have a lot of Tweets […]

Continue reading →