Vibe Coding, Productivity, and Staying Sane with AI
Sylvain Roh |
Introduction
AI has changed my daily life as a developer — not by replacing me, but by becoming one of the tools I reach for every day. In this post, I want to share how I actually use AI in my real workflow, what it does well, what it does terribly, and how it’s helped me become more productive without losing my own skills.
Well, I'm not against vibe coding...
Of course, you’ve probably heard the new slang term: “vibe coding.”
Vibe coding is a software development approach where a user describes what they want to build in plain language, and an AI generates the code to create it.
Honestly, I think it’s a good thing. We should use every tool available to stay productive and competitive. Why not use the right tool for the right task? Would you refuse to use a hammer to hammer a nail?
But we also need to understand the limitations. Generative AI can produce code, but you can’t trust it blindly. It’s not a drop-in replacement for reading, thinking, or understanding.
Am I vibe coding?
Yes… I vibe code sometimes.
I use AI to generate scripts that automate parts of my work, or to build small tools for myself or my coworkers. Usually these are small utilities, quick prototypes, or drafts of pieces of code.
And every single time, I read what it generates, correct things, or ask the AI to tweak parts of it for me.
Honestly, I think that’s the best way to use it: use it to accelerate, not to replace understanding.
Here are some things I’ve built with AI’s help:
- A tool to bundle a Node.js app written in TypeScript
- A tool to deploy that bundle to an Azure App Service
- A tool named dockit, a wrapper around Laravel Sail with useful commands like
logstream,dev(runs server + scheduler + queue), and automatic Sail installation - A tool named peek, an improved version of
catwith extras fromhead,tail,less,grep— with color highlighting, line numbers, and Git integration - Many Bash scripts that make me more effective in the terminal
These tools are closed-source because they’re extremely personalized to my workflow — and because I believe every developer can build their own with AI too.
I'm using AI to learn!
When I need to learn a new technology, I often start with AI. I ask for a learning path, an overview, or explanations in simpler terms.
But I still rely heavily on official documentation and, most of all, practice. AI is great for direction, not as a replacement for real learning.
Does AI write my production code?
Well… yes, but also no.
I learned to code without AI — back when the only “assistant” we had was Stack Overflow. That forced me to understand what happens under the hood, how tools work, and how everything fits together.
Today, I use AI to draft small pieces of code, so I can iterate fast. Think of them like Lego bricks. Then I assemble everything myself, like adult Lego.
And regularly, I purposely avoid using AI at all, just to keep my brain working.
What is AI bad at?
AI is terrible at writing complex, production-ready code. It’s even worse when you treat it as documentation for a library or a framework.
It’s worth trying what it suggests, but when I see it’s not what I want, I go back to the only reliable source:
official documentation. Still the best thing to do. Still a core skill every developer needs.
Conclusion
Use AI as a tool — not as a crutch. Know its strengths: speed, drafting, automation. Know its weaknesses: correctness, context, real understanding.
AI can boost your productivity, but only if you stay in control.
