This requires a somewhat different mindset and learning approach from, probably, most or all courses you’ve taken in the past. Learning to code doesn’t require a lot of memorization, but instead it requires a lot of hands-on practice — actually writing code (and making errors and debugging them, as discussed in the next section). Let me break down that previous sentence to emphasize two things:

  1. You shouldn’t be trying to memorize the content during the lessons. Instead, try to follow the logic of what’s going on, and expect to use reference material from the lessons (slides and chapters in this book) when you’re working on exercises and assignments.

  2. Expect to spend a lot of time writing code. In addition to the materials provided in this course, a number of students have found it useful to practice using other free tools on the internet, such as Coding Bat and Code Academy.

  3. Expect to make errors, and to spend time debugging your code. This is a normal part of the process, and it’s how you learn. It’s also how you learn to think like a coder, and to develop the problem-solving skills that are so important in coding and data science.

  4. Once you get into the “meat” of the course, you will be asked to perform rather complex tasks that require a number of steps. It’s important to break these down into smaller steps, and to work on them one at a time. This is called “chunking”, and it’s a very important skill in coding and data science. It’s actually great training for your thinking in general, because it is a type of analytical thinking that can be applied to many different situations. Prepare to spend time thinking about how to break down complex tasks into smaller steps, and then to work on those steps one at a time.

  5. Even though AI assistants can help you write code quickly and (relatively) accurately, they depend on your giving them good instructions. AI assistants work best when you break a problem down into relatively small chunks, and then write a description of what you want to do in each chunk. This is a great way to learn to think like a coder, and to develop the problem-solving skills that are so important in coding and data science.

Here’s a quote from Chantel, a student who took the first-ever version of this course in 2020:

I do find that there is a learning curve when it comes to starting to learn coding. It is something I am not super familiar with and making sure that I’m taking my time to really grasp the information I am taking in has posed as a challenge. I am used to reading information from a textbook and just memorizing facts, definitions, and data for test. It is different to actually apply the information that I am learning – it is a different learning style that I (currently) enjoy learning. I think this is something many students may find they need to adjust to.