What to Expect from My Upcoming Blog Series - 50 Days of Python: Zero to Hero
Learn the ins and outs of Python Programming with Data Engineering at the forefront.
With 2025 around the not too distant corner, many people will be looking towards career changes, upskilling opportunities and new year resolutions. Pair this with the fact that data is the heart and soul of most if not all organisations, it pays to have data skills and it pays to have programming skills. So, I’ve decided to put together a comprehensive series that will take you from Python beginner to Python charmer!
I’ll be focusing content around Python fundamentals with a strong emphasis on data engineering. Packing topics into a weekly structure so you’re able to follow and understand content in an organised way. I’ve even thrown in a week of Machine Learning and Artificial Intelligence to help you stay above the tech curve for 2025. It’s definitely not one to miss out on!
I’ve been using Python since 2018 and used it in a number of different ways:
Connecting to external databases, pulling and transforming data, then landing it in various cloud based storage locations.
Using it to process terabytes of near real-time event streams from Kafka topics to Amazon Kinesis Firehoses, into storage and using cloud specific Python packages to push through Glue Catalogs, Redshift Data Warehouses and other cloud specific database SaaS services.
Designing unit tests to make sure that the data received is in the shape it should be and the format 3rd parties have said it was in! (Always get clarity when dealing with 3rd parties)
Implemented reusable python functions in a custom library for engineers and data scientists to use across scripts and clusters.
Designed a Flask application to deliver reporting dashboards with the help of various different packages.
Setting up dataclasses to easily process multiple different sources of data; split between stores, categories', etc.
Much, much MORE!
With the above in mind, I’ve put together the categories and topics we’ll be covering for the 50 days so you can see exactly what you’ll be learning throughout the series.
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 or Flask.
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/Pulumi/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.
I’ll be dropping all related content covered into a GitHub repository so you can refer to it when ever you need as well as use code locally on your device. Link will be provided on Day 1 release.
Trust me when I say this is something I’ve had banked for a while and I’m excited to share this with you all.
If you have any questions or specific use cases you want to over over the 50 days please let me know in the comments and I’ll do my best to accommodate it in the posts!
Would this include a guide for beginners?
Like I could just read your post and understand or would I have to learn from other sources as well?