Most developers like to believe that a good product will eventually speak for itself. Sometimes it does. More often, it quietly sits on the internet, perfectly engineered, carefully documented, and almost completely invisible. That is not because the product is bad. It is because the web is crowded. Search engines, communities, newsletters, blogs, GitHub repositories, comparison pages, and documen
When building modern applications, one problem shows up everywhere: How do I uniquely identify data across systems? That’s where UUIDs (Universally Unique Identifiers) come in. A UUID is a 128-bit unique identifier used to identify information in distributed systems. Example: 550e8400-e29b-41d4-a716-446655440000 It looks random - and that’s the point. Traditional IDs (like auto-increment integers
In the previous post, I walked through the compensation logic in each service. The code looks clean on paper. But sagas have a lot of moving parts, and bugs tend to hide in the transitions between services, not inside a single service. This post covers how I test the saga system: unit tests for each service, orchestrator routing tests, and the edge cases that caught me off guard. The orchestrator'
I got tired of not knowing why users were dropping off in my app. Heatmaps show you where people click. Analytics show you when they leave. But nothing tells you how they felt while using it. So I built SessionMood API — a REST API that scores user mood in real time based on behavioral events. You send behavioral events from your frontend: fetch("https://session-mood-api-production.up.railway.app/
There's a quiet shift happening in how AI tools interact with users, and most developers haven't noticed yet, because just one week after the MCP Apps specs were published by Anthropic, OpenAI launched a huge marketing campaign around OpenClaw and they got all the attention, at least for a while. For the past two years, every AI assistant has been stuck behind the same interface: a text box. You a
Thanks to AI, I've spent more time architecting and building apps, which means I spend a lot of time looking at frontier models and agonizing over token use. I’ve also been battling a very modern affliction: token consumption anxiety. It feels modern AI-powered app architecture is asking us slaps an LLM at the front door. You want to dynamically pick the best model for a specific task? Great, the
Posted on vicspot.com — All tools run 100% in your browser. Zero data sent to any server. As developers, we constantly switch between 10+ different tabs just to do basic tasks — format some JSON here, generate a password there, convert a hex color somewhere else. It's frustrating and slow. I built Vicspot.com to fix this — a single page with 12 free browser-based utilities that run entirely client