1
00:00:02,090 --> 00:00:03,340
Now at this point,

2
00:00:03,340 --> 00:00:05,760
you know what the web is and how it works

3
00:00:05,760 --> 00:00:08,630
and which key technologies are involved.

4
00:00:08,630 --> 00:00:12,750
I, now, briefly wanna come back to this URL thing here,

5
00:00:12,750 --> 00:00:15,820
the address which you enter in the browser,

6
00:00:15,820 --> 00:00:19,220
and have a look at a couple of other technical details

7
00:00:19,220 --> 00:00:20,590
of how the web works.

8
00:00:20,590 --> 00:00:21,820
And then after that,

9
00:00:21,820 --> 00:00:23,930
we're going to learn how you can get the most out

10
00:00:23,930 --> 00:00:27,100
of the course before we, then, dive right into the code

11
00:00:27,100 --> 00:00:30,760
and you'll learn how to build websites step-by-step.

12
00:00:30,760 --> 00:00:31,920
So let's take another look

13
00:00:31,920 --> 00:00:34,800
at this URL thing now, because there are a couple

14
00:00:34,800 --> 00:00:37,360
of terms you must be aware of.

15
00:00:37,360 --> 00:00:41,300
For example, we have this part at the beginning, here.

16
00:00:41,300 --> 00:00:44,630
You don't enter this on your own very often.

17
00:00:44,630 --> 00:00:47,360
Instead, it's added automatically by browsers.

18
00:00:47,360 --> 00:00:50,120
This defines the so-called protocol that's used

19
00:00:50,120 --> 00:00:52,810
for talking to the remote computer,

20
00:00:52,810 --> 00:00:57,300
to the server. And here, HTTP or HTTPS is the standard.

21
00:00:57,300 --> 00:00:58,520
And as a web developer,

22
00:00:58,520 --> 00:01:00,860
you don't need to worry too much about this

23
00:01:00,860 --> 00:01:04,260
because it is basically handled for you.

24
00:01:04,260 --> 00:01:06,630
Still, that's this part.

25
00:01:06,630 --> 00:01:09,700
Then, we have this thing in the middle.

26
00:01:09,700 --> 00:01:12,160
This is the so-called Domain.

27
00:01:12,160 --> 00:01:14,600
It's the human-readable address,

28
00:01:14,600 --> 00:01:17,970
the identifier of a website. A human-readable

29
00:01:17,970 --> 00:01:21,020
because domains like apple.com, amazon.com,

30
00:01:21,020 --> 00:01:22,460
and so on, of course,

31
00:01:22,460 --> 00:01:25,140
are pretty straight forward to memorize.

32
00:01:25,140 --> 00:01:28,150
And I'll come back to this domain in a couple of seconds,

33
00:01:28,150 --> 00:01:32,420
but this is all the part of every URL that you enter.

34
00:01:32,420 --> 00:01:35,710
Now here, on this example slide, the last part, however,

35
00:01:35,710 --> 00:01:38,640
is not part of every URL.

36
00:01:38,640 --> 00:01:40,390
This is a so-called Path,

37
00:01:40,390 --> 00:01:43,870
and you will often see this in URLs, as well.

38
00:01:43,870 --> 00:01:47,870
Paths act as pointers to specific resources,

39
00:01:47,870 --> 00:01:51,510
specific pages on a website. For example,

40
00:01:51,510 --> 00:01:54,740
if you visit academind.com, which is our website,

41
00:01:54,740 --> 00:01:56,950
if you just enter academind.com,

42
00:01:56,950 --> 00:01:58,930
you end up on the starting page.

43
00:01:58,930 --> 00:02:01,200
But if you, then, go to one of our sub pages,

44
00:02:01,200 --> 00:02:02,800
like the tutorials page,

45
00:02:02,800 --> 00:02:05,130
you see that the address changed.

46
00:02:05,130 --> 00:02:08,350
It's now academind.com/tutorials,

47
00:02:08,350 --> 00:02:11,690
and URL's support paths

48
00:02:11,690 --> 00:02:14,820
because you can now grab the entire URL

49
00:02:14,820 --> 00:02:16,200
that includes the path.

50
00:02:16,200 --> 00:02:18,960
And you could share this with anyone in the world

51
00:02:18,960 --> 00:02:22,080
and if another person enters this same URL

52
00:02:22,080 --> 00:02:26,120
in their browser, they are directed to the same page

53
00:02:26,120 --> 00:02:28,920
on the website, instead of always ending up

54
00:02:28,920 --> 00:02:30,520
on the starting page.

55
00:02:30,520 --> 00:02:32,520
That's why this is another important feature

56
00:02:32,520 --> 00:02:34,510
of the web and of URLs.

57
00:02:34,510 --> 00:02:38,420
You can point at specific resources on a website.

58
00:02:38,420 --> 00:02:39,850
And, of course, in this course,

59
00:02:39,850 --> 00:02:41,770
we're also going to build websites

60
00:02:41,770 --> 00:02:43,973
that consist of multiple pages.

61
00:02:44,900 --> 00:02:46,800
So that's the URL.

62
00:02:46,800 --> 00:02:49,350
Now, I want to come back to this big picture

63
00:02:49,350 --> 00:02:51,610
of how the web works

64
00:02:51,610 --> 00:02:55,480
because here, we now also can dig a little bit deeper

65
00:02:55,480 --> 00:02:59,710
to understand better what exactly happens under the hood

66
00:02:59,710 --> 00:03:02,810
when you enter an address like academind.com

67
00:03:02,810 --> 00:03:06,530
or amazon.com or any other address.

68
00:03:06,530 --> 00:03:07,950
You enter this address,

69
00:03:07,950 --> 00:03:10,600
and we learned that this is called a domain here

70
00:03:10,600 --> 00:03:13,300
if you just have something like academind.com,

71
00:03:13,300 --> 00:03:16,080
and this, then, in the end, leads to the browser

72
00:03:16,080 --> 00:03:18,460
sending a request to some server,

73
00:03:18,460 --> 00:03:21,623
which then sends back a response with the website code.

74
00:03:22,530 --> 00:03:24,090
Now, what actually happens

75
00:03:24,090 --> 00:03:26,370
is a slightly different thing though.

76
00:03:26,370 --> 00:03:28,220
This request is sent,

77
00:03:28,220 --> 00:03:32,460
but it's actually not sent with just this domain.

78
00:03:32,460 --> 00:03:36,500
Instead, all the devices that take part in the Internet,

79
00:03:36,500 --> 00:03:41,040
so to say, have so-called IP Addresses.

80
00:03:41,040 --> 00:03:43,370
IP stands for Internet Protocol,

81
00:03:43,370 --> 00:03:46,960
and it's another standard that controls how devices

82
00:03:46,960 --> 00:03:49,183
in the internet are identified.

83
00:03:50,090 --> 00:03:53,540
Now, IP addresses look something like this and therefore,

84
00:03:53,540 --> 00:03:56,670
of course, they are pretty hard to memorize for humans,

85
00:03:56,670 --> 00:03:58,680
but every device in the internet,

86
00:03:58,680 --> 00:04:02,500
including your computer, has such IP address.

87
00:04:02,500 --> 00:04:05,740
And these IP addresses are actually needed

88
00:04:05,740 --> 00:04:09,500
for establishing connections and talking to each other.

89
00:04:09,500 --> 00:04:11,350
Now, since they are hard to memorize,

90
00:04:11,350 --> 00:04:12,740
we have these domains, though,

91
00:04:12,740 --> 00:04:15,100
which are easier to memorize for humans,

92
00:04:15,100 --> 00:04:17,680
but which are not used by default

93
00:04:17,680 --> 00:04:21,240
to establishing these connections and sending requests.

94
00:04:21,240 --> 00:04:22,950
And the reason for this is that,

95
00:04:22,950 --> 00:04:25,960
all devices that are part of the internet need

96
00:04:25,960 --> 00:04:28,340
such a unique identifier. But of course,

97
00:04:28,340 --> 00:04:32,080
for example, your computer, if it's not hosting a website,

98
00:04:32,080 --> 00:04:33,690
which it typically isn't,

99
00:04:33,690 --> 00:04:36,050
doesn't have a human readable domain.

100
00:04:36,050 --> 00:04:38,040
That's why we don't use domains

101
00:04:38,040 --> 00:04:39,900
for establishing connections,

102
00:04:39,900 --> 00:04:42,480
because every device has a IP address

103
00:04:42,480 --> 00:04:45,740
but not every device has a domain.

104
00:04:45,740 --> 00:04:48,690
However, as a user, as a visitor of a website,

105
00:04:48,690 --> 00:04:50,820
we, of course, want to enter such a domain

106
00:04:50,820 --> 00:04:53,540
to view the website, not the IP address.

107
00:04:53,540 --> 00:04:57,270
Though, if you knew the IP address of a specific website,

108
00:04:57,270 --> 00:04:58,940
you could enter this, as well.

109
00:04:58,940 --> 00:05:02,020
But of course, typically, we don't know that.

110
00:05:02,020 --> 00:05:04,210
That's why, as part of the Internet,

111
00:05:04,210 --> 00:05:07,500
we have some special servers which are operated

112
00:05:07,500 --> 00:05:12,500
by global organizations, the so-called DNS servers.

113
00:05:12,830 --> 00:05:15,680
DNS stands for Domain Name System,

114
00:05:15,680 --> 00:05:19,940
and these are servers that contain mapping tables,

115
00:05:19,940 --> 00:05:24,510
you could say, long tables with all the known domains

116
00:05:24,510 --> 00:05:28,160
and the IP addresses that belong to these domains,

117
00:05:28,160 --> 00:05:31,260
so, the IP addresses off the remote computers

118
00:05:31,260 --> 00:05:35,320
that host the websites that belong to certain domains.

119
00:05:35,320 --> 00:05:38,060
And when you enter a address like amazon.com

120
00:05:38,060 --> 00:05:41,220
in the browser, or academind.com or anything else,

121
00:05:41,220 --> 00:05:46,080
your browser actually first talks to such a DNS server

122
00:05:46,080 --> 00:05:49,250
to translate the domain into an IP address.

123
00:05:49,250 --> 00:05:51,900
And then, once that IP address was returned,

124
00:05:51,900 --> 00:05:55,770
then your browser sends the actual request

125
00:05:55,770 --> 00:06:00,040
to this remote machine, to this server serving a website,

126
00:06:00,040 --> 00:06:03,570
which is now identified with help of that IP address.

127
00:06:03,570 --> 00:06:05,800
That's what actually happens here.

128
00:06:05,800 --> 00:06:09,370
And even though that might sound like a long taking process,

129
00:06:09,370 --> 00:06:12,620
this is actually all super quick and only takes a couple

130
00:06:12,620 --> 00:06:15,010
of milliseconds, but that's what's going on

131
00:06:15,010 --> 00:06:16,090
behind the scenes.

132
00:06:16,090 --> 00:06:18,530
And that's all of the reason why,

133
00:06:18,530 --> 00:06:20,770
when you want to publish a website,

134
00:06:20,770 --> 00:06:24,520
you typically have to buy such a domain first,

135
00:06:24,520 --> 00:06:27,240
at least, if you want to have a custom domain.

136
00:06:27,240 --> 00:06:30,770
Because these domains have to be registered globally,

137
00:06:30,770 --> 00:06:33,980
you can't just come up with one because, of course,

138
00:06:33,980 --> 00:06:37,240
they must only be used once, they have to be unique,

139
00:06:37,240 --> 00:06:40,570
and therefore, you wouldn't be able to, for example,

140
00:06:40,570 --> 00:06:43,770
register amazon.com if you wanted to do that,

141
00:06:43,770 --> 00:06:47,770
because that domain is already taken by the Amazon company.

142
00:06:47,770 --> 00:06:51,140
But you can take other domains. And once you bought them,

143
00:06:51,140 --> 00:06:53,940
they are registered and they are added

144
00:06:53,940 --> 00:06:57,070
to these mapping tables, so to say.

145
00:06:57,070 --> 00:06:59,710
And that's all that's important to understand

146
00:06:59,710 --> 00:07:02,750
and to be aware of. We have these IP addresses,

147
00:07:02,750 --> 00:07:04,180
which are actually used,

148
00:07:04,180 --> 00:07:07,560
and domains, which are translated to these IP addresses.

149
00:07:07,560 --> 00:07:09,580
Now as a last note, I did,

150
00:07:09,580 --> 00:07:11,620
of course, say that every device

151
00:07:11,620 --> 00:07:14,390
in the internet has such IP address,

152
00:07:14,390 --> 00:07:16,910
but you don't need to worry that this means

153
00:07:16,910 --> 00:07:20,810
that other people could start connecting to your computer.

154
00:07:20,810 --> 00:07:23,010
This, by default, is not possible

155
00:07:23,010 --> 00:07:25,860
because you can still control whether a device

156
00:07:25,860 --> 00:07:28,310
is allowing incoming traffic or not.

157
00:07:28,310 --> 00:07:29,310
And by default,

158
00:07:29,310 --> 00:07:32,900
your computer does not allow incoming traffic.

159
00:07:32,900 --> 00:07:35,920
These servers, which are serving websites,

160
00:07:35,920 --> 00:07:38,910
are configured to allow incoming traffic.

161
00:07:38,910 --> 00:07:41,180
Your computer typically is not,

162
00:07:41,180 --> 00:07:44,100
so it has this IP, but it still isn't reachable

163
00:07:44,100 --> 00:07:46,820
by everyone in the worldwide web.

164
00:07:46,820 --> 00:07:50,740
And with that, we now had enough theory for the moment.

165
00:07:50,740 --> 00:07:52,030
That's it, for the moment.

166
00:07:52,030 --> 00:07:55,360
Let's now see how you can get the most out of this course

167
00:07:55,360 --> 00:07:57,620
and how you can take this course before we,

168
00:07:57,620 --> 00:08:01,500
then thereafter, dive into the actual code you can write,

169
00:08:01,500 --> 00:08:04,970
and learn more about web development step-by-step,

170
00:08:04,970 --> 00:08:06,143
from the ground up.

