Blogs / Personal blogs

Terence Eden

shkspr.mobi

Regular nonsense about tech and its effects 🙃

Popular posts
143
Total points
40,742
HN comments
27,639
Rank
#7 personal

Visit shkspr.mobi → RSS feedOn Hacker News May 2012 – Nov 2026

Society, Policy & Culture 42Web & Frontend 41Security & Privacy 40Software Engineering 25Life, Learning & Writing 25Tech Industry & Business 25

1

The unreasonable effectiveness of simple HTML

I've told this story at conferences - but due to the general situation I thought I'd retell it here. A few years ago I was doing policy research in a housing benefits office in London. They are singularly unlovely places. The walls are brightened up with posters offering helpful services for people fleeing domestic…

2

Discord is not documentation

I'm going to be slightly contrarian and say that I like Discord. It's great to be able to get real-time help on a problem. And it is fun to see, again in real-time, what other people are working on and struggling with. In truth, Discord is no harder to sign up to than Slack, Matrix, Gitter, IRC, or whatever. And of…

4

I paid people to try and follow my README

Developers suck at writing documentation. We like to say RTFM but often there ain't no FM to R. At best we have a half-arsed collection of notes, some obsolete tips, and a link to a desolate forum full of people asking the same questions again and again. That's no way to treat our users. I naïvely believe there's a…

5

Unicode is hard

In the last couple of months, I've been seeing the ú symbol on British receipts. Why? 1963 - ASCII In the beginning* was ASCII. A standard way for computers to exchange text. ASCII was originally designed with 7 bits - that means 128 possible symbols. That ought to be enough for everyone, right? Wrong! ASCII is the…

7

An SVG that always shows today's date

For my contact page, I wanted a generic calendar icon to let people view my diary. Calendar icons are almost always a skeuomorph of a paper calendar, but I wondered if I could make it slightly more useful by creating a dynamic icon. Here it is, an SVG calendar which always display's today's date: The background image…

8

We’ve built a towering pile of shite

This a rant, written at midnight, after battling software errors. Set your profanity filters accordingly. I despair over the state of software engineering - specifically, stability. We seem to have lost the understanding that computers are there to do the hard work for us. And I don't think we ever believed in a…

9

Reverse geocoding is hard

My wife and I run OpenBenches - a crowd-sourced database of nearly 40,000 memorial benches. Every bench is geo-tagged with a latitude and longitude. But how do you go from a string of digits to something human readable? How do I turn -33.755780,150.603769 into "42 Wallaby Way, Sydney, Australia"? Luckily, that's a…

10

Why do we use R rather than Excel?

I recently had cause to take a beginners course in R - a language I'm fairly familiar with. One of the other students had never used it before, so we were buddied up in order for me to show them the ropes. The first lesson of R is always the same. Read a CSV, manipulate it a bit, draw a graph. We did it all without…

11

Learning to Code vs Learning Computer Science

It's always very tricky when people who aren't educators start banging on about what should or shouldn't be taught in schools. My own school days are but a hazy memory of hormones, angst, and boring homework. Yet here I am, pontificating. With the current "fad" of encouraging children to learn to code, I thought I…

12

Localisation is too hard for Gmail

/ləʊk(ə)lʌɪˈzeɪʃ(ə)n/ The ability to adjust a user-interface to the user's local language or dialect Because I live in the UK, I speak en_GB (English, Great Britain) rather than en_US (English, Simplified United States). Mostly, all dialects of English are mutually intelligible. Sure, the Brits love the letter U and…

13

A hiring test I'd like to run

(For the avoidance of doubt, I have nothing to do with hiring at my employer. This test is probably deeply problematic in ways you'll angrily Tweet me about.) I'd like to tell you a story! I am a teenager applying for temp jobs. It's the late 1990s and the temp agency have asked me to take a Microsoft Office test. You…

14

The pull request hack is fucking magic

I don't have time to keep up with all the daft Open Source projects I release. I wish my skill and my energy was as wide as my ambition. Several years ago, I came across Felix Geisendörfer's Pull Request Hack. The premise is simple - if people are making decent Pull Requests to your project then you should give them…

15

What’s your API’s “Time To 200”?

M'colleague Charles has introduced me to the most spectacular phrase - "Time To 200". That's a measurement of the length of time it takes a new user to go from signing up to your API to getting their first HTTP 200 response. Think about the last time you started using a new API... Fill in a tediously long registration…

16

Book Review: The Programmer's Brain

There are some books which make you feel smarter just by having them on your shelf. This is one of them! I would consider it essential for anyone working with code - whether a wide-eyed newbie or grizzled veteran. How do human brains understand code? What neurological quirks do we all have? Which common mistakes can…

17

Writing an app is like coding for LaserDisc

11 years ago to the day, I was at a tech conference. It was 3 year after the iPhone had launched its app SDK. Those of us who had been in the mobile game a while had already spent years developing apps for Symbian, BlackBerry, Windows CE, and at least a dozen other OSes which I've since scrubbed from my memory. But…

18

I think I kind of hate lazy loading

Yesterday I was on a train. I clicked on a link and my browser loaded a long article for me to read. Halfway through reading it, the train went into a tunnel and I lost signal. That meant I couldn't see the images on the other half of the page for the rest of the journey. I had a sea of broken images. Even though the…

19

A bug which affected only left handed users

Verily, some of our brethren (and sistren) be afflicted with a sinister disposition. While the righteous scroll using the thumb of their right hand - as is good and proper - an accurs'd minority swing the other way. Look, you try writing an interesting bug report without sounding like a clanker, OK! I try to optimise…

20

Stop crawling my HTML – use the API

One of the (many) depressing things about the "AI" future in which we're living, is that it exposes just how many people are willing to outsource their critical thinking. Brute force is preferred to thinking about how to efficiently tackle a problem. For some reason, my websites are regularly targetted by "scrapers"…

21

Cheap BlueTooth Buttons and Linux

Selfie sticks - like most modern inventions - are utter tosh. But they've rapidly brought down the price of Bluetooth buttons. So who am I to complain? Let's take the venerable AB Shutter 3 - You can find it on Amazon for around £2 including postage - or around $2 on AliExpress. Frankly, that's stupidly cheap. OK…

22

Towards a test suite for TOTP codes

Because I'm a massive nerd, I actually try to read specification documents. As I've ranted ad nauseam before, the current TOTP spec is irresponsibly obsolete. The three major implementations of the spec - Google, Apple, and Yubico - all subtly disagree on how it should be implemented. Every other MFA app has their own…

23

Banish missing glyphs with Unifont

The GNU Unifont project is amazing. It contains every Unicode glyph in one single file! I am going to argue that you should bundle it with your apps, your operating systems, and - at a pinch - your websites. The Unifont is a perfect fallback font. If your app or website uses a Unicode character which isn't supported…

24

Some thoughts on personal Git hosting

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…

25

Improving PixelMelt's Kindle Web Deobfuscator

A few days ago, someone called PixelMelt published a way for Amazon's customers to download their purchased books without DRM. Well… sort of. In their post "How I Reversed Amazon's Kindle Web Obfuscation Because Their App Sucked" they describe the process of spoofing a web browser, downloading a bunch of JSON files…