Skip to content

Latest commit

 

History

History
93 lines (91 loc) · 3.11 KB

File metadata and controls

93 lines (91 loc) · 3.11 KB

Current curriculum plan

This may be subject to change.

Legend

[ ] - no work has been done [ ] 🚧 - work in progress (assigned / open PR) [x] - lesson completed 👤 name - who is working on issue

Roadmap

  1. Introduction
    • How course works?
    • Motivation and Mindset
    • 🚧 Asking for Help — #32 👤 tkcompani
    • Join the Community — #33
    • Computer Science basics, Programming and Python
  2. Prerequisites
    • Software Installation
    • Text and Code Editors
    • Command Line Basics
    • Python - REPL vs Scripts
  3. Git Basics
    • Introduction to Git
    • Setting up Git and Github
    • Git Basics
  4. Foundations
    • Output, Variables, Core Datatypes
    • Arithmetic and String Operations, Comparisons
    • User Input and Conditionals
    • Loops
  5. Data Structures
    • 🚧 Lists — #57 👤 razorblade23
    • 🚧 Tuples — #58 👤 razorblade23
    • 🚧 Sets — #59 👤 razorblade23
    • 🚧 Dictionaries — #60 👤 razorblade23
    • 🚧 Coprehensions (list, dict set) — #61 👤 razorblade23
  6. Code Organization
    • 🚧 Functions — #62 👤 tajirdev
    • Scope and Namespaces (LEGB rule) — #63
    • Type Hints — #64
    • Modules — #65
  7. Capstone Project 1
    • Problem Solving — #66
    • Problem Solving - Fizz-Buzz Example — #67
    • Capstone Project - Hangman game — #68
  8. Errors, Debugging, I/O
    • Understanding Errors and Error Handling
    • logging module
    • Debugging tehniques
    • File Handling
  9. Capstone Project 2
    • Git Workflow: Branches and Pull Requests
    • Revisiting Project 1 (hangman game):
      • Creating branch, adding features, merging back to main
      • Loading words from external file
      • Catching and logging errors
    • Capstone Project
  10. Intermediate Python
    • Decorators
    • Generators
    • Context Managers
  11. Capstone Project 3
    • Capstone Project
  12. Built-in and Modules
    • math module
    • json module
    • random module
    • datetime module
    • pathlib / os module
    • csv module
    • sys module
    • re module
  13. Third-party Modules
    • Virtual Environments
    • Using pip and requirements.txt
    • Creating python package - pyproject.toml file
    • ? Linting, Formatting, Type Checking (ruff, mypy) ?
  14. Capstone Project 4
    • Clean Code Priciples
    • Capstone Project
    • Testing Your Code (pytest)
    • Revisit Project 4
      • Develop a testing suite for the project
  15. Object Oriented Programming - Part 1
    • Introduction to classes and instances
    • Methods (instance, class, static)
    • Dunder Methods (__str__, __repr__, etc...)
  16. Capstone Project 5
    • Capstone Project
  17. Object Oriented Programming - Part 2
    • Four Pillars of Object-Oriented Programming (Encapsulation, Abstraction, Inheritance, Polymorphism)
  18. Capstone Project 6
    • Capstone Project