Hey there! I'm Aleksandr.

I'm a software engineer and writer with an eye for creating beautiful, responsive designs. I love learning new things and sharing my discoveries with others. You can read my blog, learn more about me, or get in touch.

Recent Blog Posts

  1. Premature Optimization: Code First, Optimize Later

    Premature optimization may be hurting the quality of your work. Focus on writing legible code first; optimize it later if you need to.

  2. React, Iframes, and a Back-Navigation Bug

    If an iframe re-renders in React, it can interfere with back navigation in your browser. You can fix this by unmounting the iframe.

  3. Make Atomic Git Commits

    It can be tempting to lump unrelated code changes into a larger commit, but atomic Git commits are more maintainable.

  4. How to Format Code on Save in VS Code with ESlint

    Improve your developer experience by setting up ESLint and configuring VS Code to format code on save for JavaScript, TypeScript, and React projects.

  5. 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.

  1. Why I Don't Like Tailwind CSS

    On paper, Tailwind CSS sounds like a great idea. In reality, it suffers from the same problems that it tries to solve.

  2. SVG Tutorial: How to Code SVG Icons by Hand

    Learn the basics of SVGs so you can code your own SVG icons by hand, without always relying on icon libraries.

  3. Be Careful with Async Functions that Return Booleans

    Suppose an async function returns a boolean. What happens if you check the return value without awaiting it?

  4. Creating Responsive 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.

  5. Hesitation Is Defeat

    After a one-year hiatius from Sekiro, I returned to face the final boss—and, through painful persistence, triumphed.

  6. How to Sort Ant Design Tables in React (the Easy Way)

    The Ant Design UI library lets you sort tables by one or more columns, using a sorter prop. But the syntax can get quite repetitive. Let's fix that!

  7. Goodbye, GitHub Pages—Hello, Netlify

    GitHub Pages is a great option for hosting your site... until it isn't. Here's why I moved to Netlify.

  8. Creating a Responsive Navbar Without Bootstrap

    Want to create a navbar that works on mobile and desktop? Ditch the frameworks—in this tutorial, we'll create a responsive navbar using HTML, CSS, and JS.

  9. How to Add a Copy-to-Clipboard Button to Jekyll

    Add a copy-to-clipboard button to your Jekyll blog with a simple include and a few lines of JavaScript.

  10. Getting Started with Jekyll and GitHub Pages: Your First Website

    Jekyll is a static site generator that makes it easy for you to create a website. Learn how to get started with Jekyll and GitHub Pages.

  11. Finite State Machine (FSM) Tutorial: Implementing an FSM in C++

    Finite state machines (FSMs) are used in lots of different situations to model complex entity state. In this finite state machine tutorial, I'll help you understand the FSM design pattern by building one from the ground up for a simple use case.

  12. Learn to Code Without Wasting Time & Money

    A discussion of the things that beginner programmers tend to get wrong, as well as concrete suggestions for what they should be doing instead.

Software Projects

I have experience with a wide range of stacks and enjoy working on projects that have a strong UI/UX component. Below are just some of my software projects that I'm most proud of.

  • Scribe

    Text editor developed with the Qt framework. Features standard file operations, syntax highlighting, brace autocomplete, and auto-indentation.

    • c++
    • qt5
    • qtcreator
  • CattleLog

    A mobile app that provides easy access to cattle records for the VanWagner Cattle farm.

    • android
    • mobile dev
    • kotlin
    • sql
  • U.S. Gun Crimes

    A database-driven web app that lets you explore U.S. gun crimes for 2013–2018.

    • react
    • typescript
    • express
    • sql
  • This Website!

    My online resume and blog, developed with Jekyll, HTML5, Sass, and JavaScript. Built with a mobile-first responsive design.

    • jekyll
    • html5
    • sass
    • javascript
  • Embody

    Embody is a top-down dungeon crawler inspired by the Binding of Isaac where you can possess slain enemies to assume their model, stats, and weapon.

    • c#
    • unity
    • game-ai
  • Want to see more of my work?

    Check out my other repos: