Vibe Coding: An Evolutionary Step, One Tantrum at a Time
Raising Cursor: The Hilariously Frustrating Life of an AI Code Writer Parent
Happy Mother's Day! While my daughter is off expanding her horizons in academia, and my furry forever toddler is pursuing the noble art of horizontal life, my nurturing energies are currently focused on a recent addition: Cursor, the $20-a-month coding 'toddler' marketed as the AI Code Editor when in fact it's more of a prolific code generator. Editing, as anyone who's truly coded knows, is a very different ballgame than simply generating; it demands careful consideration of the entire context and is all about surgically removing the excess to deliver the most elegant and efficient solution.
The energy around AI-assisted coding (aka vibe coding) promised a serene partnership, a digital Sherpa guiding me through complex algorithms. The reality, however, is less Himalayan vista and more… well, navigating a playdate with a particularly opinionated two-year-old who occasionally crafts magnificent Lego structures (entire code blocks!) but is equally prone to epic, logic-defying meltdowns (hallucinations) that leave digital code smeared across my screen. And the memory? Forget about it. Asking Cursor to recall a function we meticulously crafted yesterday is like asking a toddler where they put their favorite toy – even if it's clutched tightly in their digital fist. 'But the code is RIGHT THERE!' I mentally wail, much like a frustrated parent pointing at the offending crayon mark on the wall.
I've even written about AI-assisted coding (or vibe coding) and how it can help both beginners and experienced coders, and the skills needed to augment what can be quickly generated from vibe coding tools like Cursor, Replit, and Windsurf1. At Kai Roses, AI-assisted coding has become a valuable part of our workflow, and as a small business, we fully embrace its positives, particularly the dramatically accelerated code generation it offers compared to manual coding. And I do enjoy my relationship with my cursor; for one, it always tells me I'm right. I don’t ever recall it disagreeing with me, which makes me wonder what I'm missing. I mean, how can I be right all the time? I'm also big on solution design and following architecture in code development, but Cursor doesn't care about all my design principles; it just keeps adding until I have to put a stop to it and suggest refactoring the code and eliminating redundancies. Sometimes, when I'm less patient, I just point out the error and expect it to resolve it – a bit like a brief 'reset' for a very persistent toddler. But unlike a less diligent assistant, Cursor will keep at it until the code is error-free. The outcome of the code might change in the process, but hey, the code now runs!
The financial aspect is also a consideration. The constant requests for API keys, specialized libraries, and a whole ecosystem of other subscriptions are certainly a factor for a small business like ours. My initial $20 vanished within a week, and now it's the pay-as-you-go model. To Cursor’s credit, their consumption reporting is transparent. I used to fret about streaming subscriptions after ditching cable, but that was simpler than navigating the costs of cloud, software, and AI tools. Running a business means daily, weekly tracking of these consumption rates. The thought of tasking Cursor with building an agent to monitor all of that has a certain irony – more expense to manage expenses! Perhaps my 50 open browser tabs remain the current solution. And hey, at least this $20 (now more) a month offers some clarity compared to the opaque reporting from X on my $200 monthly API calls, where hitting rate limits is a recurring event.
This isn't the promised land of effortless coding; it's more like having a precocious but utterly dependent “helper” who coos about simplifying my life while simultaneously contributing to a bill that feels disproportionate to its current capabilities. I'm no longer just the architect of my own code; I'm also the bewildered interpreter of Cursor's digital output, the tireless debugger of its illogical pronouncements, and the meticulous historian of our coding journey because its contextual awareness beyond the last hour can be… limited.
Sure, the initial burst of code generation is impressive, like a quick win. But then comes the inevitable demand for iteration on complex projects, requiring nuanced variations and rigorous testing – a process that often feels less like collaboration and more like guiding a very enthusiastic but sometimes lost assistant. Each attempt can bring resistance, unexpected outputs, and the feeling that I'm expending more energy guiding the AI than actually coding. The alluring concept of truly autonomous agents diligently handling routine tasks remains a distant dream when our present reality involves these high-hand-holding assistants, each requiring constant guidance, a steady stream of paid resources, and the unwavering dedication to help them evolve into the reliable coding partners we envision – agents that are both fiscally and socially responsible.
While this is a light-hearted post on the parent-like responsibilities of vibe coding, I do believe that this is an evolutionary step in programming that we should not ignore and adapt proactively in our workflow. The recent $3B acquisition of Windsurf by OpenAI2, and the rumors of a near-miss deal with the $9B-valued Cursor3 (which, in a smart move, is now free for students), clearly signal the relevance of these tools. Companies like Cursor will continue to play a significant role in rise of AI-powered startups, new wave of small tech-savvy businesses and far more efficiently run technology organization in fortune 1000 companies. If you are new to AI assisted coding and just getting started read the medium post on guide to vibe coding tools4.
Looking ahead, I envision three potential, and likely intertwined, evolutionary paths for AI-assisted coding:
1.) The Persistent Challenge of Hallucinations: Mirroring the trajectory of LLMs, increased adoption of these tools could usher in a period marked by significant hallucinations and a lack of inherent explainability. The reported hallucination rates of OpenAI’s o3 and o4-mini models (30-50% according to Forbes5) and Anthropic CEO Dario Amodei's admission of model opacity6 starkly reminds us that, according to Amodei, we may still be at least a decade from truly understanding how and why these models function. This inherent opacity underscores the risks of over-reliance on the broad generalizations inherent in LLMs, even within the structured domain of code.
2.) The Promise of Enhanced Tooling: The significant capital flowing into this sector fuels the expectation that tools like Cursor will mature beyond basic code generation to encompass comprehensive design and testing functionalities – a development I, as a small business owner, view with considerable hope for potential acceleration.
3.) The Ascendancy of Developer Expertise: The evolution of these tools will necessitate a parallel evolution in developer skills. With AI increasingly handling initial code creation, the true distinction between exceptional and average developers will reside in the ability to architect elegant, scalable solutions and rigorously validate their efficiency. This presents a unique opportunity to prioritize design and testing, areas often relegated in the past.
The emergence of each new tool represents an opportunity for developers to elevate their skills. Our challenge lies in mastering these AI assistants to amplify our curiosity, critical thinking, and problem-solving prowess, rather than allowing them to dictate our workflow. For those interested in a more hands-on exploration, Reuven Cohen's GitHub provides a guide to building your own AI IDE7.


