What's the optimal length for a 2FA code?


Screenshot of a text message. It says "Your one time passcode is 1031."

The other day, a company sent me a 2FA code which was only four digits long. I'll admit, this weirded me out. Surely 4 is just far too short. Right? I think almost every 2FA code I've seen has been 6 digits long. Even back in the days of carrying one of those physical RSA…

Continue reading →

That's not how 2FA works


List of tweeters advocating for 2FA.

Another day, another high-profile website cloned to phish credentials. Is this a phishing attempt? Goes to "https://t.co/7b0EaPdGZR" and asks for username and pw (if so, it nearly got me!) /cc @github pic.twitter.com/jgt4oNvjF2 — Tess Rinearson (@_tessr) January 16, 2021 In the replies, you’ll see lots of techbros saying “this is why you should switch on…

Continue reading →

"I could build that in five minutes!"


A digital watch.

It's rather dispiriting when you launch something, only to have people berate you for not launching sooner. A few months ago, I was involved in a medical questionnaire launch. Before it was released, I had several people send me polite (and not-so-polite) queries as to why it was taking so long. "I could build that…

Continue reading →

Usability of Footnotes


A very long footnote.

I've been reading lots more non-fiction books than normal. And I'm getting increasingly annoyed about footnotes1. Footnotes are a weird skeuomorph hangover from the days of printed text. I don't think they are really suited to eBooks - but they seem to have come along for the ride into the future. There are a few…

Continue reading →

Whose bug is it anyway?


A 404 error message on a website.

I found a curious little bug and I'm interested in who you think should take responsibility for it. My mobile network provider sent me this message: I clicked on the link, and got this error message from their website: The error is caused by the trailing full-stop. Remove the full-stop and the page loads. There…

Continue reading →

Wanted - audio output based on screen output for Linux


OS displaying a long list of options.

I think what I'm asking for is impossible... I have a Linux laptop with built in speakers and an external monitor with speakers. The laptop connects to the screen via HDMI. I have my Linux desktop set up for dual screens. If I drag a window from one screen to the other, I want the…

Continue reading →

Dark Mode and Transparent Images


A Hhrd to read image. The text is black, but so is most of the background. Bits have a white background.

Dark Mode is the new cool. Apps which automatically switch to an eye-friendly palette when lighting conditions are poor. Nifty! Most of the time, it's as simple as making the text a lightish colour, and the background a darkish colour. But all that fails when you use transparencies in images. Here's a quick example. Using…

Continue reading →

Google Chat Nearly Got Me Fired


Google documentation saying their apps aren't compatible with each other.

My colleague was understandably ticked off with me. A week previously, they'd asked me to get something fairly urgent done. I hadn't done it - and all hell was breaking loose. I wasn't being truculent or disobedient. I simply hadn't seen their message. And it was all Google's fault. At work, we use Google's G-Suite.…

Continue reading →

How not to use the label element


HTML Source Code.

HTML is magic. It comes with all sorts of great usability and accessibility features. But people often ignore them or misuse them. Take a look at these checkboxen: If you click on this label, nothing happens. If you click on this label, the checkbox will toggle This is important. Tapping on tiny squares is hard…

Continue reading →

Accessibility of macOS - large cursor hides tooltips


Cursor obscuring tool tip.

Apple's attitude to usability is... complex. The general attitude of "you're holding it wrong" seems to be prevalent across all their products. I like having a large mouse cursor. I find it easier to see on my large monitor, especially when sat at a safe distance. But, if I use a large cursor - I…

Continue reading →