If you're learning to code right now, you're doing it in the one window in history where a chatbot can write your homework for you. That's not a metaphor — it's literally what a lot of beginner tutorials look like today. Which means the actual skill you need to protect isn't "can I use AI," it's "can I tell when I've stopped learning and started copying."

Here's a path that keeps AI in the room without letting it hold the pen. For a broader rebuild plan once the basics stick, see How to Code Without AI.

Learn the vocabulary before the shortcuts. You don't need to memorize syntax by hand forever, but you do need enough of it that when AI generates a for loop, you're not squinting at foreign symbols. Spend your first few weeks writing small, ugly programs with nothing but docs and trial and error. Slow is fine here — this is the only phase where slow is actually the goal.

Use AI as a tutor, not a ghostwriter. Ask it to explain a concept, quiz you, or point out what's wrong with code you wrote — not to write the code for you. "Why doesn't this loop terminate" is a great prompt. "Write me a function that reverses a string" at week two teaches you nothing except how to paste.

Build one thing fully unaided before you build ten things fast. A small project — a to-do list, a basic scraper, a calculator — done entirely without autocomplete or chat, start to finish, teaches you more about how programs actually fit together than five AI-assisted projects will. You'll hit real bugs. Sit in them.

Read other people's code more than you write your own, early on. Open source repos, old Stack Overflow answers, textbook examples — reading builds pattern recognition that prompting never will, because you're doing the parsing work yourself instead of asking something else to summarize it for you.

Introduce AI gradually, once the fundamentals hold. Once you can write a function, a loop, and a basic data structure from memory, bringing AI in to speed up boilerplate or explore unfamiliar libraries is a genuine productivity gain, not a crutch — because you'll actually recognize when it's wrong. When a specific tool becomes the default, Coding Without ChatGPT, Claude or Copilot helps you practice with it off.

The goal isn't becoming an AI-free programmer forever. Almost nobody stays that way, and there's no prize for it. The goal is becoming a programmer who happens to use AI, instead of a prompt-writer who happens to have an IDE open.

Curious where you'd land if you took the dependency test right now, even as a beginner? Might be a useful gut check before habits set in.

Take the test →

Related reading: if you're past the basics and specifically trying to get free of an AI-heavy workflow, How to Quit Vibe Coding goes further into that.

→ Pillar: How to Code Without AI

→ By tool: Coding Without ChatGPT, Claude or Copilot

→ Break the habit: How to Quit Vibe Coding