4 ms·
> The code Copilot writes is not very good code. This has been my experience as well. Some of the early promo material for Copilot showed someone writing a fu
by eminence32 5y ago
> The code Copilot writes is not very good code.
This has been my experience as well. Some of the early promo material for Copilot showed someone writing a function signature with docs, and having Copilot write the entire body. This rarely works for me, except for fairly trivial functions. This is also not how I normally write code.
However, where Copilot has been rather good is offering intelligent "tab completion", where it makes a suggestion for the next line of code. In particular, it seems very good at figuring out the structure of my code and making sensible suggestions.
I suspect that if anyone ends up using Copilot for the long term, they will (as a human operator) need to learn and gain intuition about how to use Copilot's strengths and avoid its weaknesses.
- skohan 5y agoCopilot is also almost certainly going to become better. For example, NVIDIA's DLSS was viewed as a failure at launch, but now it's almost magic in terms of offering better results at a lower performance cost.
- outsomnia 5y agoBetter at issuing haphazardly modified boilerplate that already exists... the real costs of writing code are about carefully choosing how pieces will fit together and deciding on minutae with that in mind. Copilot is the antithesis of designing good software.
- skohan 5y agoAI is getting better than humans at a lot of complex task over time. Just because it can't code well now doesn't mean it won't in the future.
- krageon 5y agoWhat it means that it can't code well, so there's nothing to be excited about. That we cannot predict the future is of course true but really has no bearing on what you're saying, except to lend credence to the idea that it will be able to some day (i.e. that you can predict the future). Which is in essence the opposite of what "we cannot predict the future" should mean. That makes the entire argument kind of disingenuous.
- skohan 5y agoWe can't know the future, but we guess based on past trends. Technology has been pretty good at replacing humans in the past, and a lot of times we've said "a machine can't do this" and been wrong. We'll have to see, but I think it's silly to say it's not working now so it never will.
- krageon 5y agoWe've heard breathless claims that AI will replace people coding ever since the advent of AI in some form or another. If we truly were going on past trends, we would conclude it is not very useful and will probably stay that way.
- skohan 5y agoDo you think Copilot doesn't represent a step forward since the advent of AI?
- deleted 5y ago[deleted]
- UncleMeat 5y agoBoth parts matter. Making humans faster at writing the well isolated implementations means more time for the important stuff. Tons of productivity features could be foolishly dismissed with "well, the actually important bit is design so this is worthless".
- hippari 5y agoTo me graphic seems to have a very specific goal of rendering more details & better simulation of real world. People aren't even agreed on what is "good" code.
- skohan 5y agoYeah but only software engineers care about "good" code. Everyone else just wants their software to do it's job. If you can train AI to write code which is going to get the right outputs, it will win. AI can probably also beat humans in terms of things like performance optimization. An AI can write code a human never would. We have to write short functions and well-factored code which fits in the human brain. An AI could theoretically write millions of lines of highly-specialized spaghetti which is perfectly correct and perfectly optimized.
- hippari 5y agoOptimization AI can goes into the compiler, the source code is for human readability. or actually they shouldn't, since it can cause undefined behaviors.
- mikro2nd 5y agoIt might also become worse. It seems to me that GitHub has opened themselves (well, this Copilot thing anyway) up to a form of DoS attack: Just imagine what might happen if a bunch of people opened up a number of public repos filled with utter crap? Not suggesting anything, here, just musing on a possibility.
- skohan 5y agoWell, that's a solvable problem. You just need a classifier to filter good code from bad. I would imagine they're already using analytics on the popularity/usage of the repos to weight the training data.
- mikro2nd 5y agoLOL - I'm not sure about many humans' ability to tell good code from bad, given how prolifically they produce "bad" code.