Roadmap - Wayzware/Grade-Calculator-3 GitHub Wiki

Grade Calculator 3 Roadmap


Grade Calculator 1 & 2: ✅

Grade Calculator 1 was written mainly in mid 2016 in VB.Net, and is much more simplistic than GC2 or GC3. GC1 was limited to just 4 categories per class, and did not save class data to the disk initially. Early GC1's functionality was a simple as adding, multiplying, and dividing, and then displaying those numbers. In 2017, File I/O was added to GC1 (around v1.4). This meant that data could be saved and used over multiple uses of the program. This was my first real project that used non-volatile memory, and I was so excited when I was able to get it to read and write data! Grade Calculator 1 development ended in mid 2017 with v1.5.

Grade Calculator 2 development began at the start of the next school year, in late 2017. GC2 was an extension onto GC1, as GC2 contains all the code from GC1, and is still written in VB.NET. GC2's features included a 5th assignment category, default grading scales, the need to only fill in the lows for a grade (ex. A = 93%+ instead of A = 93%-100%), and a GPA calculator. Additionally, the "+" or "add" button was added to automatically add points to categories. Grade Calculator 2 development ended in late 2018 with the release of v0.5.

While the latest versions of GC1 and GC2 still function fine today, by 2020, it became apparent that many classes were using more than 5 assignment categories, and thus I decided I needed to upgrade GC2. When I went back to check out the code and try to upgrade it, I realized that it was a horrible spaghetti mess (probably because it was mainly written when I had only 1 quarter of high school instruction in csci). It was not possible to upgrade it, and I decided to rewrite GC2 in C#.

Version 0.1: ✅

The initial release of GC3 was intended to be comparable to GC2. In almost every way, GC3 had the same functionality as GC2, except had the ability to have a near unlimited amount of assignment categories. Under the hood, GC2 was rewritten in C#, and uses the ".gcdx" (xml) format for saving instead of using an ordered list of lines in a text file with ".gcd" (txt).

Version 0.2: ✅

This version added the ability to delete classes, one of v0.1's missing features from GC2. It also added the ability to edit classes after they have been saved to file.

Version 0.3: ✅

This version added the ability to save assignments to the disk, so you will not have to retype them in every time you launch GC3. GC3 uses the ".gcax" (.xml) format to save assignments.

Version 0.4: ✅

This version added the ability to apply curves and drop assignments. GC3 uses the ".gccx" (xml) format to save curves.

Version 0.5: ✅

This version added the ability to automatically sync your classes, assignments, grading scales, and curves with Canvas

Version 0.6: ❌

This version will add a robust settings window or toolbar.

Version 0.7: ❌

This version will add a tool to help determine exactly how many points you need to pass.

Version 0.8: ❌

The UI will be improved for this version.

Version 1.0: ❌

This version will not be released until I feel that all the features have been added and are of a high quality and high level of usefulness.

Update October 2020

Grade Calculator 3 production has been put on hold temporarily, probably to resume in mid-2021.