Applied Projects
LOCAL CANADIAN COVID-19 REPORTED CASE TRACKER (DJANGO WEBSITE) | APRIL 2020 – DECEMBER 2020
- Based on COVID-19 statistics via provincial and federal government websites, a now defunct website, www.virihealth.com, was listing all reported cases and their basic details across the country since early March 2020. The website was deployed via a Digital Ocean droplet.
- Over a few weeks, I built a now defunct, single page Django website (www.virihealthlocal.com) to generate local charts of both reported cases and reported deaths across the country. This involved implementing two function based views, one for the home page and one for the implementation of ChartJS to plot the local charts.
- Initially, I was mining data from www.virihealth.com, via a Python Selenium Chomedriver script, and storing the data in a Mongo DB. As of April 28th, Viri Health chose to discountinue their website. At that point, I began mining the provincial and local websites, all of whom provide at least basic case details for their respective local health regions.
EUROPEAN FOOTBALL SEER WEB (REACT) & MOBILE APP (REACT NATIVE) | DECEMBER 2018 – DECEMBER 2020
- The objective of this application was to aid sports betting by calculating probabilities of wins/losses/draws for upcoming match fixtures between any pair of European football teams.
- I had developed Python code to scrape sufficient recent statistics and scheduling information via Selenium Chromedriver from sports websites, like WhoScored.com, to calculate the current form of players on both teams, and store the data in an MySQL database and in JSON format.
- I wrote more Python code to use feature engineering and machine learning to develop the best prediction model for every match.
- I developed an Adobe XD wireframe and then a React application for an end-user to implement for match predictions, along with significant insights into key details to look out for during an upcoming match, e.g., key battle moments between a striker and central defender.
- Via SCP and an EC2 instance, I migrated the MySQL database to Amazon RDS.
- Using Docker, I created a package for the AWS Lambda function that executes the web scraping tasks, along with fetching all dependencies. I was able to successfully run the scraper first in Docker, then uploaded a ZIP file of the function and dependencies to Lambda.
- I had set up VPCs, Subnets, Route Tables, IGWs and NAT Gateways to allow the Lambda function access to the RDS database, particular files in an S3 bucket and the internet to successfully use Chromedriver.
MY HISTORICAL NETFLIX TASTE TREND (VIA TABLEAU) | JANUARY 2020 – FEBRUARY 2020
- Out of curiosity I decided to take a proper look at the kind of shows and movies I’ve been watching on Netflix, by using a Python Selenium web scraping script to get the genres of all the shows and movies listed in my history, and then plot the trendlines for each genre via Tableau.