17 Apr 25

So, you want to build an app that has its data co-located with its UI? That works offline? That synchronizes between clients? And that lets its users own their data? Welcome to the world of local-first web development.

by anandprabhu Apr 2025 saved 5 times

30 Nov 23

When you’re designing and developing for accessibility, performing manual testing using a screen reader is important to catch and fix accessibility issues that cannot be caught by automated accessibility testing tools. In this article, which is a modified, text-only excerpt from the Practical Accessibility course, we’re going to walk through the process of setting up your screen reader testing environment, from downloading virtualization software if you need it, to installing screen readers, and setting up keyboard configuration. We’ll also learn what screen reader and browser combinations are most relevant for your testing work.


13 Nov 23

My favorite feature of ES6 is Custom HTML Elements. Custom Elements allow us to extend HTML for React-Like components without the need for preprocessors or compilers. There are fewer things “out of the box” for these components, but that means they can be lighter and more readable than react.



30 Oct 23

Too often folks will grab ARIA first to provide an accessible name for a thing. Or they may sprinkle hidden content around a form. Sometimes this is to satisfy a (minimalist?) design, other times it is just part of the tooling. In most cases the impact of those decisions is unknown. The assumption that they do the same thing, give the same output to all users, is wrong.


27 Oct 23

Showing buttons as disabled until a form is complete might seem like a good idea. It is not. They usually create a lousy user experience and exclude many people with disabilities. Here’s why disabled buttons suck and what to do instead.



25 Oct 23

The most surprising thing I learned was that, when screen readers process web pages, they very often inject their own code into the running web browser application process in order to extract information. Know what else does this? Malware. Know what else? Basically nothing.


Most introductions to accessibility APIs include a similar but shorter and simplified history lesson. This one collects details only found in one or the other, or none of them, throws in some trivia for fun, and cites what my ex-professor brain thinks of as primary sources. Grab your machete, because we’re heading into weeds so tall that a tiger couldn’t find its way home from an Indian buffet without GPS.


we’ll start from absolute scratch and recount the widely available basic story. It’s written for beginners, but the fact that I describe web accessibility in the broader context of software accessibility might offer a different twist for current practitioners as well.


To understand the role of an accessibility API in making Web applications accessible, it helps to know a bit about how assistive technologies provide access to applications and how that has evolved over time.


10 Aug 23

03 Aug 23

This is about designing forms that everyone can use and complete as quickly as possible. Because nobody actually wants to use your form. They just want the outcome of having used it.


28 Apr 23

If you’re writing anything more complicated than a brief command-line script, reading this should help you write higher-performance, more-secure applications. This document is written with Node.js servers in mind, but the concepts apply to complex Node.js applications as well. Where OS-specific details vary, this document is Linux-centric.

Honestly? I’m saving this because it is a good bit of documentation writing more than it is useful to me as reference.


21 Feb 23

So, you want to build an app that has its data co-located with its UI? That works offline? That synchronizes between clients? And that lets its users own their data? Welcome to the world of local-first web development.

by wheresalice Feb 2023 saved 5 times