Why Lying About Using AI Makes You a Better Developer

You’ve probably felt it. That quiet guilt when you tab back to your AI assistant, paste a block of generated code, and pray it compiles. We’ve been told that using AI is a crutch, a shortcut that rots our brains. But what if the exact opposite is true? What if the only way to truly master AI-generated code is to lie about using it?

I work in an open-source game-development community where the culture is violently opposed to AI. Mention LLMs in their channels, and you’ll be ostracized. For years, I avoided contributing to their complex, multi-language toolchain because I simply couldn’t wrap my head around it. Then, I started secretly using AI to fix bugs.

Here’s the catch: I can’t tell them. If I submit a pull request generated by an LLM, I’ll be banned. So, I lie. I tell them I wrote it myself.

But to sell the lie, I have to believe it. And that friction is the ultimate learning accelerator.

Think about how most people use AI today. They prompt, copy, paste, and let the machine write the commit message and PR description. It’s frictionless. And frictionless learning is an oxymoron. When I have to pretend I wrote the code, I’m forced into a brutal review process. I make the AI explain the bug fix in painstaking detail. I review every line, ensuring the comments sound exactly like me. I rewrite the logic until it feels like my own.

If you can’t write the commit message from scratch, you don’t own the code. You’re just renting it.

This deception has made me a drastically better developer. Because I have to defend this code as my own, I’ve caught bugs the LLM missed. I’ve learned the intricacies of languages I previously avoided. I’ve developed a deep, structural understanding of the toolchain that I never would have gained if I had just clicked ‘Accept All.’

The community’s anti-AI policy was designed to protect human craftsmanship. Ironically, it has forced me into a disciplined, rigorous learning loop that open AI use never would have. The shame of lying is real, but the pride of finally understanding the code is louder.

So here is my advice to you: even if your project explicitly allows AI, pretend they don’t. Never let an LLM write your commit messages or PR descriptions. Make yourself sell the lie. Force yourself to explain the code well enough that you could defend it in front of a hostile room.

The best way to learn from a machine is to pretend it doesn’t exist.

FAQ

Q: Isn't lying about your code unethical?

A: Yes, it is. But the ethics of code ownership are complicated. The point isn't to encourage deception; it's to highlight that the friction of justifying the code to others is what drives real learning.

Q: How can I apply this without lying?

A: Adopt the 'explain it like I wrote it' rule. Even if you use AI, manually rewrite all documentation, commit messages, and PR descriptions from scratch. If you can't, you don't understand the code.

Q: Does this mean AI is actually good for learning?

A: Only if you treat it as a tutor, not an author. If you let it do the thinking, you learn nothing. If you force yourself to defend its output, you learn everything.

📎 Source: View Source