50 Days of Python: Zero to Hero Series
Looking to pick up a new skill, how about learning Python, a universally used programming language within software and data engineering, with the added usage of machine Learning and AI capabilities via a shed-load of packages at your fingertips.
This series is completely free to go through and is split into weekly categories. All I ask is if you’re enjoying the content to like, share and subscribe for more materials and deep-dives.
Week 1: Python Basics
Day 1: Introduction to Python: Setting up the environment, Python syntax, and writing your first program.
Day 2: Variables and Data Types.
Day 3: Operators and Expressions.
Day 4: Control Flow: If-Else statements.
Day 5: Loops - For and While.
Day 6: Functions and Function Arguments.
Day 7: Modules and Packages.
Week 2: Data Structures
Day 8: Lists, Tuples, and Dictionaries.
Day 9: Sets and Strings.
Day 10: List Comprehensions.
Day 11: Working with Collections and Itertools.
Day 12: Error and Exception Handling.
Day 13: Working with Dates and Times in Python.
Day 14: Python File I/O - Reading/Writing Files.
Week 3: Intermediate Python
Day 15: Classes and Object-Oriented Programming (OOP).
Day 16: Inheritance, Polymorphism, and Encapsulation.
Day 17: Introduction to Functional Programming: Lambdas, Map, Filter, and Reduce.
Day 18: Decorators and Generators.
Day 19: Context Managers and the with Statement.
Day 20: Understanding Python’s GIL and Multithreading Basics.
Day 21: Multiprocessing and Asynchronous Programming with asyncio.
Week 4: Python for Data Engineering
Day 22: Introduction to Data Engineering with Python.
Day 23: Working with CSV, Excel, and JSON files.
Day 24: Using SQLAlchemy or PYODBC to Interact with Databases.
Day 25: Building ETL Pipelines in Python.
Day 26: Working with APIs and Web Scraping using requests and BeautifulSoup.
Day 27: File System Operations and Cloud Storage Integrations (Azure Specific).
Day 28: Introduction to PySpark for Big Data Processing.
Week 5: Data Analysis and Visualisation
Day 29: Introduction to Pandas for Data Analysis.
Day 30: Advanced Pandas - Data Manipulation and Aggregation.
Day 31: Data Visualisation with Matplotlib.
Day 32: Advanced Visualisation with Seaborn.
Day 33: Plotly for Interactive Visualisations.
Day 34: Working with Jupyter Notebooks and Markdown for Reporting.
Day 35: Streamlit for Building Simple Data Apps.
Week 6: Advanced Topics
Day 36: Introduction to Machine Learning Concepts.
Day 37: Using Scikit-Learn for Data Preprocessing and Modeling.
Day 38: Deep Learning Basics with TensorFlow.
Day 39: Building a Simple Neural Network in TensorFlow.
Day 40: Model Deployment with FastAPI.
Day 41: Working with Job Scheduling Libraries like Airflow or Luigi.
Day 42: Setting Up CI/CD for Python Data Projects.
Week 7: Python in Production
Day 43: Logging and Debugging Best Practices.
Day 44: Writing Unit and Integration Tests in Python.
Day 45: Code Optimisation and Profiling Tools.
Day 46: Best Practices for Python Packaging and Dependency Management.
Day 47: Introduction to Infrastructure as Code with Python (Terraform/Bicep).
Day 48: Python Security Best Practices.
Day 49: Version Control with Git for Python Projects.
Week 8: Final Project and Wrap-Up
Day 50: Building an End-to-End Data Pipeline and Reporting Dashboard in Python.
If you have any issues, please let me know.