The Helpful Web - How AI will bring the next evolution of accessibility

Better buttons, cleaner HTML markup, stricter adherence to WCAG - we’ve been investing in digital accessibility for over twenty years, and that investment has opened doors for millions of people worldwide. We are nearing a plateau. I believe that the next order-of-magnitude gain in accessibility won’t come from ever-tighter contrast ratios or perfection in semantic HTML. We’ve reached the point of diminishing returns. We might build current best practice levels of accessibility faster and more effectively with better technology. Still, we are bound in our current approach to accessibility by the interfaces we ship. The next leap in accessibility cannot come from better execution of traditional interfaces; it can only come from changing the interface. Changing the interfaces means making them adaptive. Making them personal and responsive in ways that statically designed software can never achieve. ...

October 13, 2025 · 17 min · Alex

Introducing the QUERY HTTP Verb

Introducing QUERY The IETF has published a document detailing the QUERY verb. The Query verb neatly solves the problem of asking APIs for LOTS of data or conditional data. In other words, QUERY enables API providers to provide a means for clients to ask the server about data, where the client isn’t sure what data is available. A worked example Working in Agri-tech, I often want to find out information about animals. Unfortunately, that information can live across many systems, with many identifiers (primary keys or other). In one context I’ve experienced, Dairy Animals can be identified and referenced by five or more different identifiers - so what do you do if you don’t know all of them? ...

November 25, 2021 · 7 min · Alex

SQL Joins with Sequelize

While working on an API for my day job last week, I needed to do a SQL Inner Join with Sequelize and Typescript in a web API. Here’s how I achieved it. Environment: Things move quickly in the JS ecosystem. Here are the library versions used in the subject API at the time of writing: "dependencies": { "@types/express": "~4.0.39", "@types/sequelize": "^4.27.21", "express": "~4.16.2", "sequelize": "4.38.0", } Context: I have an identifier in one system that I need to correlate with an identifier in a second system, but I could only do that via an intermediate identifier, also in the second system. A good case for a SQL Join. ...

October 11, 2020 · 5 min · Alex