Coder Social home page Coder Social logo

fpl_compare_app's Introduction

Hi there ๐Ÿ‘‹

I am Alfie, a Data Engineer currently based in London, UK.

Some of the technologies/packages I am currently learning include ๐Ÿ“˜

  • Python
  • PySpark
  • Dagster
  • Docker
  • GCP

Current Certifications

  1. AWS Certified Cloud Practitioner
  2. Talend Data Integration v7 Certified Developer
  3. Databricks Certified Associate Developer for Apache Spark

fpl_compare_app's People

Contributors

ajohnson5 avatar

Watchers

 avatar

fpl_compare_app's Issues

iOS NumPad Enter key

When entering id's into the web app for the compare squad page, on iOS mobile phones the numpad is open which does not have an enter/done key. This means they cant submit an id. I think this is due to the masking I have put on the inputs "##########" which only allows numbers to be entered. If I can make it so the phone opens on the mixed keyboard - numbers at the top with various special/punctuation characters below that would be ideal as they then have an enter key.

Upcoming Fixtures

A useful feature for comparing squads is seeing each players upcoming fixtures and utilising some FDR to assess the difficulty of these games. I think add a similar section to transfers (expandable) and listing all 15 players for each squad with their next 5 fixtures will do the trick.

To implement this there are a few tasks I need to complete.

  • Add static upcoming fixture section
  • Add fixtures collection to firestore (Stores 5 next fixtures for each team for each gameweek)
  • Assess and decide on how best to implement fixtures for players section
  • Implement the above

Failed league id/manager select css transition on mobile

On my own phone the transition of the league id input to half width and expansion of the manager select to half width does not work properly. It looks like the league search stays at full width and since overflow is hidden the manager select is only partially revealed.
Trying to work on it at the moment but struggling on how to proceed.

Dagster data pipeline - Using Temporary data

Since a number of the fpl api endpoints are not functioning at the moment I am using mock data generator which replicates the structure of the json data retrieved from these endpoints. Consequently a number of the functions used for the data retrieval are different to account for this in the gameweek_pipeline/assets/players.py. Before a full deployment can be made these need to changed along with removal of unneeded packages.

Large quantity of transfers

Some players have made a large number of transfers - more than is viable while still playing to win the game. For example, making 30+ transfers in a given gameweek. However this does slow down website quite substantially, even if it is rather rare. To prevent this I think I need to implement a hard cap on the maximum number of transfers (say 15 or 20) which will prevent this issue from having too large an impact on the webapps performance.

FPL API Endpoint Downtime

The FPL API endpoint goes down for a period of time (~2 hours) when an update to the data is occurring such as at the start/end of a gameweek. Currently I have no measure in place to firstly catch the faulty calls to the endpoints and also notify the users of the situation.

During this downtime, the generate squad functionality should be functional but the Compare will not - I could implement a squad generator to use for the compare page to showcase how it would work when the endpoints are up and running.

Chips

Chips are an important part of FPL, especially when it comes to comparing the performance of two squads on a given gameweek. Currently there is no implementation for showcasing the chips used for a gameweek other than Triple Captain via the fire icon adorned next to the selected Captain. It would be useful to implement a way of showcasing the other chips. The chips include

  • Wildcard (Twice a season - 1 in first half, another in second half)
  • Benchboost (Once a season)
  • Freehit (Once a season)
  • Triple Captain (Once a season)

The difficulty lies in ensuring that the UI is not clogged up by these additions while also being clear enough at first glance a chip has been used.

Dagster Cloud Deployment

Since I will be opting to use Dagster cloud due to lower cost for a long running process such as the sensors. In preparation of this I need to set up the appropriate accounts and credentials.

  • 1. Dagster Cloud Account (30 days free)

  • 2. Firestore initialization

  • 3. Environment variables

  • 4. Dagster_cloud.yaml file for code location

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.