Live data from Hacker News

GitHub Copilot available for JetBrains and Neovim

github.com

111–120 of 446 posts

Re: GitHub Copilot available for JetBrains and Neovim

#111
post #71
post #63

Still no way to opt your code out of this. Disgusting.

Legally, it needs to be opt-in in order to protect downstream consumers of code written by Copilot. Copilot sometimes reproduces code verbatim. You can't use open source code except under the terms of the license. Authors whose code may be reproduced by Copilot need to grant a license to downstream consumers, and republishers of Copilot-generated code need to adhere to the terms of that license. Copilot is inserting…

Nope. Copilot users are inserting "ticking time-bombs" into their own codebases.

The buck stops with the user, when they use code from any source at all, whether it's their head, the internet, some internal library, lecture notes, a coworker, a random dude of the street, or who knows what else, it their own responsibility to ensure the code they're using has been released under a license they can use. They don't get to go back and point fingers just because they didn't do their own due-diligence.

The exception would be if a vendor provides code under a legal contract providing liability and an agreed license, that has not happened in this case so there's no reason to expect any legal protections.

Re: GitHub Copilot available for JetBrains and Neovim

#112
post #76

Copilot is crazy. The other day, I was writing a Python function that would call a Wikipedia API. I pulled from the internet an example of a GET request, and pasted it as a comment in my code. # sample call: https://en.wikipedia.org/w/api.php?action=query&format=json&list=geosearch&gscoord=37.7891838%7C-122.4033522&gsradius=10000&gslimit=100 Then I defined a variable, base_url = "https://en.wikipedia.org/w/api.php?"…

Bit of a dodgy way to form query parameters though. Other than for a quick script.

Re: GitHub Copilot available for JetBrains and Neovim

#114

Earlier quoted context omitted.

But people already naturally exhibit subtle bugs in the course of ordinary programming. Your acquaintance will just be another drop in the ocean.

Except he knows what to look for and how to exploit it. Could lead to easy bug bounty money.

Seems like an exceptionally risky attempt to make money using programming skills. Why not directly add value to the software world?

Re: GitHub Copilot available for JetBrains and Neovim

#115

I just tried installing for neovim - but got an error running vim-plug's `:PlugInstall` I added an issue. https://github.com/github/feedback/discussions/6847 Anyone else install in neovim?

The copilot docs say you need a prerelease version of neovim. Maybe that's the reason? homebrew might get you 0.5.2. The nigthly gives you 0.6.xx

Re: GitHub Copilot available for JetBrains and Neovim

#116

How well can copilot write unit tests? This seems like an area where it could be really useful and actually improve software development practices.

I think replies mentioning automatic unit test generation miss the point.

To me, the value of copilot helping to write tests is that we, the engineers, come up with the test cases, and copilot helps write the code for that case.

I think humans will still be more imaginative in the test cases they can dream up (although I’ve never used an automatic generator, maybe they’re better than I think), but almost all test code is boilerplate, either in the setup or the assertions.

If I don’t have to write that repetitious, yet slightly different boilerplate for each test case, that frees me up to design other interesting test cases (as opposed to getting tired of the activity by the time I cover the happy path) or move on to the next bug/feature work.

Re: GitHub Copilot available for JetBrains and Neovim

#118
post #56

Earlier quoted context omitted.

Why is that useless? Codebases I have worked on that had high code coverage requirements had very little bugs. * It promotes actually looking at the code before considering it done * It promotes refactoring * It helps to prevent breaking changes for stuff that wasn't supposed to change

I feel the opposite of codebases where having high coverage has been a priority: * The tests doesn't actually test functionality, edge cases etc, just that things doesn't crash in a happy-path. * Any changes to an implementation breaks a test needlessly, because the test tests specifics of the implementation, not correctness. Thus it makes refactoring actually harder, since your test said you broke something, but you…

> The tests doesn't actually test functionality, edge cases etc, just that things doesn't crash in a happy-path.

This is low coverage.

> Any changes to an implementation breaks a test needlessly, because the test tests specifics of the implementation, not correctness.

This is bad design.

> In codebases for dynamic languages, most of what these tests end up catching is stuff a compiler would catch in a statically typed language.

So they are not useless.

Re: GitHub Copilot available for JetBrains and Neovim

#119
post #60

Earlier quoted context omitted.

This is the kind of thing I would need to see in real time, because I simply can't believe that it does any of these things in a way that is reliable and doesn't involve having to search through and make sure it hasn't made any mistakes, taking just as much time as if you did it by hand.

Likewise skeptical, but I have been super impressed with it. I just got in to the technical preview, and worked through a specific task I needed to do (involving mongoose, a mongo aggregate query, a few loops, some date functions) and started by adding a comment above each line. It helped a lot actually, felt like a collab. I'll reproduce a generic example I sent a friend. Prompt: const redis = require('redis'); // C…

  // Create a redis client
Writing that probably takes a longer time than just doing it with the IDE help in jetbrains, though?

Press "r", press "." to autocomplete so it now says "redis.", then write "cC" and it suggests createClient (or write "create" or "client" if you're not sure what you're looking for). Now it says "redis.createClient()". Press ctrl+alt+v to extract a variable or write ".const" and press tab to apply the const live template. Ending up with your result in two seconds.

Re: GitHub Copilot available for JetBrains and Neovim

#120

Is anyone able to install the plugin yet? I'm not seeing it when I search the plugin marketplace in Rider.

Saw a review the JetBrains page that Rider isn't officially supported, but they got it to work anyway, although they don't say how https://plugins.jetbrains.com/plugin/17718-github-copilot/re...

Looks like I can download it from the plugin page and manually install the zip file. Thanks!

https://plugins.jetbrains.com/plugin/17718-github-copilot/ve...

EDIT: Hmm, it installed but it refuses to run.

EDIT2: Looks like you can force the plugin to work by editing the plugin.xml contained in github-copilot-intellij-1.0.1.jar within the plugin archive. Just remove the line that includes Rider as incompatible. The same should work for CLion.

Post reply on HN