Skip to content

Navid's Blog

Ideas, Experiments, and Lessons Learned

Menu
Menu

Why I Stopped Using useEffect (And What I Use Instead)

Posted on March 30, 2026 by Navid

I used to reach for useEffect for everything. Data fetching? useEffect. Form validation? useEffect. Syncing state? useEffect. My components looked like chaos, and I couldn’t figure out why my code felt so hard to maintain. Then I learned something that changed how I write React: useEffect is not the answer for most problems. The Problem…

Read more

Why I Stopped Using useEffect (And What I Use Instead)

Posted on March 30, 2026 by Navid

I used to reach for useEffect for everything. Data fetching? useEffect. Form validation? useEffect. Syncing state? useEffect. My components looked like chaos, and I couldn’t figure out why my code felt so hard to maintain. Then I learned something that changed how I write React: useEffect is not the answer for most problems. The Problem…

Read more

The Time I Broke Production With a Simple Query

Posted on March 29, 2026 by Navid

It was 2 AM when my phone started buzzing. Not once, not twice — it went full siren mode. Our main API was timing out, and the error messages were everywhere. Here’s what happened. The Setup We had a simple users table. Nothing fancy — just the usual stuff: id, email, name, created_at. We needed…

Read more

The Time Our Database Locked Up at 2AM — What I Learned

Posted on March 28, 2026 by Navid

It was 2:14 AM when my phone started buzzing. Not the normal notification buzz — the panic buzz. Our main API was returning 500 errors across the board. I stumbled out of bed, opened my laptop, and saw it: our PostgreSQL database had ground to a complete halt. What Was Happening The dashboard showed CPU…

Read more

I Built an AI Tool to Auto-Document Our APIs — Then Realized It Was Writing Lies

Posted on March 27, 2026 by Navid

Last month, I built what I thought was a brilliant solution. We had dozens of APIs with outdated or missing documentation. So I wrote a script that used AI to scan our code and generate documentation automatically. The Setup It was simple really — feed the AI our endpoint code, request/response schemas, and let it…

Read more

The Time I Spent 3 Hours Debugging a ‘Simple’ API Issue

Posted on March 26, 2026 by Navid

It Started With a Simple Request Monday morning. Coffee in hand. I open my laptop ready to knock out some tickets. Then I see it — a Slack message from our QA team: Hey, the user profile endpoint is returning 500 errors for some users. Easy fix, I thought. Probably some null pointer or missing…

Read more

I Accidentally Crashed Our Production Server by Opening Too Many Database Connections

Posted on March 25, 2026 by Navid

It was 2 AM when my phone started buzzing. Production server down. Database connections maxed out. Great. What Happened We had a simple feature — fetch user data from an external API and save it to our database. Sounds easy, right? The code looked something like this: for user in users: external_data = fetch_from_api(user.id) save_to_db(external_data)…

Read more

The Side Project I Abandoned Because It Was Too Well-Built

Posted on March 24, 2026 by Navid

I spent three months building what I thought was a masterpiece. Clean architecture. Proper separation of concerns. Full test coverage. Everything I learned in my career, poured into this side project. Then I stopped working on it. Not because I got busy. Not because I lost interest. I stopped because it was too damn hard…

Read more

I Spent 4 Hours Debugging — It Was a Typo

Posted on March 23, 2026 by Navid

Four hours. I wasted four hours chasing a bug that turned out to be a single missing character. Here’s what happened and why I’ll never make this mistake again. The Scenario I was working on a Node.js API that handled user authentication. Everything worked fine locally. But in production, certain login requests would just hang….

Read more

I Spent 4 Hours Debugging a ‘Production’ Bug That Was a Typo

Posted on March 22, 2026 by Navid

The Most Embarrassing Bug I Ever Shipped Four hours. I spent four hours staring at logs, checking git diffs, rolling back deployments, and questioning my entire career — all because of a typo. What Happened We had a payment webhook that was supposed to update user subscriptions. Everything worked fine in staging. But in production,…

Read more

Posts pagination

  • Previous
  • 1
  • 2
  • 3
  • 4
  • 5
  • …
  • 7
  • Next

Categories

  • AI Experiments
  • Coding
  • Debugging Stories
  • Hot Takes
  • Ideas
  • Lessons Learned
  • Project Management
  • Uncategorized
  • Vibe Coding

Recent Posts

  • How I Handled My First Production Outage (And What I Learned)
  • I Finally Fixed Our Slow Database Queries — Here’s What Actually Worked
  • I Finally Fixed Our Slow Database Queries — Here’s What Actually Worked
  • Why I Stopped Using Microservices for Small Projects
  • I Gave AI Full Access to Our Production Database. Here’s What Happened