The Curious Engineer

All blogs / Frontend / CSS / browsers

Aleksandr Hovhannisyan

aleksandrhovhannisyan.com

Dev tutorials, thoughts on software development, and the occasional essay.

Frontend / CSS / browsersJavaScript / TypeScriptWeb developmentLinux / UnixDev tools / editors / IDEs

Posts
114 from 4 Aug 2019 to 21 Jun 2026
Posting
monthly (6 in the last year)
Kind
personal blog
Feed
https://www.aleksandrhovhannisyan.com/feed.xml

2026 5

  1. How to Use an Android Phone Camera in OBS
  2. 2D Canvas Sorting
  3. Fully Local Code Embeds
  4. Colorception
  5. The AI Dilemma

2025 16

  1. Let Me Opt In, Not Out
  2. How to Split Audio Stems
  3. Remote Code Execution with LLM Agents
  4. Cache-Busting Assets in Eleventy
  5. In Memory of Em
  6. Making Windows 11 Usable
  7. How to Correctly Install the Framework 13 Bezel
  8. How to Wipe a Drive Without Removing It
  9. How to Open and Close HTML Dialogs
  10. WSL Backup Guide
  11. Tag, You're It
  12. To Parse an Int
  13. Syntax Highlighting with Prism.js and markdown-it
  14. 2024 in Review
  15. A Tale of Two Routes
  16. CLI Cheat Sheet for Videos

2024 13

  1. Performant Game Loops in JavaScript
  2. Useful Bash Aliases
  3. Access Windows Files from WSL
  4. Get the IP Address of a Linux Machine
  5. I Moved to Cloudflare
  6. Eleventy Images Just Got Better
  7. An Introduction to Unicode
  8. Virtual Templates in Eleventy
  9. Creating Perfect Font Fallbacks in CSS
  10. Hearing Silence
  11. My First DIY Laptop Upgrade
  12. (Don't Fear) Mutation
  13. 2023 in Review

2023 6

  1. The Perfect Theme Switch Component
  2. Naturalized
  3. Interactive HTML Code Demos in Eleventy
  4. Class Fields vs. Methods in JavaScript
  5. Listening for Key Sequences in JavaScript
  6. Detecting Nested Components in React with the Context API

2022 20

  1. An Interactive Guide to JavaScript Events
  2. A Font-Face Faux Pas
  3. Writing Better Documentation
  4. Serializing HTML Form Data with JavaScript
  5. The Cost of Tech Debt
  6. Modular Arithmetic and the Diffie-Hellman Algorithm
  7. Password Composition Rules Are Counter­productive
  8. Tech Twitter Burnout
  9. Creating an Accessible Image Carousel
  10. Limiting Memory Usage in WSL2
  11. A typeof Typo
  12. Add Build Info to an 11ty Site
  13. A Set of Useful 11ty Filters
  14. Use Rems for Font Size to Respect User Preferences
  15. Overzealous Destructuring
  16. Changing the Locale in Chrome with Dev Tools
  17. Gated Content, Broken Locks
  18. How to Download and Optimize Google Fonts
  19. Custom Markdown Components in 11ty
  20. HTML Input Validation with JavaScript

2021 28

  1. Creating a Fluid Type Scale with CSS Clamp
  2. Modern Techniques for Writing Better CSS
  3. Managing Keyboard Focus for Load-More Buttons
  4. Configuring Web Fonts in 11ty with Global Data
  5. Optimizing Images with the 11ty Image Plugin
  6. How to Add Comments to a Static Site with GitHub Issues
  7. Managing Complex State in React with useReducer
  8. NFTs Are a Problem
  9. Preventing Layout Shifts in Status Text with CSS Grid
  10. Represent State with HTML Attributes, Not Class Names
  11. Passing Object Arguments to Liquid Shortcodes in 11ty
  12. Dynamically Importing Components with React.lazy
  13. Automate Netlify Redirects in 11ty
  14. A Deep Dive on Promise.all
  15. Cleaner Type Predicates with Derived Types
  16. The 62.5% Font Size Trick
  17. Don't Use a Fixed Line Height
  18. 11ty: The Good, the Bad, and the... Possum?
  19. React, Iframes, and a Back-Navigation Bug
  20. Make Atomic Git Commits
  21. How to Format on Save with ESlint
  22. CRLF vs. LF: Normalizing Line Endings in Git
  23. Why Developers Should Write
  24. Set a Width and Height on Images to Reduce Layout Shifts
  25. Why You No Longer Enjoy Reading
  26. Why I Don't Like Tailwind CSS
  27. SVG Tutorial: How to Code SVG Icons by Hand
  28. Creating a Vertical Rhythm with CSS Grid

2020 19

  1. Rest in Peace, Flash
  2. Subtle Accessibility Failures (And How to Fix Them)
  3. Dynamic Tag Name Props in React and TypeScript
  4. How to Undo Changes in Git
  5. Does Web Performance Matter? It Depends.
  6. Creating Aspect Ratios in CSS
  7. Hesitation Is Defeat
  8. JavaScript Promises: Practical Use Cases and Examples
  9. Optimizing Images with WebP and Lazy Loading
  10. Don't Mind the Leetcode Grind
  11. An Introduction to HTTP Cookies
  12. Writing Semantic HTML
  13. Add Comments to Jekyll with the GitHub Issues API
  14. The Binary Number System
  15. Goodbye, GitHub Pages—Hello, Netlify
  16. Is JavaScript Pass by Reference?
  17. Getting Started with Jekyll and GitHub Pages
  18. Implementing a Finite State Machine in C++
  19. Invulnerability Frames in Unity

2019 7

  1. Least Squares Fitting: How to Fit a Curve to Data
  2. The Method of Least Squares
  3. Outer Wilds: Stop and Smell the Pine Trees
  4. Implementing a Prefix Tree
  5. Operating System Scheduling Algorithms
  6. Hard Links and Soft Links
  7. On Learning to Code