3 ms·
I've been using copilot for a few months. The advertised usecase where you describe a function with a comment then it spits out a whole function is (in my exp
by phire 4y ago
I've been using copilot for a few months.
The advertised usecase where you describe a function with a comment then it spits out a whole function is (in my experience) pretty bullshit most of the time. It's not good enough to produce good results enough of the time, so you have to always triple check what it spat out anyway. I find it's useally easier to actually write (or start writing) the function myself.
But where copilot really shines (in my experience) is as a really advanced auto-complete. I just write my code as normal and there is a actually a pretty decent chance copilot will spit out the next few lines of what I was planning to write, allowing me to write code faster.
When you are using copilot in this way, it's near impossible for it to do copyright infringement. It's generally only outputting a few lines, and I'm only accepting them when it's reasonably close to what I was planning to write anyway.
It's really good at generating boilerplate code. Or code that interacts with API functions.
Where it really shines is converting unformatted data into code.
For example, You can copy/paste a list of words into a comment, then start writing the code to initialize an array with those words, and it will very quickly cotton on to what you want to do and complete the whole transformation for you.
Sure, the same thing could have been done with a clever macro, or some vim commands I don't know. But I just find working with copilot to be more intuitive. And it can do more advanced transformations too.
When I'm using copilot in this way, it becomes pretty clear that copilot is not simple a code search engine, or a fancy interface Infront of stack overflow. It's pretty clear that it's outputting code that couldn't be found in any database.
I get a little annoyed when everyone (including githubs own marketing) focused on the "whole function from comment" usecase. Not only does it paint it in a bad light from a copyright perspective, but (IMO) it's really not it's best or even most technically impressive mode.
- PaulDavisThe1st 4y ago> there is a actually a pretty decent chance copilot will spit out the next few lines of what I was planning to write, which suggest, loosely, that copilot has been trained on some of your code.
- phire 4y agoI guarantee it has been trained on some of my past code. But it's not like I spend my life simply writing my past code again, and it hasn't been trained on the code I'm about to write, because it doesn't exist yet. Besides, is that not the selling point of copilot? It's been trained on everyone's code, so it should be able to predict for everyone (for some definitions of everyone)