Skill level and the general feedback on Cursor

First off, I’ve been using cursor for the past days, and generally think it’s a valuable asset. That being the case, I’ve been thinking hard how it could be improved and why I can’t get things done. At this point I must add that I use a simple metric for measuring productivity: lines of code that end up in production code. That might seem like a foolish metric, but keep in mind that in my company it’s required to get a high code coverage - so people are punished for not being efficient at writing condense code. For a bit of context on my questions, I should also add that I’m a professional software developer with over 30 years of experience, won multiple programming contests and so on.

There are a few things I noticed when running cursor for the past days, which I will share here.

  1. Overall, Cursor is quite good at doing a lot of what I call “plumbing”. So, the good news is that that work is considerable in programming, which is why I’d be happy to pay for it. The bad news is that it will introduce a lot of bugs, which requires constant attention.
  2. First off, it appears constantly like Cursor is giving comments “in the dark”; it constantly makes incorrect deductions about what’s in the code “right now” and gives suggestions about things that are already there. Especially in large files. However, I realize that’s probably a “feature” of the underlying language models not behaving correctly. Splitting up large files now and then often makes things worse, because then the machine appears totally lost. Anyways, I hope this can be resolved over time.
  3. It strikes me that the LM is constantly attempting to “please me”. The LM won’t ever tell me “that’s a bad idea”, or “you forgot this”; it always starts with “excellent idea” or “great”… While that might be a pleasant experience for a lot of people, I’m an expert software engineer and don’t want to be pleased. I want tangible, good feedback about my code, highlighted issues, and in-depth reviews. I play hardball, I want my work to be good. I’m not kidding if I say that I fired people for this behavior. At the moment, the reviews are pretty much useless to me; they seem more focused on pleasing the user than actually providing new insights, which just makes it a waste of time. Now, if there is some way to change the behavior of the LM to be “harder” on me, I’d like that very much.
  4. LM’s are very bad at decomposing problems and making variations on existing solutions. For instance, if I ask the LM for an oct-tree, I will get exactly that. But as an expert, I oftentimes don’t use algorithms out-of-the-box, but some variation on it. I can explain said custom variation to the LM, but unfortunately it will just default to the standard implementation, while telling me I’m right. It’s quite frustrating.
  5. Mixing languages in a certain project will definitely give you a horrible experience. Cursor is just unable to explain the LM that it needs to use the language in the currently selected file it seems.

HTH, I’m looking forward to the future,
Stefan.