Python for Absolute Beginners Transcripts
Chapter: The big ideas of software development
Lecture: The big ideas
0:00 Are you ready to cover the big ideas
0:02 of computer programming and computer science?
0:04 We're going to try to go through them quickly.
0:06 After all, this is not a computer science course
0:08 and definitely not a whole degree in it.
0:10 But there are a few things that you need to have a good
0:13 conceptual understanding of.
0:15 Even if you can't get down to the details
0:17 and work on them right away, that's fine.
0:19 But just a big conceptual understanding for some
0:22 of these core ideas in computer programming
0:25 and computer science.
0:26 We're going to start by talking about what is code
0:29 and how does it execute?
0:31 Probably you've seen some code before but maybe you haven't.
0:33 And we're going to look at Python source code and compare it
0:36 to a few other languages.
0:37 And then we're going to look deep inside the CPython runtime
0:41 to see what happens when you create some Python
0:44 source code and then you go through all the steps
0:47 to turn that into an executing program.
0:49 Those steps for you are just say
0:52 Python, run this application.
0:53 But there's a bunch of stuff happening that is good
0:56 to know about. It's good to have a conceptual understanding of course.
1:00 Next, we're going to talk about algorithms.
1:02 What are algorithms? Cover a popular one.
1:05 How you learn about more.
1:07 How do you create or reuse an algorithm?
1:11 So we're going to talk a little bit about this idea
1:12 of algorithms and tie that back to problem-solving
1:15 a little bit more generally.
1:17 And then something super-important that I'm very excited
1:19 to present right up near the front of the course
1:22 is the difference between experts and beginner developers
1:26 or professional and beginner developers, besides of course
1:30 just getting paid.
1:31 How do they approach problem-solving?
1:33 How do they structure their code?
1:34 What are the various things that you need to go through
1:37 or acquire as a beginner?
1:39 What skills do you need to acquire?
1:41 What mindset do you need to think about before you can make
1:44 that transition over to expert developer?
1:47 So we're going to talk real briefly about some of those ideas
1:50 and techniques and how you can get more information there.
1:53 And finally, one of the big ideas that we're not really
1:56 covering in this chapter is data structures.
1:59 So algorithms and data structures, those are big
2:01 big parts of thinking in computer science terms
2:04 in addition to just knowing the programming language
2:06 and the tools.
2:08 The reason we're not talking about data structures
2:10 is because we're saving that for later in the course.
2:13 When we get deep into a program, we're going to start
2:15 talking about the different data structures
2:16 and using them together to start problem-solving.
2:19 So data structures is also one of the big ideas
2:22 that belongs here but we're going to give it it's own
2:24 special treatment later because it is really important.