WEBVTT

00:00.000 --> 00:02.490
-: In this video, we're gonna talk about the capabilities

00:02.490 --> 00:05.185
and limitations of using GitHub Copilot.

00:05.185 --> 00:07.560
GitHub Copilot is able to generate efficient,

00:07.560 --> 00:11.550
high-quality code from both comments and function names.

00:11.550 --> 00:12.383
As well as that,

00:12.383 --> 00:15.780
it's also able to generate high-quality code suggestions.

00:15.780 --> 00:17.910
And the reason for this is GitHub Copilot

00:17.910 --> 00:21.600
is constantly adapting to your project source code

00:21.600 --> 00:24.393
and therefore adapting to your coding style

00:24.393 --> 00:26.520
and project that you're working on.

00:26.520 --> 00:28.290
So if you're coding in JavaScript,

00:28.290 --> 00:30.390
GitHub Copilot will start parsing

00:30.390 --> 00:32.640
and understanding your JavaScript files.

00:32.640 --> 00:34.440
And if you're coding in another language,

00:34.440 --> 00:36.990
it will understand those files,

00:36.990 --> 00:38.880
and therefore the types of responses

00:38.880 --> 00:40.470
that you get back from GitHub Copilot

00:40.470 --> 00:42.240
are incredibly personalized.

00:42.240 --> 00:44.670
You can also choose from multiple suggestions,

00:44.670 --> 00:47.910
so if you're unhappy with the suggestion you see,

00:47.910 --> 00:51.330
it's possible to toggle through multiple suggestions

00:51.330 --> 00:54.270
until you find a suggestion that you like.

00:54.270 --> 00:56.430
Let's explore some of the limitations.

00:56.430 --> 00:59.760
Personally, I found that if I'm trying to generate code,

00:59.760 --> 01:04.050
or learn about code in a very extensive and long way,

01:04.050 --> 01:08.370
I found that ChatGPT will provide more extensive codes

01:08.370 --> 01:09.960
than GitHub Copilot.

01:09.960 --> 01:13.050
However, GitHub Copilot really shines

01:13.050 --> 01:16.140
when you're looking to just stay in the flow of coding,

01:16.140 --> 01:18.660
and you know roughly how to solve the problem,

01:18.660 --> 01:21.180
and you just want a couple of tips along the way.

01:21.180 --> 01:23.640
That's a really great use case for GitHub Copilot.

01:23.640 --> 01:26.370
Also, it's worth noting that GitHub Copilot

01:26.370 --> 01:28.590
can be slower in larger projects.

01:28.590 --> 01:31.830
The reason for this is that as your project size grows,

01:31.830 --> 01:33.390
there are more source files

01:33.390 --> 01:35.910
that GitHub Copilot needs to parse.

01:35.910 --> 01:37.380
And so this can also be something

01:37.380 --> 01:39.030
that's a slight limitation.

01:39.030 --> 01:41.910
Another point to add is the limited configurability

01:41.910 --> 01:43.410
of GitHub Copilot.

01:43.410 --> 01:46.410
Because there aren't any model operations or options,

01:46.410 --> 01:49.470
there's no way we can really influence GitHub Copilot,

01:49.470 --> 01:51.180
apart from doing the following.

01:51.180 --> 01:53.610
We can provide it with more extensive comments.

01:53.610 --> 01:56.619
We can also use different function/class names.

01:56.619 --> 01:59.010
We also have the variability

01:59.010 --> 02:02.520
as to what existing source coding is within the product.

02:02.520 --> 02:05.370
And also adding types to your code is a really great way

02:05.370 --> 02:07.620
of helping GitHub Copilot to understand

02:07.620 --> 02:09.480
what the different types of information

02:09.480 --> 02:10.920
such as variables are.

02:10.920 --> 02:13.350
As well as that, you can also try using a different package.

02:13.350 --> 02:16.410
So newer packages are less likely to be stable

02:16.410 --> 02:20.880
with GitHub Copilot, whilst older, more maintained packages,

02:20.880 --> 02:24.180
there's more likely to be more training data inside

02:24.180 --> 02:27.780
of the large language model to support effective generation

02:27.780 --> 02:30.000
and suggestions for those older packages.

02:30.000 --> 02:31.440
So that's also something to consider.

02:31.440 --> 02:32.940
The other thing that's worth mentioning

02:32.940 --> 02:35.670
is that GitHub Copilot is not a free tool,

02:35.670 --> 02:37.170
and you would have to pay for it.

02:37.170 --> 02:38.003
In the next video,

02:38.003 --> 02:40.410
we'll look at how to install GitHub Copilot

02:40.410 --> 02:41.853
inside of your VS Code.
