Thoughts On Cursor
My opinion of Cursor helps or hinders my work has fluctuated significantly over the past few months.
Cursor is really powerful. Having never worked with selenium drivers and barely editing any lines of code, I made a pretty nice scraper in two afternoons. It just works.
However, there’s a pretty significant distinction of using AI code editors that I haven’t seen explicitly stated anywhere.
The first way is tabbing to autocomplete code I’ve written hundreds of times, giving me more time for higher-order thinking. This is usually when I’m working with programming languages and projects I’m already familiar with. I dont see any immediate problems with this.
The second way is when I’m not writing much code but rather prompting and then copy-pasting long blocks of code which I don’t fully understand. This feels magical because I see results immediately, when normally I would’ve had to learn some syntax, read some tutorials, and crawled through docs.
But, when the codebase gets larger, my cracks in understanding compound and I hit a bug where I’m just lost. I can iteratively prompt the model asking it to help me with debugging, but I’m almost entirely limited by the ability of the model. I can’t take the reins myself from this point either since I didn’t really know what was going on the entire time. Good prompting can take you much further, but often not enough.
It’s comparable to cheating on a test where you’re taking a shortcut to a good grade. However, I see more merit (though not endorsing) to cheating in a class you have no interest in (purely to graduate) where you’re just saving time for yourself versus some important class that builds out on the foundations for the future.
This has happened to me where I’m trying to learn something with Cursor but I’m offloading to omany details which means bugs are hard to fix and I end up having to go back and rewrite much of the code anyways.
My conclusion is that Cursor is insane for creating one-off pieces of code when I want to get things working really fast, but unhelpful (even harmful) when I want to learn something from the fundamentals.
However, there’s also the argument that models are improving extremely fast and agents better than 99.9% of software engineers are not far away. By then, technical details probably aren’t very relevant. What happens then?