Habits
The anti-vibe-coding rules of engagement
These four rules are what turn "the AI built it" into "I built it, with AI's help." They feel slower at first. Within a few weeks they make you much faster, because you stop going in circles.
1. The 15-minute rule
When something breaks, spend at least 15 minutes debugging it yourself before handing the error to AI. Read the full error message. Check the logs. Add a console.log or print to see what the values actually are. Look it up in the documentation.
Why: Debugging is the skill. Pasting errors back and forth trains you to wait; investigating trains you to understand. And when you do ask the AI, you'll ask a much better question.
Try this: Before asking for help, write down (1) what you expected, (2) what actually happened, (3) what you've already ruled out.
2. Line-by-line comprehension
Never accept AI-generated code into your project unless you can explain what every line does in plain English. If you can't, ask the AI to explain it, then check the explanation against the docs.
Why: Code you don't understand is code you can't debug, secure or change. It's also where the dangerous stuff hides: a disabled security check, a leaked key, a query that returns everyone's data.
Try this: On each pull request, leave yourself a one-line comment explaining any part that surprised you.
3. The manual typing mandate
While you're learning, type code out yourself instead of copy-pasting it. Yes, really.
Why: Typing forces you to read every character. You'll notice the odd bracket, the missing await, the variable that's never used. It builds the muscle memory that makes syntax stop feeling foreign.
Try this: Use it for the small, important bits: auth checks, database queries, the core logic. Let AI handle boilerplate once you've typed it a few times.
4. Docs first, LLM second
Treat official documentation (MDN, Python docs, PostgreSQL docs, your framework's docs) as the source of truth. Use AI for explaining concepts and connecting ideas, not as the final word on how an API works.
Why: AI models are trained on older code and confidently invent functions and options that don't exist, or that were removed two versions ago. The docs are current and correct.
Try this: When AI suggests a library function you haven't seen, find it in the official docs before using it.
Bonus: the standards your CS Coach enforces
- Explicit error handling. Every network call, database query and file read can fail. Decide what happens when it does.
- Think about Big-O. For any loop over user data, know roughly how it scales.
- Tests for every feature. Unit tests for logic, integration tests for pieces working together.
- Architecture, data and security before UI polish. A pretty screen on top of a leaky database is still a leak.