Dark theme

Overview and Key Concepts


Core course materials:

Python:

  1. Introduction: history; how Python works [Key Ideas][Depth][Lecture Powerpoint]
  2. Syntax and simple data storage [Key Ideas][Depth][Lecture Powerpoint]
  3. Containers [Key Ideas][Depth][Lecture Powerpoint]
  4. Control flow: loops, branching [Key Ideas][Depth][Lecture Powerpoint]
  5. Control flow: Functions [Key Ideas][Depth][Lecture Powerpoint]
  6. Control flow: Classes and Objects [Key Ideas][Depth][Lecture Powerpoint]
  7. Core libraries: file input / output [Key Ideas][Depth][Lecture Powerpoint]
  8. Core libraries: modules / standard library [Key Ideas][Depth][Lecture Powerpoint]
  9. Functional programming / exceptions [Key Ideas][Depth][Lecture Powerpoint]
  10. Coding for real / Wrap-up [Key Ideas][Depth][Lecture Powerpoint]

Extra:


In addition, we cover a number of ideas core to real world programming more generally.

  1. Open Source Code
  2. GitHub
  3. Integrated Development Environments
  4. Static vs dynamically typed languages
  5. Documentation
  6. Unit Testing
  7. Flow diagrams
  8. UML
  9. CSV; JSON; XML
  10. Functional programming
  11. Web and internet communication
  12. Graphical User Interfaces (GUIs) and usability testing
  13. Patterns
  14. The software process & community development

We also cover some key ideas in computational thinking.

  1. Algorithms
  2. Abstraction
  3. Loops
  4. Pass by reference
  5. Efficiency
  6. Information architecture / Web navigation
  7. Cohesion and coupling

Finally, there are a set of debugging practices.

  1. Missing files; files saved .txt
  2. File PATH
  3. Missing variables; misspelling
  4. Loop iterators / updating while looping
  5. Pass by reference
  6. Object equivalence