The Case Against Always Using Serverless Architecture

The Case Against Always Using Serverless Architecture

Picture this: you’re at a tech conference, and every third speaker is evangelizing serverless like it’s the holy grail of modern development. “No servers to manage!” they cry. “Infinite scale!” they promise. “Pay only for what you use!” they chant in unison. But here’s the thing – and I’m saying this as someone who’s deployed plenty of Lambda functions and Azure Functions in production – serverless isn’t always the answer, and treating it like a silver bullet is a recipe for architectural headaches....

September 14, 2025 · 9 min · 1744 words · Maxim Zhirnov
Аргументы против постоянного использования архитектуры Serverless

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

Представьте: вы находитесь на технологической конференции, и каждый третий спикер восхваляет бессерверные вычисления, как будто это святой грааль современной разработки. «Нет необходимости управлять серверами!» — кричат они. «Бесконечное масштабирование!» — обещают они. «Платите только за то, что используете!» — скандируют они в унисон. Но вот в чём дело — и я говорю это как человек, который развернул множество функций Lambda и Azure Functions в продакшене — бессерверные вычисления не всегда являются решением, и рассматривать их как универсальную панацею — это путь к архитектурным проблемам....

September 14, 2025 · 5 min · 973 words · Maxim Zhirnov
Building an Extensible CLI Framework in Go: From Zero to Hero

Building an Extensible CLI Framework in Go: From Zero to Hero

Picture this: you’re staring at your screen, coffee in hand, contemplating whether to use yet another CLI framework or build your own. Well, grab another cup because today we’re diving deep into the rabbit hole of creating an extensible CLI framework in Go that’ll make your future self thank you (and maybe even high-five you through the screen). Building CLI applications in Go is like assembling IKEA furniture – it seems straightforward until you realize you need a framework that doesn’t exist yet....

August 19, 2025 · 13 min · 2681 words · Maxim Zhirnov
Создание расширяемого CLI-фреймворка в Go: от нуля до героя

Создание расширяемого CLI-фреймворка в Go: от нуля до героя

Представьте: вы смотрите на экран, в руке у вас кофе, и вы думаете, использовать ли ещё один фреймворк CLI или создать свой собственный. Налейте себе ещё чашку, потому что сегодня мы погрузимся в кроличью нору создания расширяемого фреймворка CLI на Go, за что ваше будущее «я» скажет вам спасибо (и, возможно, даже даст вам пять через экран). Создание CLI-приложений на Go похоже на сборку мебели IKEA — кажется простым, пока вы не поймёте, что вам нужен несуществующий фреймворк....

August 19, 2025 · 5 min · 946 words · Maxim Zhirnov

Implementing Dynamic Configuration Mechanisms in Go Applications

Picture this: it’s 2 AM, your production service is drowning in traffic, and you desperately need to adjust the connection pool size. But here’s the kicker – your configuration is baked into the binary like a stubborn cookie that refuses to crumble. Sound familiar? Well, grab your favorite caffeinated beverage because we’re about to dive into the wonderful world of dynamic configuration management in Go, where changes happen faster than you can say “deployment pipeline....

August 5, 2025 · 15 min · 3154 words · Maxim Zhirnov