Thinking like a programmer

  • Developing critical thinking and planning of the site
  • How programming works
  • The world of programming languages
  • Or first coding exercise

Knowing your values and data types

  • What are strings, integers, floats, boolean
  • What is pseudo-code and using it
  • Getting input and how to use it
  • Processing input and then outputting it

Making decisions with if and loops

  • Making decisions with if statements
  • Adding to your if statements with else and elif
  • How the while loop works
  • Beware of the infinite loop
  • Looping through lists/arrays
  • How lists work
  • Accessing elements in a list
  • Using negative indexes to find list items
  • Iterating over a list
  • Using a for loop for iteration
  • Working with Python ranges
  • Building your own list from scratch


  • Creating and using functions
  • Turning existing code into a function
  • Functions that return values
  • Refactoring a function
  • Understanding functions and variable scope
  • Passing variables / arguments to a function
  • Using arguments with keywords

Introduction to data science

  • Planning your app and writing pseudo-code
  • Setting up heuristics
  • Using substring slicing

Getting modular

  • What is a module
  • Exploring the Turtle module
  • Introduction to classes and objects
  • Looking at methods and characteristics

Beyond Iteration (looping)

  • Introduction to dictionaries
  • Looping through a dictionary
  • Working with dictionaries

Working with files

  • Saving and opening files
  • Reading, editing and appending to files
  • Absolute and relative paths
  • Error handling and exceptions

Object Orientation Programming

  • What is and why to use OOP
  • Designing and writing your first class
  • Testing an IS-A in code
  • A look at Object Inheritance, Encapsulation, Polymorphism