It looks like South Sudan's Top Level Domain is going to start allowing direct registrations! Long-time readers of this blog will know that it's possible to register .me.ss domain names - there are various other 3rd level domains you can buy. But, from the 1st of August 2024, you'll be able to apply for a 2nd level. So you'll be able to grab example.ss. Here's the official announcement. As …
Continue reading →
To recap, we have 5,040W of solar panels, with a 3.6kW inverter, and a 4.8kWh battery. That's a lot of (expensive) gear! What does it mean in terms of energy savings? Over the last 12 months we have: 4,000 kWh generated by the solar panels. 1,200 kWh purchased from the grid. 1,200 kWh sold to the grid. 1,300 kWh discharged from the battery. (Data taken from various APIs and rounded to make…
Continue reading →
I've been writing about QR codes since 2007 - long before they were fashionable. Because QR Codes are so cheap to produce, there has always been a concern that attackers might print out their own codes and stick them over legitimate ones. When I first wrote about QR Hijacking in 2011, I said that such attacks were usually easy to spot: Recently, a new wave of QR Hijacking attacks have been…
Continue reading →
(Inspired by this conversation between Jukesie and Himal) Lots of companies encourage their staff to blog. It's free PR! It makes them look like they're on the cutting edge of technology! It helps with recruitment! It can also be a corporate nightmare. What if the developer says something stupid? What if it accidentally reveals something top secret? What if the CEO doesn't like it? And so,…
Continue reading →
I am a pedant. I like it when validators say "nothing to report". No errors, no warnings, no information messages. My blog is plagued with messages on the HTML validator saying Info: Trailing slash on void elements has no effect and interacts badly with unquoted attribute values. By default, the WordPress function get_the_post_thumbnail() spits out HTML like: <img width="1024" height="593" …
Continue reading →
I am easily influenced. At EMF Camp, I saw my friends Skylar and Cameron using some nifty walkie-talkies out in the field. Skye (patiently) explained to me the joys of PMR446 and - because I was quite drunk I hastily bought some radios on Amazon. Hey, they were on special - £30 for a pair! After a few days of use, I've come to the conclusion that they're… basically fine? My main reason for bu…
Continue reading →
I'm an absolute sucker for Claire North's books. She has an almost supernatural ability to weave an intricate yet satisfying tale, all while leaving the reader hungry for more. Ithaca presents a God's-eye-view of the story of Penelope. It's a fast, furious, and feminist story which plunges us straight into the middle of the Greek melodrama. Kenamon takes his time to consider this. Penelope does …
Continue reading →
Shakespeare, famously, shunned computers. Like some sort of retro hipster, he didn't write his plays on a laptop, refused to use spellcheck, and didn't register his copyright on the blockchain. Lord, what fools these mortals be! What would Shakespeare's plays have been like if their characters understood basic cybersecurity? Now, it is true that very few of his plays feature computers, but…
Continue reading →
HTML documents have the concept of an alternate representation of the document. For example, a page's header might say: <link rel="alternate" type="application/rss+xml" href="https://shkspr.mobi/blog/feed"> That tells you there's an alternative representation of the page, what sort of content it is, and where it is located. That's nice. But it's hard for a browser to tell the user what that…
Continue reading →
I recently went up to a conference in a city I'd never visited before. As I was sat on the train up, I wondered if any of the other passengers were also going to the conference. It's a bit socially awkward and creepy to go up to a bunch of strangers and interrogate them about their plans for the weekend. So I sat in silence. Back when everyone was on Twitter, there was a reasonable chance that…
Continue reading →
I've bumped in to Ken Banks a few times over my career - and he has always been a kind, inspiring, and dedicated chap. How did he get that way? This book is part autobiography and part an explanation about how people can find purpose in life. It is refreshingly secular on the latter, and curiously impersonal on the former. While Ken's childhood family is recounted in great detail, his wife and…
Continue reading →
That's it. That's the post. Fine! I'll expand a little more. Large Language Models are a type of Artificial Intelligence. They can read text, parse it, process it using the known rules of English, and then regurgitate parts of it on demand. This means they can read and parse a question like "In Python, how do I add two numbers together?" and then read and parse the Python documentation. It…
Continue reading →