This may be subject to change.
[ ] - no work has been done
[ ] 🚧 - work in progress (assigned / open PR)
[x] - lesson completed
👤 name - who is working on issue
- Introduction
- How course works?
- Motivation and Mindset
- 🚧 Asking for Help — #32 👤 tkcompani
- Join the Community — #33
- Computer Science basics, Programming and Python
- Prerequisites
- Software Installation
- Text and Code Editors
- Command Line Basics
- Python - REPL vs Scripts
- Git Basics
- Introduction to Git
- Setting up Git and Github
- Git Basics
- Foundations
- Output, Variables, Core Datatypes
- Arithmetic and String Operations, Comparisons
- User Input and Conditionals
- Loops
- Data Structures
- 🚧 Lists — #57 👤 razorblade23
- 🚧 Tuples — #58 👤 razorblade23
- 🚧 Sets — #59 👤 razorblade23
- 🚧 Dictionaries — #60 👤 razorblade23
- 🚧 Coprehensions (
list,dictset) — #61 👤 razorblade23
- Code Organization
- 🚧 Functions — #62 👤 tajirdev
- Scope and Namespaces (LEGB rule) — #63
- Type Hints — #64
- Modules — #65
- Capstone Project 1
- Problem Solving — #66
- Problem Solving - Fizz-Buzz Example — #67
- Capstone Project - Hangman game — #68
- Errors, Debugging, I/O
- Understanding Errors and Error Handling
-
loggingmodule - Debugging tehniques
- File Handling
- 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
- Creating branch, adding features, merging back to
- Capstone Project
- Intermediate Python
- Decorators
- Generators
- Context Managers
- Capstone Project 3
- Capstone Project
- Built-in and Modules
-
mathmodule -
jsonmodule -
randommodule -
datetimemodule -
pathlib/osmodule -
csvmodule -
sysmodule -
remodule
-
- Third-party Modules
- Virtual Environments
- Using
pipandrequirements.txt - Creating python package -
pyproject.tomlfile - ? Linting, Formatting, Type Checking (
ruff,mypy) ?
- Capstone Project 4
- Clean Code Priciples
- Capstone Project
- Testing Your Code (
pytest) - Revisit Project 4
- Develop a testing suite for the project
- Object Oriented Programming - Part 1
- Introduction to classes and instances
- Methods (instance, class, static)
- Dunder Methods (
__str__,__repr__, etc...)
- Capstone Project 5
- Capstone Project
- Object Oriented Programming - Part 2
- Four Pillars of Object-Oriented Programming (Encapsulation, Abstraction, Inheritance, Polymorphism)
- Capstone Project 6
- Capstone Project