Inspiration

You’re studying hard, absorbing the material, and you are kicking butt on the assignments. However, rumors are flying that the upcoming final is known to ruin grades, and along with your other responsibilities it just may not be feasible to dedicate the effort you usually do give in order to get the grade you want.

This is where Just Get Me By comes in. This is a streamlined desktop app that gathers your coursework, assignments, scores, and grades from your Canvas class(es) and tells you the minimum target scores needed on upcoming assignments in order to get that A.

An entry into BeaverHacks Winter 2021 Hackathon.

What it does

A desktop app that gathers your coursework and grades from your Canvas class(es) and tells you the minimum target scores needed on upcoming assignments in order to get that A.

How we built it

Usage of Python packages PySimpleGUI and requests along with Michael's (teammate) brain for the calculation algorithm. Collaboration and version control done via Git/GitHub

Challenges we ran into

  • Token security, encryption/encoding considerations
  • Code auditing can be a challenge when looking at another collaborator's code who is working on an unfamiliar aspect of the app
  • Handling merge conflicts from pull requests
  • Dealing with wide variability of Canvas course information returned from API

Accomplishments that we're proud of

  • Collaboration and use of version control throughout (beyond just committing to master)
  • Efficiency in tackling our subtasks/contributions
  • Constant communication throughout
  • Luck - Canvas has wealth of developer features to work with (even as a student)

What we learned

  • PySimpleGUI/CanvasAPI, working with the docs on a foreign technology
  • Security considerations/requirements needed

What's next for Just Get Me By

  • Modernize the GUI, minimize the amount of windows
  • Implement a ‘what-if’ clone for further user grade calculations
  • Additional similar tools to streamline remote learning (eg. Canvas file scraper)

Built With

Share this project:

Updates