Terence Eden. He has a beard and is smiling.

Terence Eden’s Blog

Theme Switcher:

Book Review: 4,000 Weeks - Oliver Burkeman

· 3 comments · 1,550 words · Viewed ~250 times


Book cover for 4,000 weeks. A bench looks over a lake.

I think I highlighted something in every chapter of this book. If you live an average lifespan, you'll probably be alive for around 4,000 weeks. I've used up over half of mine. Fuck. This book is a slightly curious mix of the practical and the philosophical. It makes a compelling case that, insignificant as we are, we should try to enjoy our allotted time. That doesn't necessarily translate to…

Restaurant Review: 123V Vegan Sushi

· 1 comment · 250 words


Big plate of sushi.

Have you ever grabbed a little pack of sushi as part of a supermarket meal deal? Some dry and flavourless rice, wrapped in something slimy, tasting overwhelmingly of sadness? 123V is the literal opposite of that. Flavours so enticing that the soy sauce and wasabi almost felt redundant. A panoply of delights, presented with care and served with a flourish. We went for the お任せ (Omasake) - which…

Tending To My Digital Garden

· 4 comments · 200 words · Viewed ~313 times


Heavily pixellated image saying "I Power Blogger".

I've written over 3,000 blog posts throughout the years. This blog has become a repository of my thoughts, feelings, experiments, hopes, and creations. It has also become outdated, buggy, and suffers from link-rot. So, every day, I tend to my digital garden. I go in to old posts and check that the links are still pointing somewhere relevant. Are the embeds still live or do they need replacing? …

How to make Markdown Footnotes start at Zero in WordPress

· 5 comments · 200 words


The Logo for WordPress.

As a dedicated and professional computer scientician, I believe that all indices must start at zero. Not one, not two, but zero. The zeroth element is sacrosanct to our creed; for in the beginning there was nothing. If you're using WordPress's JetPack, it uses an ancient version of Markdown Extra. You can either monkeypatch this, or install a separate Markdown plugin. I've patched my fork of…

Is IPA furigana a bad idea?

· 7 comments · 300 words


The HTML5 Logo.

My name is Terence(/ˈtɛɹəns) Eden(ˈiːdən/). Modern HTML allows the user to use <ruby> to annotate text. This is usually used for furigana - which allows pronunciation to be placed above words. For example: "シン・ゴジラ (Shin Godzilla)" shows you how to pronounce both words if you are unfamiliar with kanji. The text can be any language or use any characters. In Japanese, it is quite often used to sh…

DVD Review: Doctor Who and The Planet of The Spiders

· 3 comments · 400 words


DVD cover for Planet of the Spiders.

I had never seen Pertwee's final story. So I was overjoyed when an anonymous reader got it for me from my wishlist. It is an utterly bonkers story which nearly makes sense. Let's address the elephant in the room first. The "yellow face" isn't acceptable now and shouldn't have been acceptable back then. Kevin Lindsay does an "accent" which is, thankfully, mild. But would it really have been so…

The Cleaner 🆚 Der Tatortreiniger - Series 3

· 2 comments · 400 words


Two posters, one showing the UK version and one showing the DE version of the show.

Did you know that Greg Davies' BBC comedy series The Cleaner is a remake of a German comedy series called Der Tatortreiniger? Last year I compared the English episodes to their German counterparts. Only one episode was unique to the UK version - the rest were more-or-less faithful remakes. What about the new series 3? S03E01 The Reunion / S05E05 Freunde This has the same basic plot -…

Is Android Unicode Yet?

· 1,700 words · Viewed ~382 times


Fontforge showing the version is from 2013.

Google's Android platform has dreadful support for Unicode. Even the most recent Android versions are missing out on languages, characters, and symbols which were added to Unicode in the last decade. Back in 2013, Google created the "Noto" project. Its aim? To include "all the world's languages". They wanted to banish "tofu" - the little white blocks □ which indicate a missing character - hence t…

Theatre Review: The River - Jez Butterworth

· 200 words


Poster for The River. A murky green colour.

Oooh! This is an interesting play. It is dense, wordy, and tense. It isn't a play with a frenetic pace or a huge emotional roller-coaster. It is a series of subtle arguments and twisted relationships which slowly (very slowly) reveal themselves to the audience. It is actorly - with winding speeches and hefty subtext. The leisurely pace belies the deep and dark subject matter. Although only…

Theatre Review: The Lightest Element

· 3 comments · 250 words


Poster for The Lightest Element. A woman stands between two men.

The problem with plays about science is that they necessarily have to give the audience a mini-lecture in the subject. The problem with biographical plays is they need to give the audience a summary of a life in a few short speeches. The problem with historical plays is they have to give a précis of the context needed to understand the times. The Lightest Element is a historical science …

Should you enable TOTP *only* authentication?

· 10 comments · 300 words · Viewed ~255 times


A QR code.

Here's a "fun" thought experiment. Imagine a website which let you sign in using only your username and TOTP code. No passwords. No magic links emailed to you. No FIDO tokens. No codes via SMS. Just a TOTP generated and displayed on your device. Is that useful? Sensible? Practical? It's certainly technically possible. Store the username, store the TOTP seed, done. Your users can now log in. …

Styling links based on their destination

· 7 comments · 250 words · Viewed ~213 times


The HTML5 Logo.

Suppose you have lots of links on a page. You want to highlight the ones which point to example.com - is that possible in CSS without using JavaScript? Yes! This scrap of code will turn all those links red: a[href^="https://example.com"] { color: red; } Now, there are a few gotchas with this code. It matches the string exactly. So https://example.com will not match…