this post was submitted on 24 Feb 2024
782 points (97.0% liked)
Programmer Humor
19551 readers
950 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
In my experience, Copilot does a fairly good job when you already know what you’re doing, but can’t be bothered to write the code yourself.
For example, basic stuff like read data from that file, use dplyr, remove these columns, do these calculations, plot the result using ggplot2, label the axes this way, use those colors etc. Copilot gives you the code that does roughly what you want, but you usually need to tweak it a bit it to suit your preferences. Copilot also makes absurd mistakes, but fixing them is fairly easy. If this is the sort of stuff you’re doing, copilot can indeed boost your productivity.
However, if you don’t know how to do something a bit more exotic like principal component analysis, and you ask copilot to do the job for you, expect plenty of trouble. You may end up on a wild goose chase, using the wrong tools, doing unnecessary calculations and all sorts of crazy nonsense. When you know what you’re doing, you can ask a very specific thing. When you don’t, you may end up being too ambiguous in your prompt, which will result copilot leading you down the wrong path.
You can do it this way too, but before implementing a single line of that garbage code, you absolutely have to ask copilot a bunch of questions just to make sure you really understand what you’re doing, what the new functions do, where do you really want to go etc. You’re probably going to have to tweak the code before running it, and that’s why you need to know what you’re doing. That’s the one big area you can’t outsource to copilot just yet.
But is it still faster than reading the documentation and building your own experimental tests? If you spend an hour and get a pile of broken garbage, then certainly not. If you spend a bit more, ask plenty of questions, make sure you know what you’re doing, then maybe it is worth it.
I 100% agree. I especially love when copilot literally just starts making up shit that doesn't work or doesn't exist. Like it can't be wrong. It just freaking guesses... God forbid it can't admit it doesn't have enough data to answer the question.
Best part is when you say "that command doesn't exist" it's like "I apologize. Here is a real command to accomplish your task"
SMH
Again, to your point, I agree that copilot is amazing if you already know how to write the code you want. We're smart enough to know that the suggestions will work for our task. It's definitely not smart enough to replace you