WEBVTT 0 00:00.760 --> 00:08.200 All right guys. So this module is going to be all about Express. Now Express is a Node framework. 1 00:08.300 --> 00:14.360 So do you remember in previous modules, we learned that we could add jQuery onto our Javascript to add 2 00:14.390 --> 00:17.930 extra features and make it easier working with Javascript? 3 00:17.990 --> 00:20.740 Well, Express does the same thing for Node. 4 00:20.780 --> 00:26.420 It's a framework, or basically a bunch of code that somebody else wrote, that adds extra features and 5 00:26.420 --> 00:33.150 helps to organize and structure your code, specifically for web applications built with Node. 6 00:33.170 --> 00:40.400 Now in the last module we said that Node.js was made to basically liberate Javascript from the browser 7 00:40.730 --> 00:45.230 and allow programmers to use Javascript to interact with the computer directly, 8 00:45.230 --> 00:49.310 for example on a server. And that means it has a broad scope. 9 00:49.310 --> 00:56.300 It's a low level technology that allows you to interact directly with the hardware of the computer. 10 00:56.300 --> 01:01.020 Now that means that you can create desktop applications using Node. For example Atom, 11 01:01.130 --> 01:07.730 what we've been using so far to edit and write our code, is actually built on Electron which is built 12 01:07.790 --> 01:08.570 on Node. 13 01:08.600 --> 01:12.160 So the scope of Node.js is really really broad. 14 01:12.470 --> 01:19.550 Now Express does something really specific. Now an example of this might be that you could own a single 15 01:19.550 --> 01:25.520 Phillips screwdriver and you can screw all the screws you want using it, right? Any type of screw. 16 01:25.580 --> 01:26.640 So that's Node. 17 01:26.780 --> 01:29.460 It lets you interact with the computer any way you like. 18 01:29.780 --> 01:36.150 But, as we know, if you've done a lot of DIY work, screwing in screws manually using a Phillips screwdriver 19 01:36.150 --> 01:37.740 can get pretty tiring, 20 01:38.000 --> 01:43.560 and you're really at risk of repetitive strain injury, especially if you have a lot of Ikea furniture. 21 01:43.790 --> 01:47.300 So that means in certain cases, for specialized uses, 22 01:47.300 --> 01:53.570 for example if you're doing a lot of DIY, then you might need a motorized screwdriver. 23 01:53.660 --> 02:00.230 And that's basically Express. It was built to make you write less repetitive code when you're building 24 02:00.320 --> 02:04.760 web applications, and it's made specifically for web developers. 25 02:04.760 --> 02:10.520 So sometimes using Express versus using Node straight out of the box, you're saving yourself 5 to 26 02:10.520 --> 02:13.040 10 times the amount of code that you have to write, 27 02:13.160 --> 02:18.150 and therefore a lot of time as well. And we programmers hate repetition, 28 02:18.230 --> 02:21.180 so Express is really really popular. 29 02:21.200 --> 02:28.340 In fact, if you go onto npm.com and you scroll down, you'll see that the most depended upon packages 30 02:28.430 --> 02:34.940 include Express. And if you have a look at the State of Javascript, which is this annual survey for Javascript 31 02:34.960 --> 02:41.630 programmers, you can see that when they surveyed these people on the back end frameworks, even they talk about 32 02:41.630 --> 02:41.820 it. 33 02:41.840 --> 02:44.420 People really depend on Express. 34 02:44.570 --> 02:49.430 And if you have a look at this graph, you can see that ‘I've used it before, and I would use it again’ is 35 02:49.520 --> 02:55.100 massive for Express, whereas it can't really be said for the other sort of frameworks that help you to 36 02:55.100 --> 02:56.200 do the same thing. 37 02:56.210 --> 03:02.060 So it's a really really big deal in the Node web development community, and this is what we're going 38 03:02.060 --> 03:03.960 to be learning in this module. 39 03:04.230 --> 03:11.630 Now let's go ahead and build a real server using Node and Express to see how we can get our server to 40 03:11.630 --> 03:16.700 start running code on the server side and start doing a lot of the heavy lifting, 41 03:16.700 --> 03:21.130 so we learn how to build a proper backend for our web sites. 42 03:21.140 --> 03:23.270 So once you’re ready, head over to the next lesson.