Using GitHub Copilot in VS Code: Friend or Friction?


👋 Introduction
Like many developers today, I often code in VS Code with the help of GitHub Copilot. It’s fast, it’s clever, and sometimes it’s... too clever.
I decided to reflect on my real-world use of AI in my daily workflow: what works, what doesn’t, and what still needs a human touch.
🧩 Where Copilot Truly Shines: Documentation
If there’s one task where Copilot really excels, it’s documentation updates.
It reads the function signature and context.
It generates relevant PHPDoc blocks, Markdown explanations, or even API docs with little effort.
When I refactor a method, it automatically proposes accurate comments that evolve with the code.
🟢 Conclusion: For keeping documentation consistent and up to date, AI is a brilliant assistant — as long as I double-check the results.
🛑 Code Reviews: When AI Becomes Too Opinionated
I also tested AI-powered code review tools (like Copilot Suggestions or other extensions).
Honestly? That’s where the magic started to fall apart.
The AI flags nearly everything: naming, spacing, architecture, structure, even when the code is clean.
It blocks merge requests on stylistic details or differences in philosophy.
It often ignores project-specific conventions in favor of some abstract “perfect code.”
❗ My take: Code reviews should help, not hinder. An AI should align itself with the project’s standards — not impose new ones.
🧪 New Features: Copilot is Only as Good as Your Prompts
When building new features, Copilot can save time — or waste it.
If I guide it with clear prompts, it proposes good boilerplate code and clean structures.
If I let it “improvise,” I get inconsistent logic, mismatched naming, and even code that breaks project conventions.
🧭 Lesson learned: Don’t expect the AI to follow your architectural style unless you teach it. Show it. Guide it. Prompt it.
🔍 The Prompt Matters More Than the Code
In all cases, there’s one recurring truth: the prompt is everything.
Be precise. Example:
create a Laravel service to send notification emails, using the existing EmailNotification interface and respecting PSR naming conventions.
Give context. Don’t assume the AI knows your project.
Always review, refactor, and question what Copilot generates.
💬 Final Thoughts
AI is a powerful ally — but not a replacement for your brain.
Use it where it adds value: documentation, repetitive code, boilerplate.
Be skeptical during code reviews or feature design.
Always prompt intelligently and trust your human intuition.
“Copilot is your assistant, not your architect.”
📌 TL;DR
Area | Copilot Value | Caution |
Documentation | ✅ Excellent | Still needs a human eye |
Code Reviews | ⚠️ Too strict | May block merge requests for trivialities |
New Features | 🤖 Prompt-dependent | Can produce inconsistent logic |
Prompts | 🎯 Crucial | Define scope, structure, style explicitly |
🎯 Tips for Prompting Copilot Efficiently
🧠 Think like a teacher, not a typist. Give Copilot clear instructions and context.
✅ Be specific
// Bad
"create a notification"
// Good
"Create a Laravel Notification class named OrderShippedNotification that uses MailChannel"
✅ Define structure
"Generate a DTO class with public readonly properties and a fromModel() method"
✅ Set context
"We use snake_case for DB columns and camelCase for variables. Don't use helper() functions; use services."
✅ Review & Refactor
Never copy blindly
Refactor the result to match your project
Add your own business logic
🧩 AI needs clarity — the more context you give, the better the result.
Subscribe to my newsletter
Read articles from Jean-Marc Strauven directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Jean-Marc Strauven
Jean-Marc Strauven
Jean-Marc (aka Grazulex) is a developer with over 30 years of experience, driven by a passion for learning and exploring new technologies. While PHP is his daily companion, he also enjoys diving into Python, Perl, and even Rust when the mood strikes. Jean-Marc thrives on curiosity, code, and the occasional semicolon. Always eager to evolve, he blends decades of experience with a constant hunger for innovation.