100-Day Challenge Calendar
Weeks 1-2: Python Basics and Projects
- Day 1-7: Focus on Python basics.
- Project: Create a simple calculator that performs basic arithmetic operations.
- Day 8-14: Learn advanced Python concepts (OOP, data structures).
- Project: Build a contact management system to add, delete, and search for contacts.
Weeks 3-4: Databricks and Data Manipulation
- Day 15-21: Introduction to Databricks and Spark basics.
- Project: Set up a Databricks workspace and create a notebook for basic data analysis.
- Day 22-28: Data import/export and DataFrame operations.
- Project: Analyze a dataset (e.g., Titanic data) using Pandas and Databricks, visualize the results.
Weeks 5-6: PySpark and Data Processing
- Day 29-35: Learn PySpark fundamentals and operations.
- Project: Create a PySpark job to process and analyze a large dataset.
- Day 36-42: Advanced PySpark techniques and MLlib introduction.
- Project: Implement a basic machine learning model using PySpark MLlib.
Weeks 7-8: Enterprise Architecture and Solutions
- Day 43-49: Learn the principles of enterprise architecture.
- Project: Design an enterprise architecture diagram for a fictional company.
- Day 50-56: Explore solution architecture and design patterns.
- Project: Architect a web application with specified features using a chosen design pattern (e.g., MVC).
Weeks 9-10: Testing and Best Practices
- Day 57-63: Learn about testing strategies in Python.
- Project: Write unit tests for the contact management system.
- Day 64-70: Implement best coding practices.
- Project: Refactor your previous projects to follow best practices (PEP 8 standards).
Weeks 11-12: Flutter Basics
- Day 71-77: Introduction to Flutter and Dart.
- Project: Build a simple Flutter app that displays a list of your completed Python projects.
- Day 78-84: Learn about Flutter widgets and state management.
- Project: Enhance your app with a form to submit new projects and save them locally.
Weeks 13-14: Integrating Technologies
- Day 85-91: Explore integration between Python and Databricks.
- Project: Create a Python script that fetches data from a Databricks notebook and visualizes it using Matplotlib.
- Day 92-98: Learn about APIs and how to use them.
- Project: Build a simple API in Flask that retrieves project data from your database and displays it in your Flutter app.
Weeks 15-16: Final Projects and Documentation
- Day 99: Choose your favorite projects and refine them.
- Project: Polish your projects for presentation (code cleanup, comments, documentation).
- Day 100: Document your 100-day journey.
- Project: Write a blog post summarizing what you learned, the projects you completed, and the challenges you faced.
Final Thoughts
This 100-day challenge will help you progressively build your skills while applying them in practical projects. Ensure to document your learning journey, share your progress, and reflect on the challenges and successes along the way!