For those who don’t get good «vibes» from vibe coding
By César Obach
«What if we inverted pair programming? Instead of a human typing while another reviews, AI types while you direct. It’s not vibe coding. It’s not copilot. It’s Wing Coding: where you’re the architect with an instant implementation team. And it’s changing everything we know about software development.»
The Post-Vibe Coding Awakening
In February 2025, Andrej Karpathy (OpenAI co-founder and former Director of AI at Tesla) coined the term «vibe coding» describing a world where developers «surrender completely to the vibes» and let AI generate all the code1. The concept exploded: 25% of Y Combinator’s Winter 2025 batch startups reported 95% AI-generated codebases2. Pieter Levels (indie entrepreneur and creator of NomadList) generated $1 million in 17 days3. It seemed like a revolution.
But cracks appeared quickly. According to security research, 40% of AI-generated code contains vulnerabilities4. «Leo» (a developer who went viral on Twitter), who built a SaaS application entirely with vibe coding, saw his service compromised within days: subscriptions bypassed, API keys exhausted, and database corruption5. The Lovable platform faced breaches affecting 170 of 1,645 applications6. A Startups Magazine survey revealed that 91% of CTOs identified technical debt as their biggest challenge7.
The tech community became deeply polarized. Junior developers showed 70-80% enthusiasm toward the practice, while seniors expressed deep skepticism8. Startups accelerated while corporations hit the brakes. Simon Willison (Django creator and AI expert) tried to clarify: «If you’ve reviewed, tested, and understood everything, that’s not vibe coding, that’s using an LLM as an assistant»9. But a clear model was missing.
Today I propose that model: Wing Coding.
What is Wing Coding?
Wing Coding is the pragmatic middle ground between traditional code’s total control and vibe coding’s blind surrender. In Wing Coding:
- The human pilots: Defines architecture, makes critical decisions, sets direction
- AI executes: Implements under supervision, generates code, handles repetitive tasks
- Both collaborate: Continuous dialogue, real-time adjustments, constant validation
It’s inverted pair programming: instead of a human typing while another reviews, AI types while the human directs. Like a pilot and their wingman in tactical formation.
Wing Coding vs. AI-Assisted Development: The Crucial Difference
Simon Willison was right when he said that using AI responsibly isn’t vibe coding. But Wing Coding goes beyond simple «responsible use.» The difference is fundamental:
Responsible AI-Assisted Development:
- You use AI to autocomplete or generate snippets
- You write the main structure, AI helps with details
- It’s like having an assistant that suggests while you work
- The flow is: Human writes → AI suggests → Human accepts/modifies
- You keep your hands on the keyboard
Wing Coding:
- AI has the «keyboard,» you have the «wheel»
- You actively direct the entire development session
- It’s like being an orchestra conductor – you don’t play instruments but control the symphony
- The flow is: Human designs → AI implements → Human directs adjustments → Continuous iteration
- Your hands are free to think
The key difference: in traditional assisted development, you’re a programmer with help. In Wing Coding, you’re an architect with an instant implementation team.
Why Wing Coding Solves Vibe Coding Problems
1. Security by Design
While vibe coding produces 40% vulnerable code, Wing Coding maintains constant human oversight. Pieter Delbare (security expert at Aikido Security) warned that «vibe coding creates a perfect storm of security risks that even experienced developers aren’t equipped to handle»10. Wing Coding mitigates this: the developer reviews every critical block before it reaches production. It’s not blind trust; it’s supervised delegation.
2. Controlled Technical Debt
The «invisible technical debt» concerning 91% of CTOs is mitigated when a human maintains architectural coherence. As an anonymous senior Microsoft architect noted: «LLMs are excellent for one-off tasks, but they’re not good at maintaining or extending projects»11. Wing Coding enables speed without sacrificing long-term maintainability.
3. Skill Preservation
Unlike vibe coding which can atrophy fundamental skills, Wing Coding strengthens them. A junior developer shared on Reddit: «These two years with AI have been a direct injection of knowledge. I’ve grown more as a programmer than in the previous eight years combined»12. The developer must understand deeply to direct effectively.
4. Corporate Compatibility
While corporations reject vibe coding for its risks, Wing Coding fits their processes. Companies allocate up to 40% of their IT budgets just to manage existing technical debt13. As a Google engineer explained: «It’s not just about code quality. It’s about legal responsibility, SOC 2 compliance, and being able to explain every technical decision in an audit»14.
The Generational and Corporate Divide
MIT Technology Review perfectly captured the tension: «Vibe coding has created an unprecedented generational divide in programming»15. Meanwhile, Garry Tan (Y Combinator CEO) proclaimed that vibe coding allows «10 engineers to do the work of 50 to 100»16, revealing that teams of 5-13 people achieve results comparable to traditional companies with 50-100 engineers.
However, IBM published a clear warning: «Enterprise organizations must approach vibe coding with extreme caution»17, while GeekWire headlined: «Why startups should pay attention to ‘vibe coding’ — and approach with caution»18.
Wing Coding in Practice
Scenario 1: Feature Development
Developer: "I need to implement ISO8583 payment validation for Mastercard"
AI Wingman: "Understood. Implementing validator with checksums and retries. 30-second timeout configuration?"
Developer: "Make it configurable, 30s default. Add detailed logging for audit."
AI generates:
public class MastercardISO8583Validator {
private final int timeout = 30000; // Hardcoded
public ValidationResult validate(ISO8583Message message) {
// Basic validation
if (message.isValid()) {
return new ValidationResult(true);
}
return new ValidationResult(false);
}
}
Developer: "No, I need: 1) Configurable timeout via @Value, 2) Retries with exponential backoff, 3) Structured logging for each step"
Wing Coding in action: code evolves under your direction until reaching exactly the solution you need.
Scenario 2: Enterprise Information System
Developer: "I need an executive dashboard consolidating sales, inventory, and finance KPIs"
AI Wingman: "Understood. I propose architecture with: REST API for data sources, Redis cache for metrics, WebSocket for real-time updates. What update frequency do you need?"
Developer: "Real-time for sales, hourly for inventory, daily for finance. And I need drill-down by region"
[AI generates base structure]
Developer: "Perfect, but let's add PDF export for executive reports and notifications when KPIs go out of range"
Scenario 3: Legacy Refactoring
Developer: "This 2000-line module needs to be separated into services"
AI Wingman: "I identify 5 distinct responsibilities. I propose structure: PaymentValidator, TransactionProcessor, AuditLogger, NotificationService, and ResponseBuilder. Proceed with this separation?"
Developer: "Perfect, but keep the public interface intact to avoid breaking integrations"
The Real Fears of Wing Coding
Let me share something personal: my partner, with over 40 years of programming, still feels he’s «losing control» when doing Wing Coding. And he’s not alone. This psychological fear is more common than we think.
Impostor syndrome 2.0 hits hard: «Am I a real programmer if I don’t write every line?» It’s the same anxiety architects felt when CAD appeared, or designers with digital tools. The paradoxical reality: with Wing Coding you have MORE control, not less.
Think about it: when you write code manually, your mind is divided between syntax, variable names, loop structures, and a thousand small details. With Wing Coding, all your attention is on what really matters: architecture, design decisions, business logic. The code IS yours – only who moves the fingers on the keyboard changed.
A senior developer confessed to me: «It took me three weeks to realize I was reviewing generated code more thoroughly than code I wrote myself.» That’s the irony: Wing Coding can result in higher quality code because it forces you to be a better reviewer.
Are You Doing Wing Coding? The Definitive Test
The line between Wing Coding and vibe coding may seem blurry, but there are clear indicators:
✅ IT IS Wing Coding if:
- You review EVERY block before accepting it
- You can explain what each function does and why
- You actively direct: «No, better use a Map here instead of an Array»
- The final code reflects YOUR architectural decisions
- You iterate constantly: «Good, but extract that logic to a separate service»
- You maintain context: understand how each piece fits in the system
❌ IT’S NOT Wing Coding (it’s vibe coding) if:
- You copy and paste without understanding the generated code
- «If it works, it’s fine» is your philosophy
- You can’t explain why that approach was chosen
- You’d be surprised if someone asked about code details
- You blindly trust that AI «knows what it’s doing»
- You avoid code reviews because you’re not sure about the code
The fundamental difference: in Wing Coding, you’re the architect supervising construction. In vibe coding, you’re a spectator hoping the house doesn’t fall down.
Ideal Use Cases
Fortune described cases where vibe coding shines: «prototypes, personal projects, and MVPs»19. But as The Pragmatic Engineer warned: «Vibe coding is not an excuse for low-quality work»20.
Wing Coding finds its place in:
- Enterprise development: Where quality matters as much as speed
- Regulated systems: Fintech, healthtech, where every line must be auditable
- Legacy modernization: Navigating complexity with intelligent assistance
- Mixed teams: Amplifying productivity without marginalizing seniors
- Mature startups: Past the «move fast and break things» phase
The Future of Software Development
Replit predicts: «Vibe coding will fundamentally transform how we build software»21. Reuters reported stratospheric valuations for «AI coding» startups22. But as N’s Blog warned: «Vibe Coding is a dangerous fantasy» when applied without criteria23.
Simon Willison offered the most balanced perspective: «Not all AI-assisted programming is vibe coding (but vibe coding is great)»24. This distinction is crucial.
As developers, our role evolves. From writing every line to being architects, directors, code curators. Wing Coding doesn’t take away our keyboard; it gives us wings.
Implementing Wing Coding in Your Organization
Fundamental Principles:
- The human always pilots: AI suggests, human decides
- Continuous review: No code enters without understanding
- Context is king: The wingman must understand the business domain
- Quality metrics: Measure not just speed but maintainability
Recommended Tools for Professionals and Teams:
- Claude Desktop: Excellent for deep technical conversations
- Claude Code: Excellent for Wing Coding
- Cursor: IDE designed for Wing Coding
- Junie by JetBrains: AI assistant integrated into the JetBrains ecosystem
- Other emerging tools: OpenAI Codex (the base of GitHub Copilot), Continue.dev (open source extension for VS Code), Codeium (free alternative with enterprise capabilities), among others that continue appearing in the ecosystem
Success Metrics:
- Development speed: 3-5x typical improvement
- Production bugs: 30-40% reduction
- Developer satisfaction: Significant increase
- Technical debt: Controlled and measurable
Start Wing Coding Today
You don’t need to wait or prepare extensively. You can experiment with Wing Coding now:
1. Try Wing Coding in 5 Minutes
Open Claude.ai (no installation needed) and try this:
- Paste a function you want to improve
- Direct: «Refactor this for better readability, but maintain the same interface»
- Review each proposed change
- Iterate: «Better use early returns here» or «Extract this validation»
2. The Golden Rule
If you can’t explain it, don’t commit it. Period.
3. Join the Movement
Share your first experience with #WingCoding. The community is being born.
📚 Coming Soon: Wing Coding Cookbook
The definitive guide with:
- Real metrics from ultraBASE and case studies
- Prompt templates for every situation
- Adoption strategies for resistant teams
- Code review frameworks for Wing Coding
- ROI and metrics to convince management
Subscribe to be the first to receive it. The responsible development revolution is just beginning.
Conclusion: Flying Toward the Future
The vibe coding debate taught us a valuable lesson: speed without control is dangerous, but control without speed is obsolescence. As TechCrunch noted: «A quarter of startups in YC’s current cohort have codebases almost entirely AI-generated»25. The question isn’t whether we’ll adopt AI-assisted development, but how.
Wing Coding offers that answer. It’s not about replacing developers. It’s about elevating them. It’s not about generating code faster. It’s about building better software. It’s not about blindly trusting AI. It’s about collaborating intelligently.
While the industry debates between vibe coding enthusiasm and traditional skepticism, Wing Coding emerges as the pragmatic path forward. A future where every developer flies with their own AI wingman, reaching heights neither could achieve alone.
Time to spread your wings.
César Obach is CEO and Co-founder of ultraBASE, the technological feats factory specializing in Telco. He is also CEO and Co-founder of U-Payments, a fintech company specializing in payment processing. With over two decades of experience in technology and enterprise architecture, he has led digital transformations across multiple industries.
Important note: This article was originally created in Spanish using Wing Coding. During its creation, I maintained the role of architect and content director while Claude acted as my wingman, researching sources, structuring ideas, and generating text under my continuous supervision. Every paragraph was reviewed, every argument validated, every citation verified. The English translation you’re reading was also produced using Wing Coding, with Claude translating under my direction while preserving the original’s tone, structure, and impact. This note is not just a transparency statement: it’s a practical demonstration that Wing Coding produces professional quality content in multiple languages when the human maintains control. The future is not human vs. AI, it’s human with AI. And this article—in both languages—is the proof.
Footnotes
- Vibe coding – Wikipedia ↩
- Y Combinator CEO says «vibe coding» is rewriting the rules of startup success – TechSpot ↩
- Silicon Valley CEO says ‘vibe coding’ lets 10 engineers do the work of 100 – Fortune ↩
- The case against vibe coding – TheServerSide ↩
- What is vibe coding? – The Daily Dot ↩
- Vibe Coding Success Stories – Arsturn ↩
- 9 in 10 CTOs believe technical debt to be their biggest challenge – Startups Magazine ↩
- Revenge of the junior developer – Sourcegraph ↩
- Not all AI-assisted programming is vibe coding – Simon Willison ↩
- 10 Professional Developers on the True Promise and Peril of Vibe Coding – Security Journey ↩
- Vibe Coding: Revolution or Reckless Abandon? – Substack ↩
- Vibe Coding? Yeah, I’ve Been Doing It for Two Years – DEV Community ↩
- Technical Debt Liability – CTO Magazine ↩
- Companies Are Discovering a Grim Problem With «Vibe Coding» – Futurism ↩
- What is vibe coding, exactly? – MIT Technology Review ↩
- ‘Vibe Coding’ is Letting 10 Engineers Do the Work of a Team of 50 To 100 – Slashdot ↩
- What is Vibe Coding? – IBM ↩
- Why startups should pay attention to ‘vibe coding’ — and approach with caution – GeekWire ↩
- Silicon Valley CEO says ‘vibe coding’ lets 10 engineers do the work of 100 – Fortune ↩
- Vibe Coding as a software engineer – The Pragmatic Engineer ↩
- What is Vibe Coding? How To Vibe Your App to Life – Replit ↩
- AI startups revolutionize coding industry, leading to sky-high valuations – Reuters ↩
- Vibe Coding is a Dangerous Fantasy – N’s Blog ↩
- Not all AI-assisted programming is vibe coding (but vibe coding rocks) – Simon Willison ↩
- A quarter of startups in YC’s current cohort have codebases that are almost entirely AI-generated – TechCrunch ↩
