7 ms·
I've been using Copilot for a few months and... Yeah, it makes mistakes, sometimes it shows you i.e. the most common way to do something, even if that way has
by cube2222 4y ago
I've been using Copilot for a few months and...
Yeah, it makes mistakes, sometimes it shows you i.e. the most common way to do something, even if that way has a bug in it.
Yes, sometimes it writes a complete blunder.
And yes again, sometimes there are very subtle logical mistakes in the code it proposes.
But overall? It's been *great*! Definitely worth the 10 bucks a month (especially with a developer salary). :insert shut up and take my money gif:
It's excellent for quickly writing slightly repetitive test cases; it's great as an autocomplete on steroids that completes entire lines + fills in all arguments, instead of just a single identifier; it's great for quickly writing nice contextual error messages (especially useful for Go developers and the constant errors.Wrap, Copilot is really good at writing meaningful error messages there); and it's also great for technical documentation, as it's able to autocomplete markdown (and it does it surprisingly well).
Overall, I definitely wouldn't want to go back to writing code without it. It just takes care of most of the mundane and obvious code for you, so you can take care of the interesting bits. It's like having the stereotypical "intern" as an associate built-in to your editor.
And sometimes, fairly rarely, but it happens, it's just surprising how good of a suggestion it can make.
It's also ridiculously flexible. When I start writing graphs in ASCII (cause I'm just quickly writing something down in a scratch file) it'll actually understand what I'm doing and start autocompleting textual nodes in that ASCII graph.
- alana314 4y agoCopilot has been amazing for me too. It's gotten to the point where I want similar smart autocomplete features in other software, such as spreadsheets or doing music in my DAW. I think those will come too eventually.
- dkga 4y agoWell, to some extent DAWs like Logic and GarageBand already have some “autocomplete”, eg their drummers.
- moffkalast 4y ago> And sometimes, fairly rarely, but it happens, it's just surprising how good of a suggestion it can make. I've had this experience too. Usually it's meh, but at one point it wrote an ENTIRE function by itself and it was correct. IT WAS CORRECT! And it wasn't some dumb boilerplate initialization either, it was actual logic with some loops. The context awareness with it is off the charts sometimes. Regardless I find that while it's good for the generic python stuff I do in my free time, for the stuff I'm actually paid for? Basically useless since it's too niche. So not exactly worth the investment for me.
- anakaine 4y agoI've found that even in the specialist domains I'm working in, it does pretty well. The caveats being that you need to guide it quite a bit, but once a workflow starts to come together then it really starts to hum.
- BrandonJung 4y agoit is likely that for the stuff you are paid for a custom model might be a better fit.
- TruthWillHurt 4y agoI really don't like it. I find I spend my time reviewing Copilot suggestions (which are mostly wrong) rather than thinking about code and actually doing the work.
- lolinder 4y agoI turned off auto-suggest and that made a huge difference. Now I'll use it when I know I'm doing something repetitive that it'll get easily, or if I'm not 100% sure what I want to do and I'm curious what it suggests. This way I get the help without having it interrupt my thoughts with its suggestions.
- rattray 4y agoHow do you do that?
- lolinder 4y agoIn intellij (which is where I use it), section 8 of this document explains how. I'm assuming there's an equivalent for vscode. When you disable auto complete, it can still be fired via a keyboard shortcut, which is how I use it. https://github.com/github/copilot-docs/blob/main/docs/jetbrains/gettingstarted.md https://github.com/github/copilot-docs/blob/main/docs/jetbra...
- rattray 4y agoAccording to StackOverflow, VS Code users can use alt+\ to trigger the suggestion and disable auto complete with this: "editor.inlineSuggest.enabled": false https://stackoverflow.com/a/71224912/1048433 https://stackoverflow.com/a/71224912/1048433
- ALittleLight 4y agoI have to toggle it on and off. I find that if I'm thinking about what to write it is absurdly distracting to see a suggestion, which is usually wrong, because the suggestion steals my focus. On the other hand when I don't really need to think that much Copilot often gives valuable suggestions that I accept.
- keyle 4y agoAs a polyglot who works in 4-5 different languages every 3-6 months, it's been very valuable. I forget a lot of things, simple dumb stuff like type conversions or specific keywords spelling. Copilot takes care of 99% of that so I can focus on my higher level spec. If anything sometimes it's too agressive. I start typing a word and it's already building up the rest of the application in a different direction...
- rmbyrro 4y agoIsn't your forgetting issue something that spaced repetition would solve while also building confidence in yourself?
- alexeldeib 4y agoI find it’s less about actually forgetting and more about all the mundane details I usually bounce around a codebase to find. What’s the third argument to that function again? Oh, copilot autocompleted it correctly. It’s not always right but it’s right enough it’s a big timesaver.
- rmbyrro 4y ago> Oh, copilot autocompleted it correctly. That assumes I once had the knowledge of what is "correct". I just don't quite remember it right now. Then I rely on Autopilot to complete it. Sometimes I may not feel sure enough to judge whether Copilot is right. I'll need to dig the documentation anyways. Other times I'll feel sure. But in how many of those I'll be wrong? And what will be the consequences?
- alexeldeib 4y agoI agree in concept, in practice I find the relative frequency of "I can't quite remember that thing" is way higher than learning new things I don't know if copilot is right about. > what will be the consequences? for me, usually a failed build or unit test :P low stakes stuff
- 4y ago
- culi 4y agoI really like it too but I can't help but feel like all the same people panicked about Microsoft acquiring GitHub are suddenly quiet about the fact that Microsoft has found the ultimate way to profit off of open-source There's a ton of developer effort that went into Copilot and those devs should be paid fairly. But the majority of what fuels Copilot is the millions of lines of open source code submitted every day. I think I'd feel a lot better about it if they committed a good chunk of that money back into the same open source communities they depend on. Otherwise its a parasitic (or at least not fully consensual) relationship
- uluyol 4y agoMicrosoft could simply crawl archives of code wherever they exist, and use that to build copilot. GitHub hosting open source communities is a way of giving back.
- culi 4y agoMicrosoft gives free copies of Office to schools. Why do you think it does that? MS benefits from people being locked into its service and suite. It provides premium subscriptions for additional features. Hosting code "for free" is part of its business model. It's not a way of "giving back"
- lolinder 4y agoTheir point is that they didn't need to own GitHub to build copilot—they could have used the public code regardless.
- jjluoma 4y agoMaybe they have a stronger position because they own GitHub. There is at least "Release and Indemnification" section in the terms of service.
- croes 4y agoIt's a lot more complicated to crawl code somewhere in the web than to crawl github. They could even change github so it benefits their code crawling.
- scifibestfi 4y agoWhat would be your estimate for how much time it saves?
- baby 4y agoin some tasks, like refactoring, I would easily say that 75% of my time is saved by copilot. For example, I just had to convert some OCaml code to Rust. I wrote the first few conversions, and then I would just paste the OCaml code in a comment, and it would auto-complete the equivalent code in Rust. I just had to check that it was correct, which it was most of the time, rinse and repeat and wow. One would have to be blind to not find copilot impressive, really, it's the future.
- Uehreka 4y agoI get the desire to ask that question, but it also feels like the main thing Copilot saves me is energy, which can’t be quantified in a very useful way. You’ll just have to take our words for it. Like, writing a really boring unit test might only take 60 seconds, but if Copilot can do it for me (even if I have to quickly scan it for correctness) that saves me… well something other than 60 seconds. It sure feels like a big deal.
- haspok 4y agoWhy write that boring unit test at all? If it is not only boring, but also automatically generated, then what value does it add to the code? I would argue it actually _decreases_ the value, because you now have that much more code to maintain and understand. 90% of unit tests people write are garbage according to my experience.
- saimiam 4y agoThis take is too reductionist. Every website ever has a boring unit test called “Is it up?” where you check if the site is still working after a deployment. Boring and repetitive but of infinite value if you can detect early that your deployment broke something. If a boring/boilerplate unit test like this can deliver value, other b/b unit tests are probably going to similar impacts and hence, saying they all “decrease” value is reductionist.