-: In this video, we're gonna talk about the capabilities
and limitations of using GitHub Copilot.
GitHub Copilot is able to generate efficient,
high-quality code from both comments and function names.
As well as that,
it's also able to generate high-quality code suggestions.
And the reason for this is GitHub Copilot
is constantly adapting to your project source code
and therefore adapting to your coding style
and project that you're working on.
So if you're coding in JavaScript,
GitHub Copilot will start parsing
and understanding your JavaScript files.
And if you're coding in another language,
it will understand those files,
and therefore the types of responses
that you get back from GitHub Copilot
are incredibly personalized.
You can also choose from multiple suggestions,
so if you're unhappy with the suggestion you see,
it's possible to toggle through multiple suggestions
until you find a suggestion that you like.
Let's explore some of the limitations.
Personally, I found that if I'm trying to generate code,
or learn about code in a very extensive and long way,
I found that ChatGPT will provide more extensive codes
than GitHub Copilot.
However, GitHub Copilot really shines
when you're looking to just stay in the flow of coding,
and you know roughly how to solve the problem,
and you just want a couple of tips along the way.
That's a really great use case for GitHub Copilot.
Also, it's worth noting that GitHub Copilot
can be slower in larger projects.
The reason for this is that as your project size grows,
there are more source files
that GitHub Copilot needs to parse.
And so this can also be something
that's a slight limitation.
Another point to add is the limited configurability
of GitHub Copilot.
Because there aren't any model operations or options,
there's no way we can really influence GitHub Copilot,
apart from doing the following.
We can provide it with more extensive comments.
We can also use different function/class names.
We also have the variability
as to what existing source coding is within the product.
And also adding types to your code is a really great way
of helping GitHub Copilot to understand
what the different types of information
such as variables are.
As well as that, you can also try using a different package.
So newer packages are less likely to be stable
with GitHub Copilot, whilst older, more maintained packages,
there's more likely to be more training data inside
of the large language model to support effective generation
and suggestions for those older packages.
So that's also something to consider.
The other thing that's worth mentioning
is that GitHub Copilot is not a free tool,
and you would have to pay for it.
In the next video,
we'll look at how to install GitHub Copilot
inside of your VS Code.