This repository showcases a collection of advanced Python projects and coding challenges, emphasizing key programming concepts such as data ingestion, algorithms, object-oriented programming, and data manipulation. It highlights practical applications of Python for solving real-world problems and building foundational skills for data engineering and software development.
Full-featured projects that solve complex problems or implement significant functionality:
-
Stock Market Trading
Implements trading strategies and data analysis for stock market simulation, focusing on decision-making and automation. -
Blackjack Game
A Python-based implementation of the classic Blackjack card game, demonstrating logic building and game development skills. -
COVID-19 API Analysis
Focuses on data ingestion by retrieving COVID-19 case data from a public API. The data is processed and prepared for analysis or integration into larger data pipelines. -
Cryptocurrency Exchange Simulator
Fetches real-time cryptocurrency trading data via an API for simulation purposes, showcasing data ingestion and preparation for trading or analytics workflows.
Smaller tasks designed to hone specific programming skills:
-
Object-Oriented Programming
Exercises exploring OOP principles like inheritance, encapsulation, and polymorphism. -
Big O Notation Analysis
Problems analyzing algorithmic complexity and optimization techniques. -
Binary Search Trees
Implementation and traversal of BSTs, showcasing fundamental data structure skills. -
Graph Algorithms with NetworkX
Tasks leveraging Python’sNetworkX
library to solve graph-related problems such as shortest paths and centrality.
Several projects in this repository emphasize data ingestion, which is a foundational step in building data pipelines. For example:
- COVID-19 API Analysis retrieves public health data, processes it, and prepares it for further use.
- Cryptocurrency Exchange Simulator ingests real-time trading data, highlighting its utility for integration into trading strategies or dashboards.
While these projects do not include data storage or utilization, they serve as the groundwork for creating full-fledged data pipelines.
- Expanded Projects: Incorporating storage (e.g., databases), automation, and visualization for end-to-end workflows.
- Advanced Topics: Asynchronous programming, machine learning pipelines, and distributed systems.