General Cursor thoughts from a non coder (though this is likely applicable to all)

I haven’t really touched a coding development in such depth since I graduated college in computer science, and without aging myself, that was well before GitHub was founded. At this time, I’m using Cursor to tinker with Garmin data fields and watch faces, typically building off existing code.

Overall, Cursor, like other AI interfaces, has improved my workflow. To date, I’d been asking Gemini or ChatGPT for basic code to download files and handle rate limits and duplicates as well as convert them into different file types, but I moved to VS Code for about 5 seconds and then to Cursor on a recommendation from a newsletter.

Cursor’s AI is definitely better than GitHub CoPilot. I can’t quite put my finger on why, but I felt like I was making better progress with Cursor than CoPilot.

But like typical AIs, it’s like talking to an old man who has a short term memory. We flip flopped between making the same mistakes, and while I definitely derive benefit from dumping a URL and having the data extrapolated to determining a correct function to use, it does the end user no good if those changes cannot be committed to memory.

I know this is a problem of AI in general, and not specific to Cursor. But I would expect that Cursor know what’s authoritative and apply those data points so that I’m not making the same mistake 40 times (and initially, I was blindly accepting fixes so that actually did happen. Eventually I started tuning in and realizing what errors were recurring, so I didn’t need the AI to help me figure out my mistakes. But I am the dummy here. The AI is supposed to remain smarter than me).

That said, it’s saved time, I’ve learned a lot about Monkey C from looking at code, and to some degree, having Cursor add its explanations. Again, I would share a URL and expect it to learn, but it did not. The fact that there’s no inherent learning and too much repetition is rather frustrating, and I would expect coding AIs to behave differently especially if there are authoritative pages from the API docs or codebases themselves. Cursor should be fed these authority pages and actually figure out how to absorb the information, helping the end user and not going back and forth in a game of tug of war.

As stated, I don’t think this is exclusively a Cursor problem. AI models in general have trouble with this overall. ChatGPT and Gemini can’t even parse words from a dictionary to help users win Wordle (example conversation: “please share some 5 letter words whose 3rd, 4th, and 5th letters are ACH, e.g. ACH.” The AI will spit out beach, reach, teach, but not macho or nacho). I fail to understand how basics like this are so easily overlooked.

The only other thing, and I shared this in another thread, is that every single change auto saves a file. In theory, that’s great. But I’ve had to take 50 steps backward (often because of the tug of war described above) and I would like it if my most recent manually saved file is accessible somewhere. Highlighted in the timeline, perhaps? I come from the era before versioning but I feel like this could save others too…

Overall, I am glad we are in a time where I could ask some AI to build stuff and for the most part, it comes out okay. That said, I can’t tell you how many hours I spent trying to really nail down these basics, and my trial went to slow mode in less than 24 hours of my first use. With some authoritative sources really leading the way, I think Cursor can put itself in a good place.

Hope my long ramble has been somewhat helpful. I don’t have solutions to these issues but I sure as heck hope they can be implemented easily and quickly.

1 Like

About the forgetting thing: I force the model, through the “Rules for AI” setting, to write notes in comments at the beginning of every file: features, constraints, considerations. It helped a lot.

About word plays, these models only “see” tokens and have a hard time analyzing words at the letter level. You can however easily ask it to create a short program to run all the words from the dictionary through whatever treatment you would like.

And for history, I feel your pain. Navigating a file history is really clumsy right now. What I do is that I very often commit to git. As soon as something works, git commit. After all, that’s how it is supposed to be used. I kinda had that preconceived idea that git should be used once ever hour or two hours because that’s how it works if I code manually, but actually it should be used on every piece of progress you may want to revert to!