Vladimir Klepov as a Coder
I conducted 60 interviews in 2 months — here's what I learned
2023
Svelte stores: the curious parts
Svelte reactivity — an inside and out guide
Ditch google analytics now: 7 open-source alternatives
The complete guide to safe type narrowing in TypeScript
Making sense of TypeScript using set theory
2022
Seven habits of bad interviewers
Don't trust JS library size, min+gzip
Why I prefer JS for front-end build automation
Good advice on JSX conditionals
2021
SemVer: The Tricky Parts
Why I always wrap Context.Provider and useContext
How to destroy your app performance using React contexts
7 things you may not know about useState
Build better libraries, use dev warnings
useLayoutEffect is a bad place for deriving state
How we made our pre-commit check 7x faster
Cleaner ways to build dynamic JS arrays
Two practical uses for capture event listeners
Go beyond eslint limits with these 3 tricks
Become the master of your eslint with no-restricted-syntax
How to increase test coverage FAST
So you think you know everything about React refs
Did I just build a better useCallback?
How useRef turned out to be useMemo's father
How to timeout a promise
2019
Extravagantly fast rendering with React benders
2018
10 Design Rules for Programmers
Keep a React component mounted
Major Garbage Producers in JS
Why you Might Want to Extend React Components
OOP for FP lovers: Simplistic Dependency Injection
Five Tricks for Debug-Logging in JavaScript
Let's Make Software Better
Another Week with Bad Software
Not Sucking at TypeScript: 3 Tips
Simpifying AngularJS controllers with ES5 get / set
Advanced Promise Coordination: Rate Limiting
Advanced Promises Coordination: Serialization and Concurrency Limiting