Copilot gives you new and Powerful conversational
AI assistance in Visual Studio going beyond completion. It gives you insights into your code,
such as analysis and explanation, and even fixes, in some cases, based on what we know about what
you're doing at the time. I can easily ask Copilot questions in my natural language right in line
with my code. It'll use the code context to come up with intelligent analysis and suggestions. VS
helps gather the right context and form a good question to get great answers. I can get a little
deeper into the conversation and drill in on any question I ask in this convenient chat window.
I've been asked to maintain this class basket service and I'm trying to get my head around it.
Copilot can help and Copilot comes back with a natural language explanation that gives me a head
start. I can drill into the chat with co-pilot and ask how would I call it. I can get some
sample calling code that will help me understand usage even more. Now, I've been told that this
particular method is troublesome sometimes, so I'm going to drill in and try to understand it better.
I can ask Copilot what does this do; step-by-step, and I'll get a clear natural language explanation.
I wonder if Copilot can offer me any suggestions on what could go wrong. Copilot gives me a list
of possible issues that I should think about. Now if I ask it, "help me fix those," it'll actually
offer code to trap the problems it identified. Can you fix these issues? Later, I verified the
code's working for me and I want to lock in my gains with some unit tests. I'll start typing,
add unit, and notice it offers a convenient way to ask the question I want without me typing
anymore. Now, I'll click the generate test button, and Copilot generates a nice set of tests; even
including mocking a key service. Now in the near future, we're experimenting to take this even
further. Now to illustrate our direction, here while I'm debugging -- when I'm stopped in the
debugger, Copilot can use carefully selected parts of the knowledge that it has from that context
to provide me with hints, explanations of stacked traces and exceptions, and even proposed fixes
at the issue at hand. Here, it proposes a fix to my code's unhandled exception, that'll actually
work. What's helpful, is that Copilot has let me know that there's a property I can use to see if
the response has indeed already started. Now with this information I can do a quick review of the
new code -- this looks great! If I wanted, I could preview, apply these code changes directly to
the middleware, and with the power of hot reload, just keep going. Debugging my fix in place.
So far, Copilot has helped me figure out how a key class worked, found issues in it, helped me
write tests, fixed them all, offered suggestions, and been my guide along the way. And this is
just scratching the surface of what Copilot can do today, and tomorrow. We hope you have as
much fun using it, as we we've had building it.
This is cool. Wonder what the monthly subscription is going to be.
I'd certainly like to have the unit test builder.
I am very sceptical that it will be able to explain code when it code is modular. But let's see 🙈
While this is certainly will be used and will be of great help, I feel dread thinking about many people (including myself sometimes) not checking output of this tool well enough.
Fine I will pay for me not to fucking do unit tests lmao