I recently read a brilliantly provocative blog post called "This website has no class". In it, Adam Stoddard makes the case that you might not need CSS classes on a modern website: I think constraints lead to interesting, creative solutions […]. Instead of relying on built in elements a bit more, I decided to banish classes from my website completely. Long time readers will know that I'm a big f…
Continue reading →
One of the best things about London theatre is that once in a while a show will give its understudies a chance to break out of the dressing room and soar on the stage. It's a chance to see talented performers at a discount price. What's not to like? Lucy Donnelly and Mark Sean-Byrne are both flawless. His slouched frustration plays against her manic dream pixie self-loathing. The stage is…
Continue reading →
I have a modest set of solar panels on an entirely ordinary house in suburban London. On average they generate about 3,800kWh per year. We also use about 3,800kWh of electricity each year. Obviously, we can't use all the power produced over summer and we need to buy power in winter. So here's my question: How big a battery would we need in order to be completely self-sufficient? Background …
Continue reading →
This book is ridiculously zeitgeisty. It's all brain-rotting AI, social-media meltdowns, mixed with some cracking technobabble. She thinks about erasing more: all the practice session recordings; her own encrypted cephaloscripts; the dream-guide neuromesh of her personal AI; the interviews, fan messages, reviews—food for her vanity, training data for her egolets. Fab! But, for all that, it's p…
Continue reading →
I am vain. I like to know which of my blog posts have "done numbers". I get a little thrill knowing that an old post I wrote has been read by someone in a land I've never visited. I'm curious and want to know if a newsletter has linked to me. At the same time, I don't want to know too much about people. I don't want to stalk them around the web. I refuse to care how long they spend with me. I…
Continue reading →
Historical entities have been sighted in the old village of Lambeth. Are they ghosts? Visions? Or intruders through a crack in time? Join your guides and explore the backwaters and byways that slowly spread over the mysterious marshes of Lambeth. Most walking tours have a guide drag you around the well-known tourist hot-spots while they read out a bit from Wikipedia. Minimum Labyrinth’s tour i…
Continue reading →
As part of my ongoing (and somewhat futile) efforts to ReDeCentralise, I'm looking at moving my personal projects away from GitHub. I already have accounts with GitLab and CodeBerg - but both of those sites are run by someone else. While they're lovely now, there's nothing stopping them becoming as slow or AI-infested as GitHub. So I want to host my own Git instance for my personal projects. …
Continue reading →
I can confidently declare that Lower Decks is the second best Star Trek series after The Orville. Lower Decks has always been bags of fun with a good emotional core. Now your favourite sci-fi capers are available in handy comic book form! Second Contact is a compilation of Lower Decks issues #1–6. You get a bunch of stories spread out over 145 pages. The great thing about a comic of a cartoon i…
Continue reading →
In September 1985, Jon Bentley published Programming Pearls. A collection of aphorisms designed to reveal truths about the field of programming. It's 40 years later - long enough to see several revolutions in the field - so surely these are obsolete, right? They belong in the same category as "always carry a bundle of hay for the horses" or "you won't always have a pocket calculator with you" or …
Continue reading →
For boring technical reasons, computers think the world began on 1st of January 1970. To keep track of the future, they count the number of seconds since that momentous date. So zero seconds represents midnight on that day. So how do computers deal with dates before The Beatles' Abbey Road was top of the UK album charts? Negative numbers! Most modern computers can deal with dates far in the…
Continue reading →
I maintain a a test-suite for TOTP codes. It contains a bunch of codes which adhere to the specification, some of which stretch it to breaking point, and some that are completely invalid. These codes are a good starting point for checking whether a 2FA / MFA app works correctly. Proton have release a swish new authenticator app for Android, iOS, Mac, Linux and Windows. Sadly, their open source…
Continue reading →
In which I attempt to be pragmatic. Are you allowed to run whatever computer program you want on the hardware you own? This is a question where freedom, practicality, and reality all collide into a mess. Google has recently announced that Android users will only be able to install apps which have been digitally signed by developers who have registered their name and other legal details with…
Continue reading →