We Used to Have Two Problems

Developers used to have two problems: the technical one and understanding the product. AI has almost removed the first. But what happens to the fundamentals that struggle used to teach us?

While tidying up the shelves at the office the other day, these two stacks came out. Visual Basic Pro 5.0, a Turkish ASP.NET 2.0 book with “For Everyone” printed on the cover, Dreamweaver 8, Photoshop CS2… And next to them, some newer ones: Clean Architecture, Site Reliability Engineering, a book on design patterns. I lined them up on the desk, took a photo, and then just looked at them for a while 🙂

Old programming books stacked on a desk

The longer I looked, the more one thought came back: developers used to have two problems.

The first problem: technical

We learned Visual Basic Pro 5.0 from a book, underlining with a pencil. We stayed up until 2 a.m. figuring out why an ASP.NET page posted back twice. We built websites in Dreamweaver with tables inside tables, then spent another evening trying to center them. Before asking a question on Stack Overflow, we needed three days to gather the courage.

The second problem: understanding the product

The client said “the report is slow”, but the real issue was that it was going to the wrong person. To figure that out you had to sit across from them in a meeting, ask one or two more questions, and sometimes walk over to their desk to see how they actually used the screen.

So what changed?

The first problem is almost gone. I showed this photo to AI, and it said: “I’ve read all of these books, I’ll handle the technical part.” Fair enough 🙂

But there’s a side effect nobody really talks about. That technical struggle taught us more than syntax. It forced us to learn why data sits where it does, where an error really comes from, how a system thinks. The math behind the work. Nobody taught us that in a class. Those late nights did.

The new generation of developers is fast, and I respect that. They write in an afternoon what took us a week. But they skip the pain. The code runs, yet nobody knows why. And when it doesn’t run, the first reflex is to type “it’s not working, fix it” back into the AI.

Then I asked AI about the second problem: “Can you understand what the client actually wants?”

Answer: “If it’s in the prompt.”

It never is 🙂

The one job left

So there’s one job left, and it matters more than ever: understanding the product. Who will use this screen, when, and what problem will it solve for them? What we build will one day touch someone’s invoice, payroll, or stock count. A developer who thinks about that will use AI extremely well. One who doesn’t will simply build the wrong thing faster.

Let AI handle the technical side, that’s fine. But don’t stop learning the fundamentals, and don’t stop thinking about the product. The books can stay on the shelf, as long as the curiosity inside them stays with you.