Web accessibility consultant specialising in accessible JavaScript; neurodivergent (ADHD), writer, musician, rainbow socialist 🦄🏳️🌈 fancies himself a philosopher when the moment speaks 🌼
Public Key
npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 Profile Code
nprofile1qqs2zp40mlea2p8avd87lzqjlv865986cnaftf3ym95lgzev56sdyzgprpmhxue69uhhyetvv9ujumt0d4hhxarj9ecxjmntj972tp
Show more details
Published at
2026-07-25T09:25:50+02:00 Event JSON
{
"id": "6b5c766800104a94d74c789845515a61c720174340b41ae1a5c28dd2857b8bc7" ,
"pubkey": "a106afdff3d504fd634fef8812fb0faa14fac4fa95a624d969f40b2ca6a0d209" ,
"created_at": 1784964350 ,
"kind": 0 ,
"tags": [
[
"proxy",
"https://mastodon.world/users/siblingpastry",
"activitypub"
],
[
"L",
"pink.momostr"
],
[
"l",
"pink.momostr.activitypub:https://mastodon.world/users/siblingpastry",
"pink.momostr"
],
[
"-"
]
],
"content": "{\"name\":\"James Edwards\",\"about\":\"Web accessibility consultant specialising in accessible JavaScript; neurodivergent (ADHD), writer, musician, rainbow socialist 🦄🏳️🌈 fancies himself a philosopher when the moment speaks 🌼\",\"website\":\"https://mastodon.world/@siblingpastry\",\"picture\":\"https://s3.eu-central-2.wasabisys.com/mastodonworld/accounts/avatars/109/801/260/734/494/828/original/7b6c8e73fb361773.jpg\",\"banner\":\"https://s3.eu-central-2.wasabisys.com/mastodonworld/accounts/headers/109/801/260/734/494/828/original/667a33866ca1aef8.png\",\"nip05\":\"[email protected] \"}" ,
"sig": "cfb8ff610d6b353689f3e13656e095a2b98abfb1335265faee72309a8b6afafd9fa8c414da1b44715dd979cdd7ee937cd45a1601abf98e27b1bfb5d03d2584dc"
}
Last Notes npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards I confess I’ve yet to find any needed use-case for it 🤷♂️ npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Not to mention patronising, as if readers who need large text or a screen reader have no idea how to do that 🤦♂️ They’re clearly covering their ass, but reputationally, to me, this just makes it worse. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards If the phone was an additional helpline for a robustly accessible site, staffed by people with the knowledge and motivation to help, then yeah I’m all for that as a positive thing. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards or you could just not truncate the … npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Isn’t that essentially a co-opt anyway — $1m investment guarantees a green card — that’s been around for decades hasn’t it? npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Finally deleted the Facebook app from my phone. It was like a scab I couldn’t stop picking at. But removing it meant I had to redesign the collage of icons on my home screen, which is why I left it there so long. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards I can’t wear belts or tight trousers because the pressure hurts my bladder, so a trick I figured out is two short strips of knicker elastic (or similar 😇) tied between pairs of belt loops at the side. So they sit on my hips but can still be slack at the front. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards If you factor in the time cost of writing, I’ve made a huge loss on every book I’ve written or co-written. There is practically zero money in tech publishing, the price reflects production costs at low volume. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Is that a reason for not testing though? VO/Chrome is a statistically relevant proportion of screen reader users (about 2% to Safari's 7% according to WebAIM). What I would say is that if something works fine in VO/Safari and in Windows screen readers too, but VO/Chrome is the outlier that doesn't work ... then sometimes it's fine to say, fuck it that's Chrome's fault, depending on how critical it is. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards I read Margaret Atwood’s Mad Adam trilogy in the wrong order (2,3,1) although I didn’t know that until I got to 1. But I still that’s the best order to read them. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards That one needs the long nasal “n” npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Yay the Galleria! I did a tap dance at the opening ceremony 😎 npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Hey wow, I grew up in Welwyn Garden City. My parents are both northerners though, I have some of their idioms and pronunciation. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Please tell me you don’t say “onvelope” … that’s yuppie pronunciation to my ears 😆 npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards I have Kr’sont though, I think that’s an American pronunciation. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Kinda only just pronounce the T, like a glottal stop. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Kwa-sont 🥐 Is there any other way? Kr’sont? That just sounds like Klingon. Kroy-sant? A brand name for tampons. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards > maybe the real problem here is that CSS can drastically change the visual order of elements. Well yeah, that's exactly the problem, and this is the solution. There's no option here to stop CSS from being able to change visual order, that ship has sailed. So these properties provide a means to adjust reading order as well, so it matches the visual order. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Fear? Ignorance? Political self-interest? All of the above? npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards I'm just remembering something else too. I would have been 16 or 17, and a woman approached me in the street asking if I'd buy a flower from her. I think she was a Romany traveller. Conversation went basically like this: "Will you buy a flower?" "No. Why should I?" "To help me." "Why can't you help yourself?" "I'm doing what I can." That really struck me, fundamentally undermining the "I'm alright jack" mood of the time. It was the first step toward my eventual socialist epiphany. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards I never gave much thought to my dad's conservative views until around the same age, when I came home wearing a communist party badge (they were trendy, and red and gold which looks cool, I didn't get the implications). He fair ranted about that one lol. But he was a Tory party member, and he used to pay me to deliver election leaflets. The vitriolic reaction I sometimes got from people did make me start noticing the disparity, that my dad's views weren't universal. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards I wonder how that tracks with response bias. When I worked at MORI we did studies that showed Tory voters tend to downplay their conservative values in opinion polls, producing poll results that underestimate Conservative support. Aside, I was born in Lincolnshire, on the Isle of Axholme. Didn’t get into the politics though, what with being a baby and all. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards That didn't work. But I did figure a solution, which takes advantage of how the virtual pointer behaves in JAWS. When you press a button with ENTER or SPACE, it fires simulated `mousedown` and `mouseup` events preceding the `click`. However since the actual trigger is a repeatable key, it fires repeating mouse events in the same way that a vanilla browser fires `keydown` events (i.e., `mouseup` repeats as well!) @npub1css…4pqe npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards I’ll give that a try, thanks npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Does anyone know how to block key repeats when ENTER is used to fire `click` events on a `<button>`? nb. the solution can't use `keydown` or `keyup` since it has to work with virtual cursor mode in JAWS. #javascript #accessibility npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Them: "Just be yourself" Me: (is myself) Them: "No not like that, more like other people." npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Could that be an intentional loophole -- some attempt to undermine China's international shipping industry, or to cause conflict between China and Singapore? npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards will there be a video of your talk itself? npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards If you implement a theme switcher, and it's not the default, and users can easily switch between themes -- then you can implement a low-contrast theme which doesn't have to meet WCAG contrast requirements, because the default theme constitutes a conforming alternate version. So the default must conform with 1.4.3 and 1.4.11, but alternate themes don't have to. (The switcher control itself must always conform, in all themes, to be an accessible mechanism.) @npub1uhk…t6j8 @npub197g…q2n4 npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards What’s your basis for that answer? I don’t claim to know for sure, but I’ve read the legislation and articles discussing this, and it just seems to come down to user customisation requirements. Dark mode is not a form of user customisation, so how could it be required? npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Well art is inherently self-indulgent, that's how art is born -- "all art is crime" as I think a saying has it, that art by its very nature defies the rules in order to say something new. And this does not chime well with user-focused design. Design is not art, because design has function. Design can be highly artistic, but its priorities are different. The most accessible sites prioritize user needs, and users don't need artistic design, they need functional design. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Markup is mechanical, and art that deconstructs its mechanics exists only for its own gratification. That’s as artistically valid as anything, art has no functional purpose. But web sites do. It’s like building an art gallery with the street entrance on the second floor and no stairs — that’s fine if you only care about fit competent climbers being able to visit. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Quick look at /03 and it's bad -- links differentiated by color alone, no focus indication other than color change (from black to red, when red is already used for other visual highlighting), misuse of headings and aria-label, and that's quite apart from how hard it is to read sideways text. I stopped looking after that. npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards It's a tricky one isn't it, when Britain really is broken and the world is going to shit. But that's nothing new, all that seems to vary is the stories and conspiracies told by those who like it this way. It's a truism to say that it's getting increasingly difficult to tell the difference, as the stories become so bizarre in times that there's no way to rationalise around them. Which I suppose is the point (cue Adam Curtis 🙃). @npub1hfw…pfwr @npub1m3t…jh39 npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards The best ones are: * ARC Toolkit (TPGi) -- https://www.tpgi.com/arc-platform/arc-toolkit/ * Axe (Deque) -- https://www.deque.com/axe/ * WAVE (WebAIM) -- https://wave.webaim.org/extension/ My first recommendation would be ARC Toolkit (nb. I work for TPGi so I'm not unbiased here). npub15yr2lhln65z06c60a7yp97c04g204386jknzfktf7s9jef4q6gysd7pa64 James Edwards Can you imagine what unreal surfaces would feel like? For example, if it’s shiny or rough or looks plasticky, you could mentally conceive of what it might feel like, and then describe that. You can make it clear in descriptions that you’re talking about virtual content and so the descriptions are speculative, and that would still be of value to a reader who otherwise gets nothing they can relate to.