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 happen to come across this page and the days are still white text, it means you’re still able to follow along. Each hyperlink will be added as soon as the day is released so stay tuned.
If you have any issues, please let me know.