4 ms·
Copilot is a horrible crutch. I will never use it, because I know how to read the documentation/source and write my own code. It makes me sad to see it embrac
by voakbasda 4y ago
Copilot is a horrible crutch. I will never use it, because I know how to read the documentation/source and write my own code. It makes me sad to see it embraced, as I see it as nothing more than a harbinger of legions of even worse software than we already must tolerate.
I am stunned at how people think it okay to use in a professional or educational setting, when the general reaction to ChatGPT in those settings has been mostly negative. Both are leading the race to the bottom, producing mountains of crap output that will diminish the quality of the internet until it is unusable.
- barbazoo 4y agoThis reads a bit to true Scotsman to me. I'd agree with you if using Copilot meant using and never validating the code that's suggested. Adding it to one's toolbelt can mean coming up with the syntax to then consult the documentation with any questions. But often I imagine it'd just spit out boilerplate code that looks very familiar anyway. I can't come up with the right syntax for various http libraries but I recognize the right one, I just don't want to write it out.
- 49531 4y agoIs that really faster than just reading the docs and editing some example code? You have to prompt an AI for what you need, have it generate the code for you, then read the code and validate it. That does not seem like a labor saving process to me.
- codetrotter 4y agoWell, you won’t know till you’ve tried. I am using another code completion AI in my IDE, and it’s wonderful. Why waste brain cells and time on mundane things when my time and attention is better spent thinking about the problem at hand. And in the future, AI will be able to take over more and more of the time. Eventually we will not be needed at all.
- 49531 4y ago> Why waste brain cells and time on mundane things when my time and attention is better spent thinking about the problem at hand. This just sounds like a thought-terminating cliché; what mundane things are you spending your attention on while writing code? Sure, there are times where you might be generating boilerplate, cool, you're paying for a fancy snippet library, except the snippets are potentially malformed so you should check them every time.
- barbazoo 4y ago> what mundane things are you spending your attention on while writing code? To stick with my http library example, figuring out how to pass headers or a json body to a particular library, checking status codes, was it "status_code" or just status, is the body in an attribute called body or content or json or json(). I know this is trivial if you work with the same library over and over again but people are different and some of us work with a wide array of languages or libraries.
- RugnirViking 4y agowhich particular code completion ai are you using? I'd be interested in trying some others just as a comparison to copilot
- codetrotter 4y agoTabnine AI Code Completion plug-in for JetBrains CLion I code in Rust but said AI code completion works with some other languages also https://plugins.jetbrains.com/plugin/12798-tabnine-ai-code-completion-js-java-python-ts-rust-go-php--more https://plugins.jetbrains.com/plugin/12798-tabnine-ai-code-c...
- barbazoo 4y agoYou can stay in your editor, even in the same file. That for sure saves some time. You have to type out the function name and a comment probably anyway. I don't see how this couldn't be a net positive in terms of saved time and reduced context switching but we'll see.
- jasmer 4y agoYou haven't made any kind of argument, but I can fathom from your tone about 'ChatGPT' that there is something inherently wrong with generated code. I suggest you're implied reasoning is wrong: if it's a tool and it helps, use it. I don't use it because the code I write is hyper specific, and the suggestions interfere with the 'regular' code completions, and they're just not good enough. But it is very impressive, and for boiler-plate oriented code, I would use it. All of that said, the risk in the code is that it can introduce a bit of laziness in that code still needs to be very closely inspected and I suggest many won't bother.
- sjamaan 4y ago> All of that said, the risk in the code is that it can introduce a bit of laziness in that code still needs to be very closely inspected and I suggest many won't bother. I think this is the crux of the problem for such "generated code". It's like when you do a code review of a pull request - it's very easy to miss subtle issues. When you write the code yourself you're forced to really think things through. You will still make mistakes, granted. But accepting generated code that you "reviewed" is like you're back in math class convincing yourself that you understood the teacher's line of reasoning and you know the material. It's when you really get down to business with your nose on the facts when you will see subtle (and not so subtle) bits where either copilot got it wrong or where you simply didn't understand some implications.
- jpe90 4y ago> Copilot is a horrible crutch. I will never use it, because I know how to read the documentation/source and write my own code. I think it depends on how you use it. I never let Copilot make design decisions, because it kind of sucks at that, and it that carries a lot of risk of wasting more time than it saves in the long run. But there are some tasks that I think it's well suited for. In a recent commit[1] to one of my side projects, I swapped out one graphics library for another, which involved replacing a bunch of library calls and would have been tedious and boring to write by hand. I turned Copilot on for this, and after I did a couple substitutions by hand it was able to do most of the work and was easily a net positive. For my own usage, I keep copilot off in emacs, and opt to flip it on with a keybinding if and when I know exactly what the code I want to be written should look like, but actually writing it out would be a pain. [1] https://github.com/jpe90/model-view-projection/commit/1ed4fb276f18b819a666367cabcd981dced9d96d https://github.com/jpe90/model-view-projection/commit/1ed4fb...
- Haga 4y ago[dead]
- afro88 4y agoWe've just been given a calculator. You still want and should know how to do arithmetic without one, but it's much faster with it. The only trouble is, at the moment it makes subtle mistakes. So you really have to know what you're doing to use it properly. I reckon we're 6 months away from those mistakes becoming few and far between.
- vineyardmike 4y ago> I will never use it, because I know how to read the documentation/source and write my own code. I will never use a file system because I know how to store my own punchcards! I will never use a compiler because I know how to right my own assembly. I will never use an IDE because I know how to edit code with SED. I will never use a debugger because I know how to debug with logging statements. I will never… use new tools because I learned the old ones? I agree there’s some open questions about the copyright issues which should give people pause before use in some context. That said, it’s a tool that helps people work faster and focus on higher priority issues than implementing trivial code. Oh and a lot of big software companies are already developing this sort of tool internally so it’s going to be the norm for competitive purposes.