Hi, I’m Aleksandr
I write scalable, performant, and accessible software for the web. You can read my blog, learn more about me, or subscribe to my RSS feed.
Recent Posts
-
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.
-
Published on
The Perfect Theme Switch Component
Learn how to implement a progressively enhanced theme switch component using HTML, CSS, and JavaScript.
-
Published on
Naturalized
After nearly two decades of living in the United States, I'm proud to say that I'm now officially a U.S. citizen.
-
Published on
Interactive HTML Code Demos in Eleventy
With eleventy-plugin-code-demo, you can easily add interactive HTML, CSS, and JavaScript code demos to your Eleventy site using Markdown.
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++.