WEBVTT

1
00:00:00.080 --> 00:00:03.480
<v Speaker 1>Okay, let's unpack this. Have you ever wished you could

2
00:00:03.480 --> 00:00:07.719
<v Speaker 1>gain superpowers? Maybe not the Cape and flight kind, but

3
00:00:07.879 --> 00:00:10.800
<v Speaker 1>you know the ability to build, to automate, to bring

4
00:00:10.839 --> 00:00:13.839
<v Speaker 1>ideas to life. Yeah, exactly, because that's our mission today.

5
00:00:14.080 --> 00:00:17.320
<v Speaker 1>We're taking a deep dive into James or Pain's Python

6
00:00:17.399 --> 00:00:22.120
<v Speaker 1>for teenagers, learn to program like a superhero, right and our.

7
00:00:22.039 --> 00:00:24.640
<v Speaker 2>Goal in this deep dive is really to equip you

8
00:00:24.719 --> 00:00:29.160
<v Speaker 2>with the fundamental knowledge and the practical skills in Python.

9
00:00:29.239 --> 00:00:31.960
<v Speaker 2>When it go beyond just the basics, sure will reveal

10
00:00:32.039 --> 00:00:36.479
<v Speaker 2>its surprising versatility, its potential, offering you that shortcut sort

11
00:00:36.520 --> 00:00:38.840
<v Speaker 2>of to being well informed without feeling overwhelmed.

12
00:00:38.960 --> 00:00:41.439
<v Speaker 1>And this isn't just for teenagers, despite the title, right.

13
00:00:41.479 --> 00:00:44.759
<v Speaker 2>Now, absolutely not. This deep dive is for anyone keen

14
00:00:44.840 --> 00:00:48.240
<v Speaker 2>on truly understanding Python, maybe getting started with robust programming

15
00:00:48.640 --> 00:00:53.359
<v Speaker 2>or adding a powerful, flexible tool to their existing skill set. Age,

16
00:00:53.359 --> 00:00:55.799
<v Speaker 2>prior experience doesn't really matter.

17
00:00:55.880 --> 00:00:59.000
<v Speaker 1>Absolutely. Think of this as your advanced training manual. We'll

18
00:00:59.039 --> 00:01:02.399
<v Speaker 1>cover everything from the bedrock concepts, reframing them with a

19
00:01:02.399 --> 00:01:04.959
<v Speaker 1>deeper lens, all the way to more advanced techniques and

20
00:01:05.040 --> 00:01:06.959
<v Speaker 1>real world applications, and.

21
00:01:07.040 --> 00:01:10.799
<v Speaker 2>All through that fun approachable superhero theme from the book.

22
00:01:10.959 --> 00:01:12.799
<v Speaker 2>It makes it quite engaging.

23
00:01:12.519 --> 00:01:15.000
<v Speaker 1>It does. So let's kick off with the origin story,

24
00:01:15.599 --> 00:01:19.159
<v Speaker 1>not just pythons, but how James R. Pain himself kind

25
00:01:19.200 --> 00:01:20.280
<v Speaker 1>of became a coding hero.

26
00:01:20.599 --> 00:01:23.040
<v Speaker 2>Yeah. So James ar Paine wrote this book with a

27
00:01:23.079 --> 00:01:26.000
<v Speaker 2>clear purpose. Yeah, basically to pass on his love of

28
00:01:26.040 --> 00:01:29.400
<v Speaker 2>development and you know, inspire future generations and his.

29
00:01:29.400 --> 00:01:33.159
<v Speaker 1>Own aha moment in programming. It's pretelling, right, it was

30
00:01:33.200 --> 00:01:36.519
<v Speaker 1>way back before the Internet, before cell phones exactly.

31
00:01:36.879 --> 00:01:39.920
<v Speaker 2>He talks about sharing an Apple High computer with his brother, right,

32
00:01:40.000 --> 00:01:42.519
<v Speaker 2>But what really hooked him was when his friend Nicholas

33
00:01:42.640 --> 00:01:46.359
<v Speaker 2>showed him how to well hack into text based games.

34
00:01:46.439 --> 00:01:50.879
<v Speaker 1>Huh, like creating cheat codes from Lemonade stands unlimited money.

35
00:01:50.760 --> 00:01:54.200
<v Speaker 2>That's the one. And from that, you know, that playful curiosity.

36
00:01:54.439 --> 00:01:56.840
<v Speaker 2>It led them to develop their own complex role playing

37
00:01:56.840 --> 00:02:00.000
<v Speaker 2>games based on comic books Dungeons and Dragons. That's awsome.

38
00:02:00.239 --> 00:02:03.159
<v Speaker 2>What's compelling about that story is how those early kind

39
00:02:03.200 --> 00:02:07.599
<v Speaker 2>of simple explorations really set the foundation for a lifelong passion.

40
00:02:07.879 --> 00:02:12.360
<v Speaker 2>Pain emphasizes the sheer fun and joy of writing computer programs,

41
00:02:12.919 --> 00:02:15.159
<v Speaker 2>that feeling you know when you finally solve a problem

42
00:02:15.199 --> 00:02:16.639
<v Speaker 2>where squash a bug.

43
00:02:16.599 --> 00:02:19.360
<v Speaker 1>Even if it's just a missing parenthesis exactly.

44
00:02:19.560 --> 00:02:22.479
<v Speaker 2>That's the essence he hopes to convey. It's the satisfaction

45
00:02:22.560 --> 00:02:23.639
<v Speaker 2>of making something work.

46
00:02:24.199 --> 00:02:27.919
<v Speaker 1>And speaking of origins, let's touch on Python's beginnings Gludo

47
00:02:28.000 --> 00:02:30.280
<v Speaker 1>van Rossum late nineteen eighties.

48
00:02:30.000 --> 00:02:33.639
<v Speaker 2>Yep, and the fun fact named after Monty Python and

49
00:02:33.639 --> 00:02:35.199
<v Speaker 2>the flying circus not.

50
00:02:35.199 --> 00:02:38.159
<v Speaker 1>The snake always a good bit of trivia. And Guido's

51
00:02:38.199 --> 00:02:40.919
<v Speaker 1>title benevolent dictator for life.

52
00:02:40.719 --> 00:02:43.680
<v Speaker 2>Uh huh, playfully of course, for his role in guiding

53
00:02:43.759 --> 00:02:44.280
<v Speaker 2>the language.

54
00:02:44.319 --> 00:02:47.319
<v Speaker 1>So that leads to the big question why Python. Why

55
00:02:47.319 --> 00:02:50.039
<v Speaker 1>has it become so dominant. It's one of the most used,

56
00:02:50.159 --> 00:02:51.719
<v Speaker 1>fastest growing languages out.

57
00:02:51.560 --> 00:02:55.039
<v Speaker 2>There, and for good reason. There are solid strategic advantages.

58
00:02:55.520 --> 00:02:58.639
<v Speaker 2>A key one, maybe the biggest, is its incredible versatility.

59
00:02:58.719 --> 00:03:00.319
<v Speaker 1>It really is like a Swiss army, you know, if

60
00:03:00.360 --> 00:03:05.719
<v Speaker 1>you find it everywhere gaming, desktop software, mobile apps, even VR, network.

61
00:03:05.360 --> 00:03:09.680
<v Speaker 2>Programming, computer security too. Ethical hacking tools often use Python.

62
00:03:09.599 --> 00:03:13.240
<v Speaker 1>Right, though it's worth noting like for super graphics heavy

63
00:03:13.240 --> 00:03:16.199
<v Speaker 1>three D games or really low level stuff C plus

64
00:03:16.240 --> 00:03:17.800
<v Speaker 1>plus might still be the main choice.

65
00:03:17.919 --> 00:03:22.039
<v Speaker 2>Often, Yes, Python excels as the high level orchestrator, or

66
00:03:22.039 --> 00:03:23.960
<v Speaker 2>for rabid prototyping in those areas.

67
00:03:24.319 --> 00:03:27.520
<v Speaker 1>It connects things, gotcha and efficiency. That's another big.

68
00:03:27.360 --> 00:03:31.560
<v Speaker 2>Plus huge MYTHO has got extensive libraries, a massive ecosystem.

69
00:03:32.120 --> 00:03:34.840
<v Speaker 2>You're rarely starting from zero. You don't have to reinvent

70
00:03:34.840 --> 00:03:36.560
<v Speaker 2>the wheel for common tasks.

71
00:03:36.240 --> 00:03:39.639
<v Speaker 1>So you can build complex things faster, like machine learning

72
00:03:39.680 --> 00:03:40.719
<v Speaker 1>stuff exactly.

73
00:03:40.879 --> 00:03:43.599
<v Speaker 2>Instead of writing algorithms on scratch, you grab a library

74
00:03:43.639 --> 00:03:48.479
<v Speaker 2>like psychic learn or TensorFlow. Saves immense time, reduces errors.

75
00:03:48.240 --> 00:03:50.520
<v Speaker 1>And readability when you're debugging at two am.

76
00:03:50.680 --> 00:03:53.479
<v Speaker 2>Oh, It's a life saver. Python's clean syntax makes finding

77
00:03:53.520 --> 00:03:56.560
<v Speaker 2>issues much simpler than say, wrestling with complex C plus

78
00:03:56.599 --> 00:03:58.479
<v Speaker 2>plus or Java syntax sometimes.

79
00:03:58.159 --> 00:04:01.280
<v Speaker 1>Which means less maintenance hassle faster fixes.

80
00:04:01.039 --> 00:04:04.639
<v Speaker 2>Directly translates to that plus. It's portable right once run

81
00:04:04.680 --> 00:04:06.479
<v Speaker 2>on Windows, Mac, Linux, oh too.

82
00:04:06.599 --> 00:04:09.319
<v Speaker 1>Yeah, opens up your audience without rewriting code.

83
00:04:09.080 --> 00:04:11.960
<v Speaker 2>And thinking bigger picture. Its role in the Internet of

84
00:04:12.000 --> 00:04:14.639
<v Speaker 2>Things IoT is really growing.

85
00:04:14.919 --> 00:04:18.000
<v Speaker 1>Controlling smart lights, smart toasters exactly.

86
00:04:18.199 --> 00:04:21.680
<v Speaker 2>Python gives those devices a voice, lets them listen to commands,

87
00:04:22.079 --> 00:04:24.560
<v Speaker 2>makes them interactive parts of a system.

88
00:04:24.319 --> 00:04:27.600
<v Speaker 1>And frameworks like Django. They're more than just shortcuts.

89
00:04:27.600 --> 00:04:31.639
<v Speaker 2>Well absolutely, they're like architectural blueprints. They save time, sure,

90
00:04:32.079 --> 00:04:37.000
<v Speaker 2>but they also enforce best practices, handle security basics, database.

91
00:04:36.519 --> 00:04:39.920
<v Speaker 1>Stuff, guide you towards scalable, maintainable code.

92
00:04:39.720 --> 00:04:44.560
<v Speaker 2>Precisely reduces boilerplate and common mistakes. And you know, the

93
00:04:44.560 --> 00:04:47.199
<v Speaker 2>community's fun too. Python code poetry contests.

94
00:04:47.319 --> 00:04:49.639
<v Speaker 1>Ah I saw that builds a good culture.

95
00:04:49.839 --> 00:04:53.560
<v Speaker 2>It does, and this all feeds into career flexibility. That's

96
00:04:54.000 --> 00:04:55.839
<v Speaker 2>maybe the most crucial point for many.

97
00:04:55.680 --> 00:04:58.360
<v Speaker 1>Listeners because it's used everywhere everywhere.

98
00:04:58.560 --> 00:05:01.680
<v Speaker 2>Having Python skills makes you super adaptable. You can pivot

99
00:05:01.680 --> 00:05:05.920
<v Speaker 2>between data science, webdev, sysadmin security. It's a gateway and.

100
00:05:05.879 --> 00:05:08.600
<v Speaker 1>A tool, a great long term investment for your career.

101
00:05:08.519 --> 00:05:11.399
<v Speaker 2>Definitely, and we're not talking small companies only. Google's use

102
00:05:11.439 --> 00:05:14.040
<v Speaker 2>it since day one for rapid builds, easy.

103
00:05:13.759 --> 00:05:18.639
<v Speaker 1>Maintenance, Facebook, Instagram two heavily relies on it, especially Django

104
00:05:18.800 --> 00:05:20.319
<v Speaker 1>for Instagram.

105
00:05:19.759 --> 00:05:24.439
<v Speaker 2>Snapchat, NASA, even the CIA, they all use Python. It's

106
00:05:24.480 --> 00:05:26.959
<v Speaker 2>the lingua franca in many cutting edge places.

107
00:05:27.040 --> 00:05:29.959
<v Speaker 1>Okay, wow, so from that big picture, let's zoom in.

108
00:05:30.279 --> 00:05:34.759
<v Speaker 1>Let's build your foundational superpowers core Python concepts.

109
00:05:34.319 --> 00:05:36.839
<v Speaker 2>But not just definitions, right. We want to explore the

110
00:05:36.920 --> 00:05:38.839
<v Speaker 2>nuance is what makes them powerful.

111
00:05:38.439 --> 00:05:42.199
<v Speaker 1>On Python exactly, Starting with dot math maybe the first villain,

112
00:05:42.519 --> 00:05:44.040
<v Speaker 1>but actually your first superpower.

113
00:05:44.240 --> 00:05:48.040
<v Speaker 2>Yeah. Math functions are the absolute bread and butter game, physics,

114
00:05:48.079 --> 00:05:51.360
<v Speaker 2>financial models, It's all math underneath. Python makes it simple.

115
00:05:51.600 --> 00:05:53.279
<v Speaker 2>Type one plus one in the show and.

116
00:05:53.240 --> 00:05:57.279
<v Speaker 1>You get two easy. But the nuance comes with operator.

117
00:05:56.759 --> 00:06:02.120
<v Speaker 2>Precedence, right. Python follows a specific ordertion division before edition subtraction,

118
00:06:02.839 --> 00:06:03.480
<v Speaker 2>just like algebra.

119
00:06:03.600 --> 00:06:05.399
<v Speaker 1>So ten plus ten twenty isn't four hundred.

120
00:06:05.480 --> 00:06:08.959
<v Speaker 2>Nope, it's two hundred because ten twenty happens first gives

121
00:06:09.000 --> 00:06:12.839
<v Speaker 2>you two hundred, then add ten understanding that prevents subtle.

122
00:06:12.519 --> 00:06:14.879
<v Speaker 1>Bugs, and you control it with parentheses exactly.

123
00:06:14.920 --> 00:06:17.199
<v Speaker 2>You dictate the order. You can even nest them like

124
00:06:17.279 --> 00:06:20.720
<v Speaker 2>ten plus five ten two. Python works from the inside out.

125
00:06:20.839 --> 00:06:22.319
<v Speaker 2>It's how you tell it how to think.

126
00:06:22.639 --> 00:06:26.600
<v Speaker 1>Okay. Next up, data types. Every piece of data has

127
00:06:26.639 --> 00:06:28.879
<v Speaker 1>a type tells Python how.

128
00:06:28.720 --> 00:06:31.839
<v Speaker 2>To handle it in Python's dynamic typing is interesting here.

129
00:06:31.920 --> 00:06:36.600
<v Speaker 1>First, type integers hint whole numbers zero, two, one hundred,

130
00:06:36.639 --> 00:06:36.920
<v Speaker 1>and A.

131
00:06:36.839 --> 00:06:39.399
<v Speaker 2>Cool thing in Python is arbitrary precision integers. They can

132
00:06:39.439 --> 00:06:43.319
<v Speaker 2>handle massive numbers without overflow issues, unlike some languages create

133
00:06:43.360 --> 00:06:43.839
<v Speaker 2>for science.

134
00:06:44.040 --> 00:06:48.439
<v Speaker 1>Crypto then floats float numbers with decimals two point five and.

135
00:06:48.399 --> 00:06:51.759
<v Speaker 2>A key point. Math involving an integer and a float

136
00:06:51.920 --> 00:06:53.879
<v Speaker 2>always results in a float. Five to two gives you

137
00:06:53.920 --> 00:06:54.560
<v Speaker 2>two point five.

138
00:06:54.759 --> 00:06:58.519
<v Speaker 1>Convenient, but watch out for floating point precision issues. Insensitive

139
00:06:58.519 --> 00:06:59.920
<v Speaker 1>stuff like finance.

140
00:06:59.560 --> 00:07:01.439
<v Speaker 2>Definitely something to be aware of. Yeah, and you can

141
00:07:01.480 --> 00:07:04.120
<v Speaker 2>convert between them. Float twelve gives twelve point zero in

142
00:07:04.199 --> 00:07:05.199
<v Speaker 2>twelve point six.

143
00:07:05.000 --> 00:07:07.120
<v Speaker 1>Gives twelve it trunkates doesn't round.

144
00:07:06.879 --> 00:07:09.839
<v Speaker 2>Correct crucial when dealing with user input, which is often text,

145
00:07:10.199 --> 00:07:11.839
<v Speaker 2>or just ensuring data formats are right.

146
00:07:11.959 --> 00:07:15.279
<v Speaker 1>Got it? Now? The secret weapon variables.

147
00:07:14.959 --> 00:07:17.480
<v Speaker 2>More than just boxes. Think of them as labels pointing

148
00:07:17.480 --> 00:07:21.000
<v Speaker 2>to data in memory, numbers, text, complex.

149
00:07:20.600 --> 00:07:23.399
<v Speaker 1>Stuff, and their power is storing info dynamically, so you

150
00:07:23.439 --> 00:07:25.560
<v Speaker 1>can refer to it, change it, reuse.

151
00:07:25.279 --> 00:07:28.040
<v Speaker 2>It, exactly. Create them with a meaningful name and assignment

152
00:07:28.560 --> 00:07:30.720
<v Speaker 2>al eight six seven five three zero nine.

153
00:07:30.879 --> 00:07:33.639
<v Speaker 1>Naming dimensions are important here, like readability crucial.

154
00:07:34.040 --> 00:07:38.519
<v Speaker 2>Use descriptive names like player strength, and the Python standard

155
00:07:38.600 --> 00:07:41.800
<v Speaker 2>is snake case, so hair strength stats not camel case.

156
00:07:42.040 --> 00:07:43.839
<v Speaker 2>Keep them simple, intuitive.

157
00:07:43.399 --> 00:07:45.839
<v Speaker 1>And you do math on them. Player score five hundred

158
00:07:46.040 --> 00:07:49.519
<v Speaker 1>bonus points equals two to fifty. Then print player score

159
00:07:49.560 --> 00:07:50.519
<v Speaker 1>plus bonus.

160
00:07:50.199 --> 00:07:53.399
<v Speaker 2>Points output seven to fifty and they're mutable. Player score

161
00:07:53.399 --> 00:07:56.399
<v Speaker 2>play score plus bonus points updates player score to seven

162
00:07:56.399 --> 00:07:59.279
<v Speaker 2>to fifty. Understanding that assignment flow is fundamental.

163
00:07:59.519 --> 00:08:03.399
<v Speaker 1>Speaking of fundamentals and best practices. Yeah, commenting your code.

164
00:08:03.240 --> 00:08:07.000
<v Speaker 2>Yes, not just syntax. It's a critical habit. Comments are

165
00:08:07.000 --> 00:08:11.199
<v Speaker 2>ignored by Python, but invaluable for documenting explaining logic for.

166
00:08:11.160 --> 00:08:13.120
<v Speaker 1>Your future self or teammates.

167
00:08:13.240 --> 00:08:17.680
<v Speaker 2>Absolutely. Single lines use hashtag, Multiline blocks use triple quotes.

168
00:08:17.480 --> 00:08:20.040
<v Speaker 1>Or which also work as doc strings for functions.

169
00:08:20.079 --> 00:08:21.720
<v Speaker 2>Right they do. We'll get to that. And a really

170
00:08:21.800 --> 00:08:24.920
<v Speaker 2>useful trick commenting out code sections with hashtag to isolate

171
00:08:24.920 --> 00:08:28.160
<v Speaker 2>bugs without deleting, like a temporary holding cell for code.

172
00:08:28.279 --> 00:08:31.600
<v Speaker 1>Smart. Okay, let's string things along strings, sequences of characters

173
00:08:31.600 --> 00:08:32.399
<v Speaker 1>and quotes, yep.

174
00:08:32.279 --> 00:08:35.080
<v Speaker 2>Single or double letters, numbers, symbols, dot text.

175
00:08:35.320 --> 00:08:39.039
<v Speaker 1>But the classic gotcha the apostrophe in its print. It's

176
00:08:39.039 --> 00:08:40.519
<v Speaker 1>a trap breaks right.

177
00:08:40.600 --> 00:08:43.360
<v Speaker 2>Python sees the apostrophe and thinks the string ends early

178
00:08:43.480 --> 00:08:44.360
<v Speaker 2>syntax error.

179
00:08:44.440 --> 00:08:47.679
<v Speaker 1>The fix is the escape character backslash, so print it's

180
00:08:47.720 --> 00:08:49.080
<v Speaker 1>okay exactly.

181
00:08:48.799 --> 00:08:51.200
<v Speaker 2>Tells Python to treat the next character literally. You also

182
00:08:51.279 --> 00:08:55.159
<v Speaker 2>use it for n new line t tab controls.

183
00:08:54.759 --> 00:08:57.519
<v Speaker 1>Text layout and strings. Aren't just text store them in

184
00:08:57.600 --> 00:09:02.200
<v Speaker 1>variables hero name, grill Master, combine them with plus bode.

185
00:09:01.919 --> 00:09:06.840
<v Speaker 2>Concatenation Yeah, print Wonder plus Bay plus boy puts the space.

186
00:09:06.559 --> 00:09:10.120
<v Speaker 1>In and replication with print ned ten plus Batman.

187
00:09:09.840 --> 00:09:14.639
<v Speaker 2>Ah exactly prints ned ten times. Also for embedding variables,

188
00:09:14.679 --> 00:09:18.080
<v Speaker 2>cleanly fee strings are the modern way f our hero

189
00:09:18.200 --> 00:09:18.519
<v Speaker 2>name is.

190
00:09:18.519 --> 00:09:22.240
<v Speaker 1>Here, super readable, nice okay, new weapon lists like a

191
00:09:22.279 --> 00:09:24.840
<v Speaker 1>closet of boxes, ordered collection and square brackets.

192
00:09:24.919 --> 00:09:28.440
<v Speaker 2>Key advantage holds multiple often related items under one name.

193
00:09:28.480 --> 00:09:32.080
<v Speaker 1>Access items by index starting at zero point. Superpowers a

194
00:09:32.120 --> 00:09:35.080
<v Speaker 1>closed flight cape strength so superpower zero is flight.

195
00:09:35.080 --> 00:09:37.360
<v Speaker 2>Right and to put the whole list nicely print Superpowers

196
00:09:37.480 --> 00:09:38.000
<v Speaker 2>unpacks it.

197
00:09:38.080 --> 00:09:41.799
<v Speaker 1>And the big thing about lists, they're mutable, changeable correct.

198
00:09:41.840 --> 00:09:44.159
<v Speaker 2>You can delete items with the two super weaknesses one

199
00:09:44.720 --> 00:09:47.039
<v Speaker 2>add to the end with a pen, add at a

200
00:09:47.080 --> 00:09:48.519
<v Speaker 2>specific spot with insert.

201
00:09:48.639 --> 00:09:51.200
<v Speaker 1>You need to be careful with insert on big lists

202
00:09:51.399 --> 00:09:52.519
<v Speaker 1>performance wise yeah.

203
00:09:52.519 --> 00:09:54.720
<v Speaker 2>Inserting at the beginning can be flower Yeah. And you

204
00:09:54.759 --> 00:09:57.200
<v Speaker 2>can remove the first match of a value.

205
00:09:57.440 --> 00:10:00.519
<v Speaker 1>Lots of ways to change them. Removes and turns an

206
00:10:00.519 --> 00:10:01.720
<v Speaker 1>item useful.

207
00:10:01.399 --> 00:10:04.879
<v Speaker 2>For stacks or cues, reverse flips the order in place,

208
00:10:04.960 --> 00:10:07.480
<v Speaker 2>sort orders them, knowing when to use these in place

209
00:10:07.559 --> 00:10:10.559
<v Speaker 2>methods versus making new lists is key for efficiency.

210
00:10:10.919 --> 00:10:16.440
<v Speaker 1>Okay, now the real core making decisions conditional statements if

211
00:10:16.679 --> 00:10:18.679
<v Speaker 1>else el if this lets.

212
00:10:18.480 --> 00:10:21.240
<v Speaker 2>Your program react execute different code based on whether something

213
00:10:21.360 --> 00:10:22.120
<v Speaker 2>is true or false.

214
00:10:22.279 --> 00:10:25.879
<v Speaker 1>Boolean logic using comparison operators for equal yes not equal

215
00:10:25.919 --> 00:10:28.159
<v Speaker 1>head is essential for building anything interactive.

216
00:10:28.240 --> 00:10:31.759
<v Speaker 2>Then combine conditions with and both true or at least

217
00:10:31.759 --> 00:10:33.960
<v Speaker 2>one true not reverses.

218
00:10:33.480 --> 00:10:36.720
<v Speaker 1>It right, and for complex decisions you can nest these

219
00:10:36.720 --> 00:10:40.080
<v Speaker 1>statements inside each other. Indentation is crucial here. It defines

220
00:10:40.120 --> 00:10:41.519
<v Speaker 1>the structure in Python.

221
00:10:41.320 --> 00:10:45.840
<v Speaker 2>Very pythonic all right. Loops and logic repetition as a superpower.

222
00:10:46.240 --> 00:10:49.679
<v Speaker 2>Iterating indispensable for processing lists, running games.

223
00:10:49.799 --> 00:10:52.200
<v Speaker 1>While loops repeat as long as a condition is true,

224
00:10:52.559 --> 00:10:54.840
<v Speaker 1>like a password prompt as the example, and.

225
00:10:54.879 --> 00:10:59.080
<v Speaker 2>A neat trick. Use it lower on input like password

226
00:10:59.120 --> 00:11:02.840
<v Speaker 2>dot lower secret, so it accept secret secret secret much friendlier.

227
00:11:02.879 --> 00:11:04.720
<v Speaker 1>Good tip and four loops are for when you know

228
00:11:04.720 --> 00:11:06.720
<v Speaker 1>how many times or for collections.

229
00:11:06.559 --> 00:11:09.919
<v Speaker 2>Typically yes yeah, like iterating over a list or using

230
00:11:10.039 --> 00:11:13.519
<v Speaker 2>range for x in range one to eleven, dot x

231
00:11:13.600 --> 00:11:14.200
<v Speaker 2>counts one to.

232
00:11:14.159 --> 00:11:17.120
<v Speaker 1>Ten, and range can have a step parameter count by

233
00:11:17.159 --> 00:11:18.679
<v Speaker 1>twos or backwards.

234
00:11:18.759 --> 00:11:21.679
<v Speaker 2>Uh huh, quite versatile for sequences range ten zero one

235
00:11:21.720 --> 00:11:22.799
<v Speaker 2>of one counts.

236
00:11:22.519 --> 00:11:25.559
<v Speaker 1>Down and loop control break gets you out completely.

237
00:11:25.240 --> 00:11:28.480
<v Speaker 2>Exits loop entirely. Continue skips the rest of the current

238
00:11:28.519 --> 00:11:30.159
<v Speaker 2>iteration and goes to the next.

239
00:11:30.039 --> 00:11:31.440
<v Speaker 1>And pass does nothing.

240
00:11:31.519 --> 00:11:34.799
<v Speaker 2>A placeholder lets you write syntactically valid but empty loops

241
00:11:34.879 --> 00:11:36.360
<v Speaker 2>or functions while you're planning things.

242
00:11:36.279 --> 00:11:40.559
<v Speaker 1>Up, okay, leveling up advanced arsenal time functions. Modules built

243
00:11:40.600 --> 00:11:42.240
<v Speaker 1>ins efficiency.

244
00:11:42.600 --> 00:11:45.799
<v Speaker 2>Yes, efficiency isn't just nice, it's a core design goal.

245
00:11:46.320 --> 00:11:50.639
<v Speaker 2>Functions and modules are about code reusability, less code, fewer bugs,

246
00:11:50.679 --> 00:11:51.519
<v Speaker 2>easier maintenance.

247
00:11:51.720 --> 00:11:53.840
<v Speaker 1>Modules are just Python files you can import.

248
00:11:54.039 --> 00:11:59.039
<v Speaker 2>Essentially, yes, three main types built ins like math time packages.

249
00:11:59.120 --> 00:12:02.360
<v Speaker 2>You install ip insall PI, game and custom ones. You

250
00:12:02.399 --> 00:12:03.799
<v Speaker 2>write for your projects.

251
00:12:03.759 --> 00:12:08.200
<v Speaker 1>And finding out what's available understanding modules. That's a superpower itself.

252
00:12:08.240 --> 00:12:11.320
<v Speaker 2>Absolutely print help modules lists them. Use dot doc or

253
00:12:11.360 --> 00:12:13.840
<v Speaker 2>help on a module or function to see as documentation

254
00:12:14.440 --> 00:12:16.080
<v Speaker 2>vital for using new tools quickly.

255
00:12:16.159 --> 00:12:18.600
<v Speaker 1>To make your own you use def for functions save

256
00:12:18.679 --> 00:12:20.240
<v Speaker 1>as dot py than import.

257
00:12:20.440 --> 00:12:23.159
<v Speaker 2>That's the process, and always add good dostrens like this

258
00:12:23.399 --> 00:12:27.279
<v Speaker 2>to your own functions explains what they do, parameters, return values.

259
00:12:27.480 --> 00:12:29.200
<v Speaker 2>Self documenting code makes sense.

260
00:12:29.720 --> 00:12:32.039
<v Speaker 1>Python also has built in functions always ready.

261
00:12:32.399 --> 00:12:35.440
<v Speaker 2>For strings, let's such useful ones strer dot I, supper

262
00:12:35.759 --> 00:12:39.440
<v Speaker 2>is lower iosalfa for letters only, is numeric. For numbers,

263
00:12:39.519 --> 00:12:42.279
<v Speaker 2>is space for white space and lend to get the length.

264
00:12:42.399 --> 00:12:45.600
<v Speaker 1>Great for validation and for numbers not men max.

265
00:12:45.879 --> 00:12:49.399
<v Speaker 2>Some quick easy tools for basic stats on collections. Simple

266
00:12:49.399 --> 00:12:51.120
<v Speaker 2>but used all the time. All right, prepare for a

267
00:12:51.240 --> 00:12:55.279
<v Speaker 2>significant leap. Classes and objects Object oriented programming OOP.

268
00:12:55.639 --> 00:12:57.399
<v Speaker 1>This is more than just reuse. It's a whole way

269
00:12:57.399 --> 00:12:59.759
<v Speaker 1>of thinking right, modeling things exactly.

270
00:13:00.120 --> 00:13:03.080
<v Speaker 2>It shifts you from sequential steps to thinking about entities

271
00:13:03.120 --> 00:13:07.000
<v Speaker 2>and how they interact. Essential for complex scalable apps.

272
00:13:07.200 --> 00:13:09.720
<v Speaker 1>So a class is like the blueprint the DNA. Class

273
00:13:09.759 --> 00:13:11.759
<v Speaker 1>Superhero defines the template.

274
00:13:11.440 --> 00:13:16.080
<v Speaker 2>Precisely, and objects are the actual instances created from that blueprint.

275
00:13:16.519 --> 00:13:20.440
<v Speaker 2>Hot dog Man Superhero creates a unique hot dog Man object.

276
00:13:20.120 --> 00:13:22.519
<v Speaker 1>With its own attributes like name and power level.

277
00:13:22.679 --> 00:13:25.320
<v Speaker 2>Right, and methods are just functions defined inside the class.

278
00:13:25.399 --> 00:13:27.200
<v Speaker 2>Yeah actions the object can perform.

279
00:13:27.360 --> 00:13:31.919
<v Speaker 1>Creating a class is class Superhero and that special init

280
00:13:32.039 --> 00:13:34.480
<v Speaker 1>method the constructor crucial.

281
00:13:34.639 --> 00:13:36.960
<v Speaker 2>It runs automatically when you create an object. It's where

282
00:13:36.960 --> 00:13:39.799
<v Speaker 2>you set up the initial attributes give the hero its, starting.

283
00:13:39.480 --> 00:13:42.759
<v Speaker 1>Stats, and then inheritance. This sounds powerful.

284
00:13:42.879 --> 00:13:46.679
<v Speaker 2>It is subclasses, inherent traits methods everything from parent classes

285
00:13:47.240 --> 00:13:50.399
<v Speaker 2>class robot superhero or a class mutant superhero.

286
00:13:50.480 --> 00:13:52.759
<v Speaker 1>So a robot gets all the basic superhero stuff plus

287
00:13:52.799 --> 00:13:54.480
<v Speaker 1>maybe like plus ten brawn.

288
00:13:54.480 --> 00:13:58.840
<v Speaker 2>Exactly, while a mutant might get plus ten speed promotes reuse,

289
00:13:59.080 --> 00:14:03.480
<v Speaker 2>manages complexity by showing relationships between types and the superhero.

290
00:14:03.559 --> 00:14:07.159
<v Speaker 1>Generator three thousand project in the book shows all this perfectly.

291
00:14:07.279 --> 00:14:11.840
<v Speaker 2>It evolves basic stats first, then random names powers, thenop

292
00:14:12.440 --> 00:14:14.240
<v Speaker 2>with different hero types and bonuses.

293
00:14:14.919 --> 00:14:18.360
<v Speaker 1>Using time dot sleep for drama, random dot choice for

294
00:14:18.480 --> 00:14:19.799
<v Speaker 1>randomness makes it practical.

295
00:14:19.960 --> 00:14:21.279
<v Speaker 2>Shows how concepts combine.

296
00:14:21.399 --> 00:14:24.679
<v Speaker 1>Okay, let's cover other key data structures toopoles and dictionaries.

297
00:14:24.879 --> 00:14:29.120
<v Speaker 2>Right tuples first like lists ordered collections, but.

298
00:14:29.120 --> 00:14:33.240
<v Speaker 1>The key difference immutable cannot be changed after creation defined

299
00:14:33.279 --> 00:14:34.679
<v Speaker 1>with parentheses and why.

300
00:14:34.639 --> 00:14:38.120
<v Speaker 2>Use them well. Immutability offers some performance gains sometimes and

301
00:14:38.159 --> 00:14:41.200
<v Speaker 2>guarantees data consistency. Good for fixed collections.

302
00:14:41.240 --> 00:14:44.840
<v Speaker 1>Coordinates settings you can still use men max more huttle

303
00:14:45.480 --> 00:14:48.120
<v Speaker 1>and sorted does A new sorted list doesn't change the.

304
00:14:48.080 --> 00:14:51.399
<v Speaker 2>Tupple correct reinforcing immutability dot tiple converts other types not

305
00:14:51.519 --> 00:14:54.240
<v Speaker 2>del removes the whole tupple and you check existence with

306
00:14:54.480 --> 00:14:56.039
<v Speaker 2>count or in now.

307
00:14:56.200 --> 00:14:59.799
<v Speaker 1>Dictionaries your key to information using key value pairs.

308
00:15:00.039 --> 00:15:03.440
<v Speaker 2>Incredibly powerful, store and retrieve data using a meaningful label

309
00:15:03.600 --> 00:15:07.600
<v Speaker 2>code name algebra, not just an index defined with curly braces.

310
00:15:07.960 --> 00:15:11.039
<v Speaker 1>Access with the key algebral name. Super fast lookups.

311
00:15:10.639 --> 00:15:12.759
<v Speaker 2>And you can view keys with dot keys, values of

312
00:15:12.840 --> 00:15:16.320
<v Speaker 2>dot values or pairs with dot items.

313
00:15:15.879 --> 00:15:19.720
<v Speaker 1>And unlike tupples, dictionaries can be modified, change values, add

314
00:15:19.759 --> 00:15:20.639
<v Speaker 1>new pairs.

315
00:15:20.360 --> 00:15:24.480
<v Speaker 2>Yes algebrage forty two or use dick dot update to

316
00:15:24.559 --> 00:15:28.559
<v Speaker 2>merge dictionaries. Delbrit removes specific keys to the whole thing.

317
00:15:29.000 --> 00:15:34.720
<v Speaker 2>Foundational for config files, user data, anything needing fast semantic.

318
00:15:34.200 --> 00:15:38.159
<v Speaker 1>Lookup okay, organizing the layer python files why multiple file.

319
00:15:38.080 --> 00:15:42.080
<v Speaker 2>Efficiency, fewer errors, easier collaboration on big projects, break code

320
00:15:42.080 --> 00:15:43.360
<v Speaker 2>into logical modules, and.

321
00:15:43.360 --> 00:15:46.399
<v Speaker 1>Python works with lots of file types dot Y, dot TXT,

322
00:15:46.639 --> 00:15:48.639
<v Speaker 1>dot HTML, dot CSV, json.

323
00:15:48.919 --> 00:15:51.879
<v Speaker 2>Very versatile makes Python a central tool for data processing

324
00:15:51.879 --> 00:15:52.759
<v Speaker 2>across formats.

325
00:15:52.919 --> 00:15:58.000
<v Speaker 1>Working with files starts with open specifying modes like wra.

326
00:15:57.279 --> 00:16:00.440
<v Speaker 2>Write read a PEND or combinations like R plus four ReadWrite.

327
00:16:00.519 --> 00:16:02.679
<v Speaker 1>Then you read line or read line and always close

328
00:16:02.720 --> 00:16:03.840
<v Speaker 1>the file or use with.

329
00:16:03.960 --> 00:16:06.440
<v Speaker 2>Using with open ASF is better practice. It guarantees the

330
00:16:06.440 --> 00:16:08.120
<v Speaker 2>file closes even if errors occur.

331
00:16:08.200 --> 00:16:10.240
<v Speaker 1>Good tip and directories folders.

332
00:16:10.639 --> 00:16:14.000
<v Speaker 2>The AUS module your friend for interacting with the operating

333
00:16:14.039 --> 00:16:17.080
<v Speaker 2>system finds where you are. OS dot m k d

334
00:16:17.360 --> 00:16:19.559
<v Speaker 2>R makes a new folder. Dot O S dot c

335
00:16:19.679 --> 00:16:21.360
<v Speaker 2>d g R changes directory.

336
00:16:21.480 --> 00:16:23.679
<v Speaker 1>Need to be careful with paths. Use forward slashes or

337
00:16:23.720 --> 00:16:25.159
<v Speaker 1>OS dot path dot.

338
00:16:25.039 --> 00:16:28.519
<v Speaker 2>Join yes for cross platform compatibility. Dot OS dot R

339
00:16:28.639 --> 00:16:32.000
<v Speaker 2>m d R removes an empty directory. OS dot remove

340
00:16:32.120 --> 00:16:35.360
<v Speaker 2>deletes a file, OS dot rename renames one gives scripts

341
00:16:35.360 --> 00:16:36.559
<v Speaker 2>control over the filesystem.

342
00:16:36.679 --> 00:16:39.240
<v Speaker 1>Awesome now the fun stuff peygame for games.

343
00:16:39.399 --> 00:16:42.200
<v Speaker 2>Yeah. While C plus plus might dominate heavy three D

344
00:16:42.600 --> 00:16:45.039
<v Speaker 2>Python and PI game are fantastic for learning game DEEB

345
00:16:45.080 --> 00:16:46.879
<v Speaker 2>prototyping and making cool two D games.

346
00:16:47.000 --> 00:16:50.360
<v Speaker 1>PI game as a set of modules for graphics, sound input.

347
00:16:50.279 --> 00:16:55.559
<v Speaker 2>Exactly easy to install Python dash, MPIP install, pigame accessible.

348
00:16:55.159 --> 00:16:58.639
<v Speaker 1>The basic structure, Import pigame, pigame, dot net, set up

349
00:16:58.679 --> 00:17:00.960
<v Speaker 1>the displayset mode, set cap than the game loop.

350
00:17:01.080 --> 00:17:04.359
<v Speaker 2>That loop is key. It's where everything happens repeatedly updates, drawing,

351
00:17:04.440 --> 00:17:06.640
<v Speaker 2>checking input, creating the illusion of motion.

352
00:17:06.599 --> 00:17:09.799
<v Speaker 1>Colors use RGB two poles color red inkles two fifty

353
00:17:09.880 --> 00:17:11.920
<v Speaker 1>five zero zero. Drawing shapes is easy.

354
00:17:12.000 --> 00:17:15.319
<v Speaker 2>Pigame dot draw, dot circle, dot rex straightforward.

355
00:17:14.759 --> 00:17:17.680
<v Speaker 1>Images are sprites. Load with piegame dot image, dot load

356
00:17:17.759 --> 00:17:20.279
<v Speaker 1>scale with transform dot scale, then blit them.

357
00:17:20.319 --> 00:17:23.079
<v Speaker 2>Blitting is just painting the image onto the screen surface

358
00:17:23.400 --> 00:17:26.279
<v Speaker 2>screen dot blit copying pixels.

359
00:17:25.799 --> 00:17:29.039
<v Speaker 1>And interactivity comes from events. The event loop for event

360
00:17:29.359 --> 00:17:31.640
<v Speaker 1>in piegame dot event, dot get.

361
00:17:31.440 --> 00:17:35.559
<v Speaker 2>Constantly checking for piegame, coude, key down, keop user actions.

362
00:17:35.240 --> 00:17:37.079
<v Speaker 1>So you can make text appear when.

363
00:17:37.000 --> 00:17:40.240
<v Speaker 2>B is pressed like bark exactly. You react to those events.

364
00:17:40.279 --> 00:17:43.960
<v Speaker 1>And collision detection hitting screen, edges or other objects crucial.

365
00:17:44.400 --> 00:17:47.759
<v Speaker 2>Border collision keeps things on screen. Object to object collision

366
00:17:47.799 --> 00:17:51.759
<v Speaker 2>lets characters interact, collect items, fight enemies. It's the core

367
00:17:51.880 --> 00:17:54.200
<v Speaker 2>game mechanic logic, pew.

368
00:17:53.920 --> 00:17:57.160
<v Speaker 1>Okay, final leg error handling and career paths, and.

369
00:17:57.119 --> 00:18:02.240
<v Speaker 2>The mindset here is crucial. Mistakes, failures are learning opportunities.

370
00:18:02.279 --> 00:18:04.079
<v Speaker 2>Debugging is just part of the process.

371
00:18:04.200 --> 00:18:08.119
<v Speaker 1>Right builds resilience. So three main error types. First, syntax

372
00:18:08.200 --> 00:18:09.720
<v Speaker 1>errors grammar.

373
00:18:09.400 --> 00:18:13.599
<v Speaker 2>Mistakes like typos, missing quotes, wrong indentation. Python can't even

374
00:18:13.680 --> 00:18:17.160
<v Speaker 2>understand it stops the program before it runs. Python gives hints,

375
00:18:17.400 --> 00:18:18.599
<v Speaker 2>but sometimes they're cryptic.

376
00:18:18.759 --> 00:18:21.680
<v Speaker 1>Then logical errors. The sneaky ones.

377
00:18:21.680 --> 00:18:25.079
<v Speaker 2>Program runs but gives the wrong answer. The logic is

378
00:18:25.079 --> 00:18:28.359
<v Speaker 2>flawed a plus B two instead of a plus b two.

379
00:18:28.519 --> 00:18:31.079
<v Speaker 2>Hardest to find requires planning testing.

380
00:18:31.319 --> 00:18:34.680
<v Speaker 1>Finally, exceptions Python understands.

381
00:18:34.160 --> 00:18:37.079
<v Speaker 2>But can't do it at run time exactly like into

382
00:18:37.119 --> 00:18:40.279
<v Speaker 2>ABCD that's a value air or dividing by zero zero

383
00:18:40.319 --> 00:18:41.240
<v Speaker 2>division error.

384
00:18:41.039 --> 00:18:44.599
<v Speaker 1>And try accept blocks? Are the shield handle errors gracefully?

385
00:18:44.720 --> 00:18:48.400
<v Speaker 2>Yes, you try the risky code. If an exception happens,

386
00:18:48.440 --> 00:18:51.920
<v Speaker 2>the accept block catches it. You can catch specific types

387
00:18:52.079 --> 00:18:55.000
<v Speaker 2>like accept value, air prevents, crashes.

388
00:18:54.680 --> 00:18:57.160
<v Speaker 1>Can add else if no exception, and finally, which always

389
00:18:57.200 --> 00:18:57.960
<v Speaker 1>runs correct.

390
00:18:58.039 --> 00:19:01.599
<v Speaker 2>Finally is good for cleanup like closing files regardless of errors.

391
00:19:01.680 --> 00:19:03.960
<v Speaker 1>And you can make your own exceptions with race, exception

392
00:19:04.359 --> 00:19:05.039
<v Speaker 1>or assert.

393
00:19:05.359 --> 00:19:08.519
<v Speaker 2>Very useful for enforcing specific rules or validation within your

394
00:19:08.519 --> 00:19:10.559
<v Speaker 2>own code. Logic, custom error messages.

395
00:19:10.599 --> 00:19:12.799
<v Speaker 1>Practical debugging tools Logging dot PDB.

396
00:19:13.000 --> 00:19:15.960
<v Speaker 2>The logging module tracks issues to files. PDB lets you

397
00:19:16.000 --> 00:19:19.279
<v Speaker 2>step through code line by line, inspect variables, invaluable and.

398
00:19:19.279 --> 00:19:23.079
<v Speaker 1>The commenting trick again hashtag out sections to isolate problems.

399
00:19:23.240 --> 00:19:24.880
<v Speaker 2>Simple but surprisingly effective.

400
00:19:24.920 --> 00:19:28.720
<v Speaker 1>Okay, shifting gears Python careers. These skills are foundational now

401
00:19:29.079 --> 00:19:29.920
<v Speaker 1>hugely valuable.

402
00:19:29.920 --> 00:19:34.440
<v Speaker 2>Open stores, beta tester, bug locator, data scientist. Where Python

403
00:19:34.480 --> 00:19:34.960
<v Speaker 2>is gaing.

404
00:19:34.799 --> 00:19:38.559
<v Speaker 1>Software developer, game programmer, often with C plus plus, maybe

405
00:19:38.599 --> 00:19:39.359
<v Speaker 1>some mobile.

406
00:19:39.119 --> 00:19:43.400
<v Speaker 2>Dev, web development with jangle, flask system administration. Python's a

407
00:19:43.400 --> 00:19:46.960
<v Speaker 2>lifesaver there, research teaching, It's incredibly broad.

408
00:19:47.039 --> 00:19:49.480
<v Speaker 1>It really gives you flexibility to pivot in your career.

409
00:19:49.799 --> 00:19:50.759
<v Speaker 2>That's a major benefit.

410
00:19:50.799 --> 00:19:54.559
<v Speaker 1>Interview prep key Python features lists versus tuple differences.

411
00:19:54.160 --> 00:20:00.880
<v Speaker 2>Definitely immutability, performance use cases, Explain inheritance, how to create

412
00:20:01.000 --> 00:20:05.440
<v Speaker 2>listable dictionary local versus global variables, listing module functions with

413
00:20:05.559 --> 00:20:06.599
<v Speaker 2>durer or help.

414
00:20:06.880 --> 00:20:10.759
<v Speaker 3>They test core understanding and best practices. Define a professional,

415
00:20:10.960 --> 00:20:14.799
<v Speaker 3>follow style guides like PP eight, consistency matters, fixed broken

416
00:20:14.839 --> 00:20:17.200
<v Speaker 3>code immediately, don't let technical debt, build.

417
00:20:17.079 --> 00:20:20.559
<v Speaker 1>Up documentation beyond comments, dock strings, finks.

418
00:20:20.440 --> 00:20:23.799
<v Speaker 2>Crucial for larger projects. Use repositories like get up, leverage,

419
00:20:23.799 --> 00:20:28.319
<v Speaker 2>pipey packages. Don't reinvent things needlessly, test often, test thoroughly, fix,

420
00:20:28.519 --> 00:20:29.839
<v Speaker 2>then retest.

421
00:20:29.720 --> 00:20:34.000
<v Speaker 1>Be consistent with indentation, tabs or spaces, and remember oop.

422
00:20:33.799 --> 00:20:36.240
<v Speaker 2>Is great, but not everything needs to be a class.

423
00:20:36.680 --> 00:20:39.440
<v Speaker 2>Sometimes simple functions are better, use the right tool for

424
00:20:39.480 --> 00:20:39.839
<v Speaker 2>the job.

425
00:20:40.240 --> 00:20:45.160
<v Speaker 1>So the future for Python looks bright, data science, AI research.

426
00:20:44.839 --> 00:20:48.279
<v Speaker 2>Absolutely strong growth expected. The Python two to three migration

427
00:20:48.400 --> 00:20:52.599
<v Speaker 2>is mature now, solidifying the ecosystem. It's flexibility and community

428
00:20:52.920 --> 00:20:54.119
<v Speaker 2>and sure it keeps evolving.

429
00:20:54.319 --> 00:20:57.480
<v Speaker 1>Okay, and there we have it. We've gone from origins

430
00:20:57.559 --> 00:21:02.880
<v Speaker 1>through core concepts, advanced tools, errors, careers. Quite the journey.

431
00:21:03.000 --> 00:21:05.920
<v Speaker 1>You've definitely gained a toolkit of amazing powers.

432
00:21:06.039 --> 00:21:08.759
<v Speaker 2>Yeah, mission accomplished for this deep dive, you could say,

433
00:21:09.160 --> 00:21:12.359
<v Speaker 2>But really, your hero's journey in programming, it starts now.

434
00:21:12.759 --> 00:21:15.119
<v Speaker 2>The more you code, the more intuitive it becomes.

435
00:21:15.240 --> 00:21:16.039
<v Speaker 1>Practice is key.

436
00:21:16.240 --> 00:21:18.519
<v Speaker 2>It really is transforms knowing into doing.

437
00:21:18.759 --> 00:21:20.599
<v Speaker 1>So the final thought, now that you can speak the

438
00:21:20.640 --> 00:21:23.440
<v Speaker 1>language of computers, create some pretty cool programs. What new

439
00:21:23.480 --> 00:21:24.559
<v Speaker 1>worlds will you build?
