Python Grade Calculator

Hello everybody, today I am glad to share with all of you a project that I first talked about back in summer, my python grade calculator. The situation with grades in my school is kind of tricky, my school follows the IBO’s Middle Years Program, however I live in Spain, this made it so that along the course I would get my grades on a scale out of 7, however, at the end of the year I got a score out of 10 since we are in Spain and we needed the grades in the national system’s scale for legal reasons.

Throughout the grades 7 to 10 of middle/high school in which this happened, this became quite the inconvenience, everyone always wanted to calculate what would their grades be, or what score they needed for a certain grade as per usual, but the conversion between these two systems made it a hassle. It would seem like you only needed to do a rule of three with your average from one system to another, but actually the grades out of seven where given in four criterions, then you would need to do an average of each criterion, sum them up and pass them through a table which would give you your score out of ten. This is not so much work to do for one grade, but doing it multiple times for every class did add up to quite a bit of time.

My idea was to make a program in which you would need to input the grades of each criterion and it would automatically give you your score out of 10 for the class, and to later upload it to the web and pass the link around so that my colleagues from those years (since I’m not in those years anymore and my grades are more straightforward now) could have their job made easier. And that is exactly what I did.

Here’s the calculator, this was a great programming project as using the PyWebIO library I made my first entirely-from-the-ground-up web-app, also at the time of making the project there were little to no tutorials on the library, so my only resource was the official documentation which made finishing the project x10 more rewarding since it was done entirely by myself. Apart from that coding-wise the project is not really complex, just some basic python and the flask implementation which did pose a challenge since I had never used it before. Here’s the GitHub repository. I recommend checking the calculator out since I’m quite proud of it.

With the coding done, that was half of the project complete, as now I had to find a way for my peers in those grades to learn about the program, this is actually the part which delayed this post so much. My idea was to talk to the coordinator of those courses in order to find a module in which I could do a presentation to at least one of those grades. When I first pitched the app to the coordinator he liked it, although he did tell me to add a disclaimer because he didn’t want students to go to the teachers with my app complaining about how they got a different grade from what the program said, as student behavior does take a big part in giving out grades in those courses, so that afternoon I put the disclaimer, which you can still see in the web-app, and I went back to him. What followed what a series of interactions in which I would be told to talk with one person about it, since they were the ones in charge for this sort of projects, and when I did talk to that person, they would redirect me to someone else because they weren’t responsible for this sort of projects. This went on for weeks as I have class and cannot spend my days chasing after teachers and coordinators who also have classes and meetings, up until we went full circle and someone redirected me back to the initial coordinator I talked to. I told him how this wasn’t progressing, and he told me that my idea to physically present this to one grade was logistically hard because of scheduling, but that I could get on a zoom call with three of the four grades and give them a presentation. I liked the idea of physically presenting it since I could get a cool picture of me in front of everyone for the blog, but this also worked, so (after a bunch of weeks) we finally did it.

I could not tell if people were really listening to me since it was online and all, but during recess I’ve had some people approach me and tell me about how they are using the app and they are really thankful for it, so I consider the project a success, though I didn’t manage to get the picture.

I hope you enjoyed this entry, I must warn you not to expect many more during this grade as I am now in the first year of the International Baccalaureate and I’ve picked some really hard classes, so I’m probably not going to have much time for coding, though I may have a little surprise for you (If I manage to fix my old ssd) so stay tuned for that!

Leave a comment

Website Powered by WordPress.com.

Up ↑