Colorception π
What happens when you derive an element's color from its inherited color in CSS? [...]
a collection of dev rss feeds - blogroll
Posts
What happens when you derive an element's color from its inherited color in CSS? [...]
According to the people who sell AI products, it's going to take your job in the next few years. Then what? [...]
Why should I have to opt out of something I never agreed to in the first place? [...]
A quick guide on how to use a free and open-source tool to separate stems from audio tracks using locally installed models. [...]
Some AI agents can execute code or connect to services. If you're not careful, you could be the victim of prompt injection and RCE attacks. [...]
Generate a sourcemap and add it to Eleventy's global data. [...]
A very serious eulogy that is meant to be taken literally. [...]
My recommended settings for a fresh installation of Windows 11. [...]
Improperly routed cables can cause the Framework 13 bezel to pop back out. [...]
Safely wipe a drive using a bootable USB and diskpart. [...]
Learn how to use the show(), showModal(), and close() methods to toggle an HTML dialog's visibility. [...]
Back up your entire WSL distribution and import it on a different machine. [...]
There's a challenge going around where folks tag each other with questions about their blogs. Here are my responses. [...]
Why does JavaScript's parseInt treat keycap emoji as integers? Is it a bug, a feature, or both? [...]
Learn how to decorate your Markdown code blocks with Prism to add line numbers, file names, and copy-to-clipboard buttons. [...]
Looking back on everything I learned and tried in 2024. [...]
Poorly designed API routes and an account creation loophole cause route collisions on Twitter. [...]
A reference for downloading, splitting, and optimizing videos with CLI tools. [...]
A look at some best practices for creating performant game animations in JavaScript. [...]
Bash aliases I use to speed up my workflows. [...]
Move files between Windows and WSL using the wslpath command-line utility. [...]
Programmatically read your machine's IPv4 address on Linux. [...]
After some recent incidents involving Netlify and Vercel, I decided to play it safe and move my website and another side project to Cloudflare. [...]
Eleventy 3.0 adds a new API to optimize images anywhere on your site, without shortcodes. [...]
In this deep dive, you'll learn about the Unicode character set and how it's encoded and decoded with UTF. [...]
In Eleventy 3.0, virtual templates enable plugin authors to publish and share dynamic templates. [...]
With a few lines of CSS, you can override metrics for fallback fonts to minimize layout shifts. [...]
Subtitles can capture essential dialogue and sounds, but what about the quiet parts? [...]
A post-mortem of my first attempt at upgrading a laptop. [...]
The irrational fear of mutation in programming can sometimes do more harm than good. [...]
Reflecting on an unusually eventful year in my life. [...]
Learn how to implement a progressively enhanced theme switch component using HTML, CSS, and JavaScript. [...]
After nearly two decades of living in the United States, I'm proud to say that I'm now officially a U.S. citizen. [...]
With eleventy-plugin-code-demo, you can easily add interactive HTML, CSS, and JavaScript code demos to your Eleventy site using Markdown. [...]
In JavaScript, class fields allow you to define properties on a class instance outside the constructor. In the case of function properties, it's impor [...]
Implement a simple algorithm that listens for a sequence of keystrokes in JavaScript. [...]
Normally, React's Context API is used to avoid prop drilling. But you can also use it to detect if a component is a child of a particular component. [...]
Learn how event capturing, targeting, and bubbling work in JavaScript; how to prevent an event's default behavior; how to stop event propagation; and [...]
When using the font-face local() function to load fonts installed on a user's system, double-check that sure you're requesting the right font family. [...]
Documentation is one of those things that you don't appreciate until you have to live without it. [...]
Use JavaScript's FormData, URLSearchParams, and URL constructors to serialize an HTML form's data into a well-formatted and encoded URL. [...]
The longer you leave tech debt unresolved, the more problems it will create for your team, until one day it becomes unbearable. [...]
Using the properties of congruence modulo, Alice and Bob can generate a shared private key and communicate publicly, while Eve will struggle to deciph [...]
Requiring certain characters in passwords is counterproductive and encourages bad habits that can actually weaken passwords. [...]
Tech Twitter can be a great way to network with other developers and learn new things. But it can also be unhealthy. [...]
Build an accessible image carousel that supports multiple input modes and is progressively enhanced with CSS scroll snap and JavaScript. [...]
By default, WSL 2 may reserve a significant chunk of your host RAM. Thankfully, we can limit its memory usage with a .wslconfig file. [...]
When a pair of quotes makes a world of difference. [...]
Expose useful information about your Eleventy build to all of your templates using global data. [...]
Extend Eleventy's built-in filters with custom logic for these common use cases. [...]
Setting a font size in rems ensures that your text will scale when users change their browser's preferred font size. [...]
Excessive destructuring in JavaScript can make your code harder to read, trickier to debug, and more error prone. [...]
Chrome dev tools allow you to simulate loading a page in a different locale. [...]
Paywalls are often implemented incorrectly with client-side gating, making it easy for anyone to access the content. [...]
Self-hosting fonts can improve your site's performance and eliminate unwanted third-party tracking. Learn how to download and optimize Google Fonts in [...]
Ever wanted to nest Markdown in HTML? In 11ty, you can easily do this with paired shortcodes and a custom Markdown parser. [...]
Validate user input in real time with the checkValidity, reportValidity, and setCustomValidity methods. [...]
Understand the math behind fluid typography and learn how to programmatically generate a fluid type scale with CSS clamp and Sass. [...]
Write cleaner CSS using modern strategies like :is and :where, logical properties and values, clamp, gap, and aspect-ratio. [...]
Load-more buttons are more accessible than infinite scrolling, but they also steal keyboard focus when new content loads in. We can fix this problem b [...]
Use global data in 11ty to create a single configuration for fonts that you can reference in your templates and CSS. [...]
While imagery can enrich your content, it can also slow down your site if it's not used responsibly. Learn how to use the official 11ty image plugin t [...]
Add comments to your blog using serverless functions and the GitHub Issues API. [...]
React's useState hook works well for managing simple state. But once your component starts to grow, useReducer may be a better fit for managing state. [...]
NFTs are artificially scarce, make it easier to commit fraud, undermine the intellectual property rights of content creators, and encourage consumptiv [...]
Use this trick with CSS Grid to prevent layout shifts when swapping text in status indicators. [...]
You might not need another CSS class. Use HTML attributes for state and style those states with the CSS attribute selector. [...]
Currently, 11ty doesn't allow you to pass object arguments to shortcodes in Liquid. As a temporary workaround, you can assemble and parse a JSON strin [...]
With React.lazy, you can dynamically import components at run time to reduce the size of your JavaScript bundles. [...]
Tired of listing all of your Netlify redirects by hand? Generate them programmatically with a bit of 11ty templating magic! [...]
Learn how to use JavaScript's Promise.all method to await multiple async operations, as well as how to write a custom implementation. [...]
In TypeScript, type predicates allow you to narrow down an abstract type to a more concrete type with a simple assertion. Together with derived types, [...]
Once you get used to thinking in rems for font sizing, you'll find that it's easy to express familiar powers of two. But for other values, you may fin [...]
In typography, the ideal line height for text depends on a variety of factors, including font size, line length, and font family. [...]
An in-depth review of 11ty, an extensible static site generator written in Node that supports a variety of template languages. [...]
If an iframe re-renders in React, it can interfere with back navigation in your browser. The solution? Force the iframe to unmount with a unique key. [...]
Commits that have a single responsibility make it easier to troubleshoot code regressions and time travel in Git. [...]
Set up ESLint to format on save in two popular code editors: VS Code and neovim. [...]
Line endings can differ from one OS to another. Learn the history behind CRLF and LF line endings and how to enforce line endings in Git. [...]
Writing is an important soft skill for developers and can help you build a more successful career. [...]
When you set a width and height on image tags, browsers are able to reserve the correct amount of space ahead of time to minimize layout shifts as the [...]
Reading books isn't something that everyone enjoys. But if you used to like reading but can no longer get past the first chapter of a new book, there [...]
On paper, Tailwind CSS sounds like a great idea. In reality, it suffers from the same problems that it tries to solve. [...]
Follow along with the examples in this in-depth guide to learn how to draw SVG icons and simple shapes by hand. [...]
Margins are commonly used to space paragraphs, but CSS Grid offers a more intuitive approach that defines spacing at the layout level. [...]
If it were up to me, things wouldn't end this way. We had some great times together, but now it's time to move on. [...]
You got a perfect score on an accessibility audit. But is your site actually accessible, or did you overlook more subtle issues? [...]
Sometimes, a React component needs to allow users to render a custom tag. Here's how you can pass dynamic tag names as props. [...]
If you messed up your git repo, don't panic. Here are a few ways you can undo those changes. [...]
Some big brands have a slow page load speed, but they still rank well on Google. So does web performance even matter? [...]
Define aspect ratios in CSS using the modern aspect-ratio property or a trick with percentage padding. [...]
After a one-year hiatius from Sekiro, I returned to face the final bossβand, through painful persistence, triumphed. [...]
In JavaScript, promises allow you to write asynchronous code. Here are a few interesting things you can do with them. [...]
Improve your page load speed by using a modern image format and lazily loading images. [...]
Leetcode is a polarizing topic in the software industry. But what is it, and how much time should you invest into it? [...]
Learn why HTTP cookies are needed, how they're used, where they're stored, and how they impact security and privacy. [...]
Learn how to use the right HTML elements and attributes to create accessible documents. [...]
Add comments to your Jekyll blog with the GitHub issues API and lazily load them for improved performance. [...]
Learn how computers store numbers and perform computations using binary. [...]
GitHub Pages is a good option for hosting simple sites for free, but Netlify offers plenty of more advanced features. [...]
Developers are often taught that JavaScript passes objects by reference. In reality, JavaScript is a pass-by-value language. [...]
Jekyll is a static site generator that makes it easy to create your first website, which you can even host for free on GitHub Pages. [...]
Finite state machines (FSMs) are a useful tool for representing stateful entities in code. In this tutorial, we'll learn how to implement the finite s [...]
Invulnerability frames are a popular mechanic in many retro and modern games. In Unity, you can implement i-frames using coroutines. [...]
A deep dive on how to perform straight-line and polynomial least squares fitting, both by hand and programmatically. [...]
With least squares regression, you can find the closest solution to a system of equations that doesn't have a unique solution. [...]
On the surface, Outer Wilds is a space exploration game. But peel back the layers, and it's a captivating and philosophical story about life and our u [...]
Learn how to implement a prefix tree to efficiently search through a list of words by prefix. [...]
How do processes take turns running on a CPU? Learn about the different kinds of scheduling algorithms and how they work. [...]
Unix file systems keep track of file references using two types of links: symlinks and hard links. [...]
Beginners tend to prioritize the wrong things when learning to code. This is my advice for what to focus on. [...]