Fixing my school's grading system
Standards-based grading (SBG) is an approach to grading student learning that focuses on students demonstrating their understanding of specific learning standards or objectives, rather than just accumulating points or grades.
In an SBG system, the curriculum is broken down into specific standards that students are expected to master. Students are evaluated based on rubrics that define levels of proficiency for each standard, rather than just points or percentages.
For example, a standard could be named “HSCompute-15”, with the description being “Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.” This would have multiple assignments assigned to it, and each of those assignments would be graded from 1-4. Then, all of those assignments would be combined to create a final grade for the standard. Do this for like 20-30 standards for the class, and you have a final grade for the course.
While SBG aims to provide a more comprehensive and accurate picture of student learning, it can create challenges when translating these standards-based grades into the traditional GPA format that many colleges and universities still require for admissions and transcripts.
As a student navigating the world of standards-based grading (SBG), I found myself in a unique predicament. While my school embraced this modern grading system, the traditional GPA scale remained a crucial component for college applications and transcripts. Ultimately, I ended up making a Chrome extension and a website that could seamlessly convert SBG grades into a traditional GPA format.
The driving force behind this project was to help students and parents with a user-friendly tool that could translate the often-confusing SBG grades into a more widely recognized GPA format. This also helps understand what colleges would see when student’s transcripts are sent, as they don’t get standards based grades, they get a converted GPA. By developing a Chrome extension and a website, I aimed to make this process accessible and transparent for all.
There has always been this understanding that the conversion from standards based to something more tradional was a very black box, behind the scenes process. But, by pulling some strings, I eventually got a copy of the spreadsheet they use to facilitate this process. The following is the spreedsheet for SBG to GPA conversions for College Prep classes, although they had a similar one for Honors and AP classes. The graph is straight from the data in spreadsheet, there was no function to create it yet
When looking at the generated graph, I noticed that the conversion for all of these grades looked like pieces of a piecewise functions, with each of the functions being linear. However, due to the school’s specific requirements for certain SBG to GPA conversions (and google sheets auto rounding certain values), the rate of change was slightly different every few numbers, even though the overall trend appeared linear.
In the interest of making sure my tool was as accurate to the real spreadsheet as possible, I used linear regression to analyze the spreadsheet data by hand. This allowed me to create a set of piecewise functions tailored for college prep classes, honors classes, and AP classes, ensuring an accurate conversion process.
The images of the piecewise functions are below, and I’ve also put these functions into desmos, in case you want to play around with them yourself. They’re all slightly different to allow a weighting for more difficult classes. You can see the intensity of this weighting by looking at the graph of the functions in desmos.
https://www.desmos.com/calculator/txrv5kynk4
College Prep
Honors
AP
After I created the piecewise functions, I had to convert them to a set of javascript functions to use in my programs. This was more trivial than I thought, and I didnt need to use any external math libraries. This is because piecewise functions are just a series of linear equations, which can be solved by any programming language incredibly simply. You can see how the javascript function and the piecewise function are almost identical, just in different formats.
Once I had the functions to convert the grades, I created a chrome extension that automatically adds the converted grades to powerschool, which is our grading website. In case you want to know how the extension gets the grade values and adds them to the page, the code is open source, at https://github.com/S1monlol/powerschoolSBG
Although my chrome extension worked, there was a big problem: you can’t install the extension on school ipads. So, I decided to develop a website that would allow users to convert their SBG grades into a GPA format. This site had the additional feature of outputing the converted grades into it’s own transcript, which I attempted to match to the style of the school’s real final transcripts.
This project was an amazing learning experience, allowing me to apply my technical skills to solve a real-world problem faced by students in a standards-based grading system. By creating a Chrome extension and a website, I was able to make the SBG to GPA conversion process more accessible and transparent, empowering students and parents to better understand and manage their academic achievements.
Looking ahead, I hope that this project can serve as a model for other schools and students facing similar challenges in bridging the gap between different grading systems.