Hi, I’m Aleksandr.
I create beautiful, accessible, and performant user experiences on the web. You can explore my writing, learn more about me, or subscribe to my RSS feed.
Recent Posts
-
Published on
Listening for Key Sequences in JavaScript
Learn how to implement a simple algorithm that listens for a specific sequence of keystrokes in JavaScript, with an optional delay between keys.
-
Published on
Detecting Nested Components in React with the Context API
The React Context API is normally used to avoid prop drilling. But it can also be used to detect if a component is nested within another instance of itself or as a child of a particular component.
-
Published on
An Interactive Guide to JavaScript Events
Learn how event capturing, targeting, and bubbling work in JavaScript; how to prevent an event's default behavior; how to stop event propagation; and more.
-
Published on
A Font-Face Faux Pas
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.
-
Published on
Writing Better Documentation
Documentation is one of those things that you don't appreciate until you have to work without it. Good documentation should go beyond the code itself and also cover your team, the product, your work process, areas of specialization, and many other key areas.
-
Published on
Serializing HTML Form Data with JavaScript
Learn how to use JavaScript's FormData, URLSearchParams, and URL constructors to serialize an HTML form's data into a well-formatted and encoded URL.
Featured Posts
-
Published on
Creating an Accessible Image Carousel
Learn how to build an accessible image carousel that supports multiple input modes and is progressively enhanced with CSS scroll snap and JavaScript.
-
Published on
Creating a Fluid Type Scale with CSS Clamp
Fluid typography allows each font size in a modular scale to vary responsively between a min and max. Learn the math behind fluid typography and how to programmatically generate a fluid type scale with CSS clamp and Sass.
-
Published on
Optimizing Images with the 11ty Image Plugin
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 to create optimized and responsive images.
-
Published on
NFTs Are a Problem
While NFTs are being hailed as the future of digital ownership, they're also the source of many problems. NFTs are artificially scarce, make it easier to commit fraud, undermine the intellectual property rights of content creators, and encourage consumptive mining practices.
-
Published on
CRLF vs. LF: Normalizing Line Endings in Git
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.
-
Published on
Set a Width and Height on Images to Reduce Layout Shifts
Dimensionless images can cause layout shifts as they load, hurting your page's performance. By setting a width and height on images, you allow the browser to initialize an aspect ratio for those images and minimize layout shifts.
-
Published on
SVG Tutorial: How to Code SVG Icons by Hand
Follow along with the examples in this in-depth guide to learn how to draw SVG icons and simple shapes by hand.
-
Published on
Creating Aspect Ratios in CSS
Learn how to give any element an aspect ratio in CSS, using the modern aspect-ratio property or a trick with percentage padding.
-
Published on
Don't Mind the Leetcode Grind
Leetcode is a polarizing topic when it comes to technical interviews. But what exactly is it? And does it deserve your attention?