I've quit JetPack stats. I've moved to Koko Analytics. All the stats code is self hosted, it is privacy preserving, and the codebase is small and simple. But I am vain. I want all my old JetPack stats to appear in Koko so I can look back on the glory days of blogging. Koko has two main tables. The first is a summary table called wpbp_koko_analytics_site_stats : date visitors pageviews 2009-10-30 25 47 2009-10-31 70 86 2009-11-01 61 72 That's the total…
Continue reading →
Because Ma.tt continues to burn all of the goodwill built up by WordPress, and JetPack have decided to charge a ridiculous sum for their statistics, I've decided to move to a new stats provider. But I don't want to lose all the statistics I've built up over the years. How do I download a day-by-day export of my JetPack stats? Luckily, there is an API for downloading all your JetPack stats! First, get your API key by visiting https://apikey.wordpress.com/ - it should be a 12 character…
Continue reading →
After seeing one Doctor Who on stage, it was time for another! I was lucky enough to get preview tickets for Jodie Whittaker in "The Duchess [of Malfi]". The Duchess is… dark. No, darker than than you're imagining. I've seen plays with content warnings. This is the first I've seen where they cover both sides of a sheet of paper. Content and Sensory Warnings - Contains Spoilers The theatre provides these warnings: Themes of violence against women and sexual assault, scenes of rape and p…
Continue reading →
Unconferences are brilliant. Rather than a set agenda, people come up with their own sessions. A dozen Post-It® Notes are slapped on a wall, everyone writes down what they want to talk about, they're slotted into a grid, and - BAM! - you've got yourself an unconference. At the recent OggCamp there were a number of brilliant spontaneous talks. But nearly all of them involved one person standing at the front, delivering a message to an audience. That's fine. But there are other forms of …
Continue reading →
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 "make the most of it" or "have the biggest impact possible" - but more like "live in a way that…
Continue reading →
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 means the chef chose 20 pieces of sushi for us. We had a 241 deal, so got that twice. Is forty sush…
Continue reading →
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? Has my writing somehow been mangled by me buggering about with CSS? Oh, I could use automated…
Continue reading →
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 it in two specific places. Firstly, I set $this->footnote_counter = 0; in the initial config of the …
Continue reading →
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 show phonetic pronunciation using hiragana. Because English is a composite language, it isn't always …
Continue reading →
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 difficult to have found actors of even vaguely the right ethnicity to play the various Tibetan…
Continue reading →
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 - although the German crime scene is a stabbing rather than a falling piano. The Cleaner can't come to terms …
Continue reading →
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 the name "No Tofu" / "Noto". There was great flurry and excitement which has, thankfully, been s…
Continue reading →