Live data from Hacker News

GitHub Copilot

copilot.github.com

281–290 of 1001 posts

Re: GitHub Copilot

#281
post #89

Earlier quoted context omitted.

Might this end up putting GPL code into projects with an incompatible license?

It shouldn't do that, and we are taking steps to avoid reciting training data in the output: https://copilot.github.com/#faq-does-github-copilot-recite-c... https://docs.github.com/en/early-access/github/copilot/resea... In terms of the permissibility of training on public code, the jurisprudence here – broadly relied upon by the machine learning community – is that training ML models is fair use. We are certain this…

Would i be able to use something like this in the near future to produce a proprietary linux kernel?

Re: GitHub Copilot

#283

Hi HN, we've been building GitHub Copilot together with the incredibly talented team at OpenAI for the last year, and we're so excited to be able to show it off today. Hundreds of developers are using it every day internally, and the most common reaction has been the head exploding emoji. If the technical preview goes well, we'll plan to scale this up as a paid product at some point in the future.

What do you think about this being overall detrimental to code quality as it allows people to just blindly accept completions without really understanding the generated code. Similar to copy-and-paste coding. The first example parse_expenses.py uses a float for currency - that seems to be a pretty big error that's being overlooked along with other minor issues around no error handling. I would say the quality of the…

How is it different from the status quo of people just doing the wrong thing or copy pasting bad code? Yes there's the whole discussion below about float currency values, but I could very well see the opposite happening too, where this thing recommends better code that the person would've written otherwise.

Re: GitHub Copilot

#284

Hi HN, we've been building GitHub Copilot together with the incredibly talented team at OpenAI for the last year, and we're so excited to be able to show it off today. Hundreds of developers are using it every day internally, and the most common reaction has been the head exploding emoji. If the technical preview goes well, we'll plan to scale this up as a paid product at some point in the future.

Lots of questions: - the generated code by AI belongs to me or GitHub? - under what license the generated code falls under? - if generated code becomes the reason for infringment, who gets the blame or legal action? - how can anyone prove the code was actually generated by Copilot and not the project owner? - if a project member does not agree with the usage of Copilot, what should we do as a team? - can Copilot copy…

> - under what license the generated code falls under?

Is it even copyrighted? Generally my understand is that to be copyrightable it has to be the output of a human creative process, this doesn't seem to qualify (I am not a lawyer).

See also, monkeys can't hold copyright: https://en.wikipedia.org/wiki/Monkey_selfie_copyright_disput...

Re: GitHub Copilot

#285
What interests me most about the development of tools like this is how it might go on to influence the evolution of programming languages. The article that was posted on the CompCert verified C-compiler for instance. What if machine learning could make the cost of developing using more programming languages with stronger guarantees (ie rust, coq, etc) easier? Using languages with more internal checks could also help manage risk the the co-pilot gave a buggy/insecure suggestion.

Re: GitHub Copilot

#286

Earlier quoted context omitted.

> If you need to go through the suggested code to ensure it's correct, you may as well write it yourself? Not really. People are generally far faster at reading something and evaluating whether it's correct, than at writing something. In the same way it's faster to read a book than to write one. Not to mention the time it takes typing, fixing typos, etc. So this could genuinely be a huge timesaver if it helpful enoug…

I completely disagree with you. Reading code for correctness is difficult and not something most people do well at all. Reading code and reading for correctness are not the same, and most developers can write code a lot faster than they can verify it.

>most developers can write code a lot faster than they can verify it

what? so people just write code and never read it back?

Re: GitHub Copilot

#287

Earlier quoted context omitted.

This is obviously controversial, since we are thinking about how this could displace a large portion of developers. How do you see Copilot being more augmentative than disruptive to the developer ecosystem? Also, how you see it different from regular code completion tools like tabnine.

> This is obviously controversial, since we are thinking about how this could displace a large portion of developers. It... couldn't, in net. Tools which improve developer productivity increase the number of developers hired and the number of tasks for which it is worthwhile to employ them and the market clearing price for development work. See, for examples, the whole history of the computing industry as we’ve added…

I agree with this viewpoint.

A tool which increases how rapidly we can output code—correct code—would allow for more time spent on hard tasks.

I can see the quality of some "commodity" software increasing as a result of tools in this realm.

Re: GitHub Copilot

#288

I've been using the alpha for the past 2 weeks, and I'm blown away. Copilot guesses the exact code I want to write about one in ten times, and the rest of the time it suggests something rather good, or completely off. But when it guesses right, it feels like it's reading my mind. It's really like pair programming, even though I'm coding alone. I have a better understanding of my own code, and I tend to give better na…

It seems to replace/shorten the loop of “Google for snippet that does X” copy, paste, tweak, no? Which of course is super cool for many tasks!

Re: GitHub Copilot

#289
post #188
post #88

Calling it now, there will be a "Copilot considered harmful" post. If you need to go through the suggested code to ensure it's correct, you may as well write it yourself? If you glance at it and it looks about right, you can potentially overlook bugs or edge cases, you'll lose confidence in your own code since you didn't properly conceptualise it yourself. Potentially for newer developers it robs them of active exper…

I honestly think this is solving a real problem with commonly used languages and their lack of syntax abstraction and expressiveness. I can imagine this being very useful in helping to type out what I consider to be „mechanical noise“: Things that you have to type out to satisfy an expression rather than to convey semantics. A good example of how this type of noise manifests: Observe two programmers, both being simil…

It is even entirely possible that this approach hits a middle-ground that serves the corporate software-development space better than highly-flexible languages.

The difficulty with high flexibility is that the expressions become very domain-specific very quickly, creating the challenge of learning the new abstractions. So one isn't just a LISP developer, one knows how to write in the specific forest of macros that have been built up around one specific problem domain. The end result is code that means nothing to a reader who doesn't have a dense forest of macro definitions in their brain (at least in this era, their IDE will likely helpfully pull up the macro definitions with a mouse-over or cursor-over gesture!).

Contrast with this approach, where the complexity of abstraction is being baked into the lower-flexibility language. The code is less dense, and that's a tradeoff... But grab any 10 developers off the street with experience in that language and have them read it and 8 of them will likely be able to tell you with some accuracy what the code is doing. Not a trick I've seen possible with even very experienced LISP developers on a codebase they've never seen before.

... and, of course, being able to grab a random 10 developers off the street and have 8 of them up-to-speed in no time at all is crack cocaine to big businesses with large and complex systems maintained by dozens, hundreds, or thousands of people.

Post reply on HN