Code Defensive CSS
One of the things I've always appreciated learning about writing Javascript is to code defensively. Defensive coding (or defensive programming),is the practice of eliminating assumptions in the code,...
One of the things I've always appreciated learning about writing Javascript is to code defensively. Defensive coding (or defensive programming),is the practice of eliminating assumptions in the code,...
Dynamic imports have been around for a while but it wasn't until recently that I started looking at the API since it seems to answer a question I've had for a while: How to lazy load Javascript...
In an Deep Dive Into color-mix I used color-mix to lighten and darken colors. There is another technique to accomplish the same task: relative color syntax. Relative color syntax allows us to...
This is what we're used to do when working with media queries. We use and and or to represent logical comparisons. This example matches viewports that are 30em or larger. @media screen and (min-width:...
When the Node team marked their test runner stable in Node 20.0, it reignited my interest in testing code in general and, potentially, in test-driven development This post will cover my experiments...
One of the hardest things for me to do when writing is to avoid jargon or assume that everyone will understand what I mean. In Dealing with Technical or Professional Jargon, the author presents an...
In Speech Synthesis API: computer talks I looked at how to use the Text To Speech portion of the Web Speech API to enhance error messages in web forms. Since I wrote that the speech portion of the API...
One of the biggest pains of working with Node is when either a library you're working with is pinned to a specific version of Node or you must pin your project to a specific version because one or...
Javascript import maps provide a mapping between local names and external modules. Using Import Maps is a two-step process. First, you create a script with a type="importmap" attribute to...
With the release of Node 20, the team introduces an experimental permissions API. There are two types of permission available with this version of the API: Module-based permissions control which...