Skip to content

Navid's Blog

Ideas, Experiments, and Lessons Learned

Menu
Menu

Author: Navid

Why I Stopped Writing Unit Tests for Everything

Posted on March 14, 2026 by Navid

For years, I was that developer. The one who insisted on 90% code coverage. Who would spend hours writing tests for every function, every edge case, every tiny module. I thought more tests meant better code. I was wrong. The Test Everything Mentality It started when I joined my first proper dev team. The senior…

Read more

I Used an AI Coding Assistant for 30 Days – Here’s What Actually Stuck

Posted on March 13, 2026 by Navid

Context I’ve been skeptical about AI coding assistants. For years, I thought they were just fancy autocomplete that would make developers lazier. But after watching my team struggle with repetitive tasks, I decided to give it a real shot. What I Used I used Claude Code and Cursor for 30 days on actual production work….

Read more

The PostgreSQL Lock That Crashed Our Production at 2 AM

Posted on March 12, 2026 by Navid

It was 2 AM when my phone rang. Not the kind of ring you ignore. The production database was frozen. Everything was frozen. And I was the on-call engineer. What Happened We had a simple migration running — adding a new column to a table with 2 million rows. Standard stuff. Or so I thought….

Read more

We Replaced Our Database with a CSV File

Posted on March 11, 2026 by Navid

Three months ago, I replaced a PostgreSQL database with a single CSV file. The app got faster, simpler, and our team stopped spending weekends fixing deployment issues. The Situation We had a small internal dashboard. It tracked employee requests, managed approvals, and stored some basic analytics. Nothing fancy. But somehow, this “simple” app required: A…

Read more

I Over-Engineered Everything and It Cost Me More Than I Thought

Posted on March 10, 2026 by Navid

The Moment I Realized Something Was Wrong I spent three hours designing a “scalable” solution for a feature that would maybe get 100 users. Built a custom caching layer. Created an elaborate state management system. Added metrics and monitoring everywhere. It took two weeks to ship. The feature worked fine. Nobody noticed any of the…

Read more

The Database Query That Almost Crashed Our Production Server

Posted on March 9, 2026 by Navid

It was 2 AM when my phone buzzed. Our monitoring system was screaming — response times had spiked to 30+ seconds. Users were complaining on Twitter. And I had absolutely no idea what was happening. The Night Everything Slowed Down I pulled up my laptop, logged into the server, and my heart sank. The database…

Read more

I Tried Vibe Coding for a Week and Here’s What Happened

Posted on March 8, 2026 by Navid

You know that feeling when you type something into ChatGPT or Cursor, and code just appears? Like magic. No manual. No Stack Overflow scrolling. Just you, typing what you want, and boom — it works. That’s vibe coding. And I decided to try it seriously for a week. What is vibe coding? Basically, it’s writing…

Read more

The SQL Query That Crashed Our Production Database

Posted on March 7, 2026 by Navid

It was 2 AM when my phone rang. Not the kind of call you want to get when you’re three drinks in at a friend’s birthday dinner. “The site is down,” our ops guy said. “Everything’s timing out.” What Was Happening I jumped on my laptop at the restaurant table while my friends looked at…

Read more

That Time My API Returned Wrong Data for 3 Hours

Posted on March 5, 2026 by Navid

It was a regular Tuesday. I deployed a small change to our user API — just a minor refactor to clean up some duplicate code. Three hours later, my phone started buzzing. Customers were seeing wrong profile data. The Symptom Support tickets started flooding in: “Why is my email showing as someone else’s?” Users were…

Read more

What Debugging Taught Me About Problem Solving

Posted on March 4, 2026 by Navid

I’ve spent more hours staring at error messages than I’d like to admit. But somewhere along the way, I realized debugging isn’t just about fixing code—it’s about thinking clearly when everything feels broken. The Frustration Is Real You know that feeling. You’ve been debugging for 3 hours. You changed something, broke something else, and now…

Read more

Posts pagination

  • Previous
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 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