WEBVTT

00:00.000 --> 00:04.260
Okay, so before we can actually start writing the code for our application, we do need to install

00:04.260 --> 00:05.970
a few things onto our computer.

00:06.000 --> 00:10.710
Now you may already have some of these, but please take this as an opportunity to get the latest current,

00:10.710 --> 00:14.430
stable version of whatever it is I'm demonstrating here.

00:14.430 --> 00:15.420
So we do need the.

00:15.630 --> 00:19.320
Net Software Developer Kit in order to build something with DotNet.

00:19.320 --> 00:25.980
So please come to dotnet microsoft.com and go and download whatever the current version is of.

00:26.160 --> 00:32.130
Net at the time of recording, it's Net nine and whatever they specify in the recommended option that's

00:32.130 --> 00:32.760
available.

00:32.760 --> 00:39.150
Please do go and grab that if you're from the future and it's Net ten as long as it's a stable and released

00:39.150 --> 00:45.960
version, please download that as DotNet is a very mature framework now, and breaking changes in between

00:45.960 --> 00:47.490
versions are not really a thing.

00:47.490 --> 00:52.230
So the same code that I write using dotnet nine in this example will be valid for.

00:52.380 --> 00:58.770
Net ten, 11 and 12, maybe 12, definitely net ten, probably net 11, maybe 12.

00:58.800 --> 01:03.570
So just grab the stable latest current version available now.

01:03.570 --> 01:05.910
We also need something to actually write the code in.

01:05.940 --> 01:12.270
Thankfully, the days of writing in notepad or some text editor are long gone, and the tools that we

01:12.270 --> 01:14.400
have available now are excellent.

01:14.400 --> 01:19.170
The one that I'm going to demonstrate everything in is Visual Studio Code.

01:19.170 --> 01:25.050
And the reason I use this, because I do often get asked like, why am I using Visual Studio Code?

01:25.050 --> 01:26.880
Well, first of all, it's free of charge.

01:26.910 --> 01:29.280
The second reason is cross-platform.

01:29.280 --> 01:34.710
There's a version of this that's available for Mac, Windows, and Linux, and the experience is pretty

01:34.710 --> 01:35.790
much identical.

01:35.790 --> 01:40.950
And also it's simply the most popular IDE or code editor there is out there.

01:40.980 --> 01:48.510
Over 70% of developers, according to a Stack Overflow survey, use Visual Studio Code on a daily basis,

01:48.510 --> 01:51.300
so it wins on the popularity contest as well.

01:51.330 --> 01:53.460
But this is your code that you're writing.

01:53.460 --> 01:55.230
You may prefer to use something else.

01:55.230 --> 02:00.140
If you're on windows, you might prefer to use the full version of Visual Studio.

02:00.170 --> 02:01.280
We don't need to use that.

02:01.280 --> 02:02.390
Even if you're on windows.

02:02.390 --> 02:07.340
It's quite heavyweight for what we're doing on this course, but you can use Visual Studio, certainly

02:07.340 --> 02:09.620
for the C-sharp development side of things.

02:09.620 --> 02:11.270
When it comes onto the client side.

02:11.270 --> 02:13.760
It's been some years since I've used Visual Studio.

02:13.760 --> 02:20.480
Now I have no idea how it handles what we're going to be using for the client side with react and TypeScript

02:20.480 --> 02:21.830
is probably fine.

02:21.830 --> 02:25.190
I just can't say with any confidence because I haven't used it for a while.

02:25.190 --> 02:28.730
I do know it's going to be excellent for C-sharp though, so it's up to you.

02:28.730 --> 02:32.180
If you do want to use this, please feel free to do so if you do.

02:32.180 --> 02:38.930
And another option which is now a good option is Ryder, because recently they updated their terms of

02:38.930 --> 02:39.770
usage for this.

02:39.770 --> 02:44.840
And now we can see that it's free for non-commercial use.

02:44.840 --> 02:50.450
And participating in a training course to learn how to code is non-commercial use.

02:50.450 --> 02:53.510
And you can now download and use this free of charge.

02:53.660 --> 02:56.720
The products from JetBrains are typically superb.

02:56.720 --> 02:57.950
I do use them a lot.

02:57.980 --> 03:05.610
I use Ryder for C sharp code, and I use Webstorm for TypeScript or JavaScript based code, and I use

03:05.610 --> 03:07.710
them a lot and they are excellent.

03:07.710 --> 03:09.420
So now this is an option as well.

03:09.420 --> 03:14.460
If you do want to use these tools then you can do so completely free of charge.

03:14.460 --> 03:19.890
The only thing is if you take a look at their pricing options, then if you do want to use it for something

03:19.920 --> 03:24.840
other than non-commercial use, then you would need a commercial license to do so.

03:25.200 --> 03:26.460
So it's an option.

03:26.490 --> 03:32.130
Another tool that we need to download and install is called postman, and we use this for testing our

03:32.160 --> 03:34.470
API as we build it.

03:34.470 --> 03:37.860
And there's a desktop app available for windows, Mac and Linux.

03:37.860 --> 03:43.290
And if we click on one of these buttons, I'll just click on the Mac button, for instance.

03:43.290 --> 03:46.020
This takes me to the correct download for this.

03:46.020 --> 03:48.120
So please do download and install this.

03:48.150 --> 03:49.830
We won't use it straight away.

03:49.830 --> 03:54.270
And when we do, I'll demonstrate how we're going to use it when we get into it.

03:54.300 --> 03:59.590
This is a real time saver when it comes to testing our work because as you can see in the background

03:59.590 --> 04:06.970
here, we can create folders and pre-written requests that check our API functionality as we go along.

04:06.970 --> 04:10.240
So please do make sure you get postman and install it.

04:10.240 --> 04:14.830
As we build our application, we're going to reach certain milestones, and every time we reach a milestone,

04:14.830 --> 04:18.460
we're going to commit and save our changes into source control.

04:18.460 --> 04:20.770
This is going to act as a backup for our code.

04:20.770 --> 04:26.500
It's going to act as version control for our code, so we can go back in time to an earlier version

04:26.500 --> 04:28.300
of our code if we need to do so.

04:28.300 --> 04:34.090
And if we do encounter some kind of disaster like hard drive failure, then even if we lose everything

04:34.090 --> 04:39.910
from our hard drive, our code, if we use git and we store it in a public repository like GitHub,

04:39.910 --> 04:45.520
which we are going to do, then we've got our code in a safe place outside of our hard drive.

04:45.520 --> 04:51.970
So please go ahead and install git, because that is something that we need in order to achieve that.

04:51.970 --> 04:57.160
It's the most popular source control system there is out there, so you may have this already.

04:57.160 --> 05:00.110
If not, please download it for your operating system.

05:00.170 --> 05:03.680
And another thing that we need to install this is more of a client side thing.

05:03.680 --> 05:05.270
Well it is a client side thing.

05:05.270 --> 05:07.070
We need to install Node.js.

05:07.070 --> 05:12.710
And node is a JavaScript runtime environment so that when we do start building our client side app,

05:12.710 --> 05:17.690
we have something that's capable of running and compiling the JavaScript that we're writing so that

05:17.690 --> 05:20.570
we can check and test our code as we write it.

05:20.570 --> 05:25.250
So please install Node.js.

05:25.250 --> 05:33.020
But what I would really recommend doing, and I'll add a shorthand link to get to this is installing

05:33.020 --> 05:35.750
node js with node version manager.

05:35.750 --> 05:41.180
When it comes to installing node using this approach, then if we want to go for a newer version or

05:41.180 --> 05:46.310
an older version of node, that means uninstalling one version of node, then installing a different

05:46.310 --> 05:47.360
version of node.

05:47.360 --> 05:53.210
So there are tools out there that allow us to manage multiple different versions of node on our computer.

05:53.390 --> 05:56.600
And node version manager is the way to go about this.

05:56.600 --> 06:00.160
So there's different options for different operating systems on this case.

06:00.160 --> 06:07.180
And this particular article will walk you through installing it on Linux, on a mac and on windows as

06:07.180 --> 06:07.720
well.

06:07.720 --> 06:10.660
So I'd highly recommend doing that, although you don't have to.

06:10.690 --> 06:17.350
You can just install node using this approach if you're okay with just having a single version and understanding

06:17.350 --> 06:23.470
that changing versions means uninstalling reinstalling node, that's also an option, of course.

06:23.470 --> 06:29.770
So please do download and install all of the different options that I've mentioned on here.

06:29.770 --> 06:35.710
I'm not going to insult anyone's intelligence by demonstrating how to install software, and the documentation

06:35.710 --> 06:37.540
for all of these is pretty straightforward.

06:37.540 --> 06:39.910
Click on the thing, run the installer.

06:39.940 --> 06:41.680
Great, you've got it installed.

06:41.680 --> 06:47.830
So now that we have that available, the next thing we're going to take a look at is where you can find

06:47.830 --> 06:54.100
the source code for this training course and where you can download the course assets that we need for

06:54.100 --> 06:55.480
this training course as well.

06:55.480 --> 06:57.790
And that's coming up next.
