Hi, I’m Aleksandr
I write scalable, performant, and accessible software for the web. You can learn more about me, read my blog, or subscribe to my RSS feed.
Recent Posts
-
Published on
Virtual Templates in Eleventy
In Eleventy 3.0, virtual templates enable plugin authors to publish and share dynamic templates.
-
Published on
Creating Perfect Font Fallbacks in CSS
Learn how to use three CSS properties to override font metrics and minimize layout shifts during font load.
-
Published on
Hearing Silence
Subtitles can capture essential dialogue and sounds, but what about the quiet parts?
-
Published on
My First DIY Laptop Upgrade
A post-mortem of my first attempt at upgrading a laptop.
-
Published on
(Don't Fear) Mutation
The irrational fear of mutation in programming can sometimes do more harm than good.
-
Published on
2023 in Review
Reflecting on an unusually eventful year in my life.
Featured Posts
-
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
Modular Arithmetic and the Diffie-Hellman Algorithm
Using the properties of congruence modulo, Alice and Bob can generate a shared private key and communicate publicly, while Eve will struggle to decipher their messages.
-
Published on
Password Composition Rules Are Counterproductive
Registration systems often require that passwords contain certain characters. But this is counterproductive and encourages bad habits that can weaken users' passwords.
-
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
Use Rems for Font Size to Respect User Preferences
Of all the CSS units, rems are the most accessible for font sizing, allowing you to scale text responsively when users change their preferred font size settings.
-
Published on
Creating a Fluid Type Scale with CSS Clamp
Understand the math behind fluid typography and learn how to programmatically generate a fluid type scale with CSS clamp and Sass.
-
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
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
Implementing a Finite State Machine in C++
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 state design pattern in C++.