-
Accessing localhost:3000 in VirtualBox for NVDA testing on macOS
After getting my JAWS setup in place recently, NVDA was next on the agenda. It was easy enough to install, which left me with enough leftover time and energy to make an attempt at loading http://localhost:3000 on it in order to be able to test unmerged changes. It went better than expected!
-
Inspecting HTML elements that disappear on blur
Web accessibility is mostly about HTML, I reckon. Tons of the bugs you work on end up being about adding or removing some attribute from an element. So the inspect element tool is a really important part of the toolkit. And most of the time you don’t even have to think about it: just ⌘⇧C, click on the element you’re curious about, and you’re in business.
-
Do you really need those line-clamps and nowraps?
After getting my first Forgejo PR merged today I was struck by the realisation that I finally have a linkable public example of a type of accessibility bugfix that’s been a recurring thing for years across basically every site and app I’ve ever worked on. So I can finally get this off my chest. Everyone’s CSS is full of line-clamps and nowraps that serve little to no practical purpose, and prevent visually impaired users from accessing content.
-
Is metadata streaming really SEO armageddon?
I don't like some of these silly Rube Goldberg additions to Next.js either but I do think this one at least works as described.
-
All laws now up to date!
This was originally posted at https://666a.se/news/all-laws-now-up-to-date and has been migrated here since for long-term hosting.
-
Let's update the English translation of the Work Environment Act
This was originally posted at https://666a.se/news/lets-update-the-english-translation-of-the-work-environment-act and has been migrated here since for long-term hosting.
-
We maxed out Sendgrid's free tier
This was originally posted at https://666a.se/news/we-maxed-out-sendgrids-free-tier and has been migrated here since for long-term hosting.
-
About Arbetsmiljöverket's New Webdiarium
This was originally posted at https://666a.se/news/about-arbetsmiljoverkets-new-webdiarium and has been migrated here since for long-term hosting.
-
10 Years Of Global Thermonuclear War
It’s coming up on the tenth anniversary of the release of my infamous global thermonuclear war game. It’s been offline for longer than it was ever online now. I want to get the story of this thing and its general context in my life & career written down and posted in time for the ten year milestone, so here it is.
-
Fixing 666a (again)
So apparently 666a is still capable of surprising me. A few months ago I wrote about the work I’d done to address an issue I’ve been calling “document lag”. Since then, I’ve continued to keep a constant eye on the system’s reliability. This week, something new cropped up.
-
My SQLite in production epiphany
My work environment email alerts service – 666a – is a Rails app using SQLite for its production database. I’m super happy with this stack, but it wasn’t an obvious choice from the start, and I know a lot of folks still haven’t heard the growing hype about using SQLite in production in the Rails community. Here’s how I ended up shipping a production app with a SQLite database, and how it helped me rediscover some joy in full-stack work.
-
Operating 666a
In the final quarter of 2023 I launched my little side project 666a, which is a service providing work environment email notifications for union reps and people like that. It took a few months of work to build something shippable, and I’ve been refining it ever since to increase its reliability. I thought it’d be nice to share a glimpse of what that refinement work looks like. This is gonna be a technical one, so apologies to anyone who preferred the union propaganda.
-
Incident Report
This was originally posted at https://666a.se/news/incident-report and has been migrated here since for long-term hosting.
-
English translations of Swedish laws
This was originally posted at https://666a.se/news/english-translations-of-swedish-laws and has been migrated here since for long-term hosting.
-
Announcing 666a
This was originally posted at https://666a.se/news/launch-announcement and has been migrated here since for long-term hosting.
-
My CPWA Experience
2022 was the year my dream of getting more into accessibility finally came true. While I was studying for the IAAP certifications I was surprised by how valuable I found other people’s accounts of how they studied for them. I promised myself I’d contribute back to that if I passed the exams. And I passed, so here’s what I did!
-
Passport Hacking
The passport system in Sweden collapsed earlier this year when pandemic travel restrictions lifted and half the country tried to renew their passports at once. In March I tried to book an appointment to get passports for the kids so they could visit their extended family for the first time. The date I got was in October.
-
Sequencer VoiceOver Demo
Retrofitted this drum sequencer UI with some accessibility improvements. Particularly proud of how the use of “bars”, “beats” and “cells” in the ARIA labels makes it possible to perceive a data structure that was previously only represented visually via varying amounts of blank space.
-
Boomshak
-
moonrise
-
hivernal
-
doomfire
-
Natural Cycles Animation
-
Lost in space
Simulating gravity has made all the other space-related code I’ve written so far for this project seem easy. This has been one of those demoralising problems that you think you’ve solved until you try a new test scenario and suddenly you’re back at square one because it turns out it was never really working right at all. For a good while I genuinely didn’t think I was going to be able to make it work at all.
-
Scalable spacetime
After building last week’s Solar System renderer, I was excited to move on to the fun stuff and see some planets moving around. I rushed on into implementing motion, which on the face of it is pretty simple. If Earth is moving along at 30,000m/s, for example, then you can just add its velocity to its current position once per second and get its new location.
-
Apple Pie From Scratch
This is a quick write-up of my solution to one of the first problems I bumped into in my latest project. I’m building a JavaScript model of the solar system, which in the end will hopefully feature all the planets orbiting the Sun according to some approximation of Newtonian gravity.
-
DownloadHelper Source
-
I am not planning any nuclear attacks
I recently wrote about a strange phone call that I received from the letting agents in charge of the house I live in. They’d recently carried out a routine visual inspection of the house, and were concerned about my whiteboard diagrams for a game idea I’d been working on.
-
The time I got caught planning a nuclear attack on the USA
I missed a phone call at work from my landlord this week. Landlord phone calls are scary. “Our rent payment probably hasn’t gone out or something”, I began to worry. I tend to panic quickly. “Shit, I bet it failed because our bank account is empty. Somebody’s gotten in and emptied out all our money. Fuck.” Fearing the worst, I phoned back straight away to check what was up.
-
Code I Like: Twig Loaders
The Twig templating library for PHP is really quite a nice piece of software. In terms of external quality, it’s stable, open source, actively maintained, and well documented. I’ve been lucky enough to spend some time at work exploring its internals from time to time over the last 12 months or so, and I’ve found the internal quality to be equally high. It’s a pleasure to work with code that has been properly looked after.
-
Alpine Storage
-
University Group Project