So stoked to finally discuss Copilot!
I've used it inside MSR for months, watched it evolve, and discussed collabs.
[Disclaimer: the tech is by the amazing @github/@openai, I'm an informed observer.]
Not exaggerating, Copilot will be in top-3 tech developments of 2020s 
https://twitter.com/kevin_scott/status/1409908648495702022 …
-
-
Let me be precise. If your context/problem are unique, you will struggle with bugs in the current Copilot tech. And you will spend mental energy reviewing AI suggestions. But this is an *opportunity* for neuro-symbolic program synthesis research, not a reason to dismiss it. 6/
Show this thread -
Neural code generation models learn a *contextualized language space* for us, in which we now apply PL analysis/synthesis methods more efficiently – with nice prelim results. Of course the goal is to get top-1 right. (And we will, eventually.) But I'm excited about the space. 7/
Show this thread -
4) Does the code generation model truly understand program semantics? It's a philosophical question (define "understand" for neural nets, please) but right now – probably not. Program semantics is in execution, and neural language models don't observe execution. However: 8/
Show this thread -
Program semantics is *also* in how people write, use, and communicate with/about code. People routinely "reason" about code semantics when reviewing PRs or reading Github. So do language models. Like in natural language, semantics partly arises from usage. 9/
Show this thread -
It's incomplete, so new research on encoding actual execution and augmenting models with it is crucial. There's a huge (actively explored) space in deeply integrating static analysis, tracing, and other symbolic insight – *with* the language model, not to fight it. 10/
Show this thread -
Maybe I'll outline more concrete research directions in a blog post, Twitter threads make me scream. I'll add to the thread as new questions arise, though. 11/
Show this thread
End of conversation
New conversation -
-
-
Hmm, on this point though, people have a tendency to trust machines more than themselves sometimes (consider the field of human-robot interaction). Are you worried about people using buggy generated code, but assuming it is correct since it came from a tool?
-
I'd really love to see a user study of people trusting Copilot suggestions to not be buggy when told 1) they came from Copilot, or 2) they came from a human
- Show replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
Are there any formal guarantees on the generated code? No, not at the moment.
But it does synthesize code from scratch, given implicit intent. It does not "search" for it, conventionally speaking. 2/