A few years ago, I was reviewing code from dozens of developers across our team. One pattern I saw constantly: a dev would need a new API endpoint, so they'd open an existing one, copy the whole thing, rename the route, swap out the model, adjust the logic, and submit a PR.
I never told them to stop. That existing endpoint already followed our conventions, handled errors correctly, and had been battle-tested in production. Starting from scratch would have been slower and worse.
That's how software gets built. Not by typing every line from memory, but by finding the right example and adapting it.
I keep seeing this take: "I'm going back to writing my own code." The implication is two camps. AI generates everything, or you type it yourself like a real developer.
That's not how it works, and it hasn't been for a long time.
Before AI, you were copying and pasting. From Stack Overflow. From existing code in your codebase. You'd grab the pattern, change some variables, and move on. That's not a shortcut. That's the job.
And copying was the right call. It kept the codebase uniform, which meant less time debating style in code review and more time shipping. A team moving in one direction will always outpace a team where everyone solves the same problem differently.
Beyond copy-paste, we've been offloading work to tools for years. Linters. Prettier. Scaffolding generators. CI pipelines. Nobody said, "I'm going back to manually formatting my code."
Then Copilot showed up. Autocomplete on steroids. Then Cursor and Cline, still in the IDE, but writing larger blocks with project awareness. Now agentic tools like Claude Code plan, implement, and iterate while the developer directs and reviews.
Each step gave developers less to type and more to decide. At no point was anyone typing all their code to begin with.
The fair pushback isn't about typing. It's about understanding. When you copied an endpoint and adapted it, you read it. You understood it. The concern with AI is that it skips that step.
That's a legitimate risk. But it's not a reason to reject AI. It's a reason to review what it produces.
Saying "I'm going back to writing my own code" implies there was a time when you were writing it all yourself. There wasn't. The job was never typing. It was choosing the right pattern, reviewing what ships, and making the calls that tools can't make for you.
The tools have evolved fast in the past year. But that job hasn't changed. The best engineers use what's available to them to ship value, and the ones paying attention are doing it now with AI.
Rejecting better tools doesn't make you a better developer. It just makes you a slower one.