The Case Against Always Using Reactive Programming

The Case Against Always Using Reactive Programming

Let me tell you a story. Last week, I walked into a codebase that looked like it was written by someone who had just discovered reactive programming and decided that everything needed to be reactive. Every button click, every API call, every sneeze was wrapped in observables. It was like watching someone use a chainsaw to slice bread – technically possible, but you’re left wondering if they’ve lost their mind. Don’t get me wrong – reactive programming has its place....

October 6, 2025 · 10 min · 2099 words · Maxim Zhirnov
Аргументы против постоянного использования реактивного программирования

Аргументы против постоянного использования реактивного программирования

Позвольте мне рассказать вам историю. На прошлой неделе я столкнулся с кодовой базой, которая выглядела так, будто её написал кто-то, кто только что открыл для себя реактивное программирование и решил, что всё должно быть реактивным. Каждое нажатие кнопки, каждый вызов API, каждое чихание были заключены в наблюдаемые объекты. Это было похоже на то, как кто-то использует бензопилу, чтобы нарезать хлеб — технически возможно, но вызывает вопросы о здравомыслии. Не поймите меня неправильно — у реактивного программирования есть своё место....

October 6, 2025 · 5 min · 1023 words · Maxim Zhirnov
Ignoring Performance Metrics to Focus on User Experience

Ignoring Performance Metrics to Focus on User Experience

Picture this: your application loads in 50 milliseconds, has zero memory leaks, and your CPU usage graph looks like a perfectly flat line. Your engineering team is high-fiving in the hallway, the stakeholders are nodding approvingly at the dashboard, and then… users hate it. They’re abandoning your app faster than people leaving a meeting that could’ve been an email. Welcome to the great paradox of modern software development, where we’ve become so obsessed with measuring the machine that we’ve forgotten about the human sitting behind the screen, probably cursing at our “perfectly optimized” creation....

October 5, 2025 · 10 min · 2125 words · Maxim Zhirnov
Игнорируя показатели производительности, чтобы сосредоточиться на пользовательском опыте

Игнорируя показатели производительности, чтобы сосредоточиться на пользовательском опыте

Представьте: ваше приложение загружается за 50 миллисекунд, у него нет утечек памяти, а график использования CPU выглядит как идеально ровная линия. Ваша инженерная команда аплодирует в коридоре, заинтересованные стороны одобрительно кивают, глядя на панель управления, и тут… пользователи недовольны. Они покидают ваше приложение быстрее, чем люди выходят с совещания, которое можно было бы провести по электронной почте. Добро пожаловать в великий парадокс современной разработки программного обеспечения, где мы стали настолько одержимы измерением машины, что забыли о человеке, сидящем за экраном, который, вероятно, проклинает наше «идеально оптимизированное» творение....

October 5, 2025 · 5 min · 1002 words · Maxim Zhirnov
Why Technical Debt is Not Always a Bad Thing

Why Technical Debt is Not Always a Bad Thing

Let me tell you something that might make your code-perfectionist soul cringe a little: technical debt isn’t the boogeyman we’ve made it out to be. In fact, I’d argue that treating all technical debt as inherently evil is like saying all financial debt is bad—tell that to someone who just bought their dream house with a mortgage. We’ve been conditioned to view technical debt as this dark specter haunting our codebases, something to be eliminated at all costs....

September 24, 2025 · 7 min · 1483 words · Maxim Zhirnov