Favicon
Youniss
Python Logo

AI Shot me in the foot

AI Shot me in the foot

Published on
Blog Software Engineering

A few months ago, I developed a small payment platform for a friend to manage his course subscriptions. The platform was designed to:

  1. Allow users to log in via Google
  2. Let them select a course
  3. Enable subscription to that course via PayPal
  4. Enroll them in the Moodle course

Pretty straightforward, right? However, due to laziness and the fact that I was working on this project pro bono for a friend, I decided to use AI assistance with Cursor.

Initially, progress was astonishingly fast. My approach was essentially that of a prompt engineer. I would tell Cursor what I wanted, and it would magically generate the code for me.

At first, I was amazed! I genuinely believed this was the future of programming—no need to delve into documentation anymore. I could simply instruct the AI on what to do and correct it whenever errors arose.

However, my AI honeymoon was short-lived…

Unveiling the Flaws

Just before my friend was set to launch his course, we tested the platform across multiple devices and scenarios. The platform was riddled with bugs on some devices, and I had no idea how to fix them. Upon inspecting the code, it looked like complete gibberish.

  • Long ass tailwind css classes everywhere
  • No error handling
  • unhelpful comments everywhere
  • No tests
  • redundant code
  • unstructured folders

I had really shot myself in the foot. Or more accurately, I watched AI shoot me in the foot while it gaslit me.

Despite my best efforts to fix the code, I reached a point where starting over seemed like the best option. I turned off Cursor, switched to my actual IDE (Neovim, btw), initiated a fresh project, and began sifting through what I could salvage and what needed to be discarded.

In hindsight, I would have completed a more stable project much faster had I not relied on AI from the start.

Rethinking My Relationship with AI

AI programming isn’t the answer, or at least its not ready yet. The biggest problem is that you turn off your brain when AI is around.

AI-assisted programming literally makes you a more incompetent developer. It took me a while to realize this, and a failed pre-launch was the wake-up call I needed.

For now, I’ve unsubscribed from Cursor and disabled Copilot and SuperMaven in my editor (Neovim, again). However, I do occasionally use SuperMaven for refactoring because it genuinely shines in that area and saves me time and frustration.

Our strengths as humans isnt to retain information, but to solve problems with it.

Use AI, connected to search agents to quickly sift through documentation. Don’t use it to substitute your own thinking. Thinking is your strength, not the LLM’s. It’s strength is to sift through tons of information and regurgitate it for you.

But yeah, I have officially broken up with Cursor and will only be in a Situationship with the other AI coding assistants.