Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#288 Add Marking Scales for non-USA Courses #328

Closed
wants to merge 35 commits into from
Closed

#288 Add Marking Scales for non-USA Courses #328

wants to merge 35 commits into from

Conversation

joshuarpearce
Copy link

@joshuarpearce joshuarpearce commented Sep 18, 2019

@joshuarpearce joshuarpearce changed the title Change score key from gpa to grade as per issue suggestion #288 Add Marking Scales for non-USA Courses Sep 18, 2019
@evanplaice evanplaice mentioned this pull request Apr 23, 2020
10 tasks
@DonDebonair
Copy link
Member

Can we merge this one? I remember that there was consensus that grade is better than gpa?

@DonDebonair
Copy link
Member

@evanplaice @thomasdavis what do you think?

@thomasdavis
Copy link
Member

@dandydev I think we can keep it as gpa

I think the reason was

The Grade Point Average (GPA) is an internationally recognised calculation used to find the average result of all grades achieved throughout your course.

Grading in education is the process of applying standardized measurements of varying levels of achievement in a course. Grades can be assigned as letters, as a range, as a percentage, or as a number out of a possible total. In some countries, grades are averaged to create a grade point average.

Although it seems American, it is not meant to be.

@DonDebonair
Copy link
Member

The quote says that gpa is internationally recognized, but at the same time #288 contains arguments that it isn't. I have only one data point, which is my own country. In The Netherlands we don't regularly use gpa.
I'm still in favor of using grade and making the type open (you can use string, number etc)

@thomasdavis
Copy link
Member

Yeah, I prefer grade anyway, happy to bring it in. Let's do it!

@DonDebonair
Copy link
Member

This one cannot be merged automatically, I will resolve it manually and merge. Probably tonight (GMT+2)

@stp-ip
Copy link
Member

stp-ip commented Aug 18, 2020

I do like score and a min, max, that can easily be shown as a percentage. That covers all min, max scales and the type being a free form covers explanation.

          "score": {
            "additionalProperties": false,
            "description": "exam score",
            "properties": {
              "best": {
                "description": "best possible score",
                "type": "string"
              },
              "type": {
                "description": "type of the score",
                "type": "string"
              },
              "value": {
                "description": "value of the score",
                "type": "string"
              },
              "worst": {
                "description": "worst possible score",
                "type": "string"
              }

@thomasdavis
Copy link
Member

@stp-ip Makes a lot of sense.

Though over the five years it is quite clear that theme developers really value simplicity, and also a lot of people have been happy to keep their resume rather elementary.

@stp-ip
Copy link
Member

stp-ip commented Aug 18, 2020

@stp-ip Makes a lot of sense.

Though over the five years it is quite clear that theme developers really value simplicity, and also a lot of people have been happy to keep their resume rather elementary.

Great thing about this is that score and type are enough so it can default back to simple.
Same for theme developers. They can show a range, bar, percentage or just go with value + label aka type.

@DonDebonair
Copy link
Member

I still think it's too complicated for the majority of use cases. In fact, I'd recommend that we call it grade as in the PR and make the type the JSON Schema equivalent of any. That way people can do what they want with it and themes can choose what formats to support. I suspect that the majority will just take the value of grade and print it as is

@stp-ip
Copy link
Member

stp-ip commented Aug 18, 2020

I still think it's too complicated for the majority of use cases. In fact, I'd recommend that we call it grade as in the PR and make the type the JSON Schema equivalent of any. That way people can do what they want with it and themes can choose what formats to support. I suspect that the majority will just take the value of grade and print it as is

Not sure I fully agree. Giving a framework with flexibility on what is being used > making free form fields do everything.
If we would go the full flexibility route we could say that currently optional fields are allowed so why introduce a grade field into the schema at all? (Exaggerating here, but in my mind what the various discussions over the years have shown is that a general schema, that can be used both with a few filled out values up to full detail might work better than having no strictness in place)

@DonDebonair
Copy link
Member

I'm in favor of being specific and rigorous in places where the impact/significance of that part of a resume is big. But in all my years of hiring people internationally, I have rarely seen people specify their educational grades in a way more specific than just one value (be it a percentage, number). And to be honest, I've rarely seen people actually specify grades/scores at all.

And don't get me wrong, I acknowledge that being able to specify a grade is useful, and I also acknowledge that there is a variety of ways in which people might want to do this. But I strongly feel that we should not try to make a complex specification that tries to capture the myriad of ways in which somebody might want to specify their grade. That's why I want to give people all the options. To be honest, personally, I don't want to have to specify best, worst and value.

@stp-ip
Copy link
Member

stp-ip commented Aug 18, 2020

I'm in favor of being specific and rigorous in places where the impact/significance of that part of a resume is big. But in all my years of hiring people internationally, I have rarely seen people specify their educational grades in a way more specific than just one value (be it a percentage, number). And to be honest, I've rarely seen people actually specify grades/scores at all.

And don't get me wrong, I acknowledge that being able to specify a grade is useful, and I also acknowledge that there is a variety of ways in which people might want to do this. But I strongly feel that we should not try to make a complex specification that tries to capture the myriad of ways in which somebody might want to specify their grade. That's why I want to give people all the options. To be honest, personally, I don't want to have to specify best, worst and value.

Thanks for giving the context.

Personally had various requests or feedback especially internationally, where a grade format wasn't widely known and hiring internationally was easier with a percentage number or at least have an ability to visually say great, good, not good etc.

The great thing about the schema being in the background is that not everything has to be exposed, but having it set even just to set a precedent would be good in my view.

Only setting value and assuming a context of it being GPA is fine, so is adding an additional type or for other type of scenarios a range. The specific idea to use score instead of grade was the re-usability of the scores for various parts of the schema. It makes it easier for theme developers to reuse design and tooling.

@DonDebonair
Copy link
Member

I'm not hung-up on the term grade. I think gpa is too specific, but I can totally see how score is nicely reusable.

With regards to the JSON Schema type of score: I'm really trying to prevent overengineering here. I think the majority of people are going to be confused when, instead of this:

{
    "score": 5.3
}

they have to fill in this:

{
    "score": {
        "value": 5.3
    }
}

And that would only be so we can support what feels to me as edge cases.

I don't think @stp-ip and me are going to come to a consensus there, so I propose @thomasdavis makes a decision and we both live with it :)

@stp-ip
Copy link
Member

stp-ip commented Aug 18, 2020

I think we sort of agree on a few things so.

For example I agree that score and/or type are the fields that are most important. Difference is I think the schema should be a bit wider than the normal use case and let the ecosystem tooling handle the easy to use cases.

Aka the schema could accommodate the full score object, but 90% of the editors might only expose "score" the field and that is fine, but having a rule set within the schema for the other 10% makes the overall usefulness of the schema bigger in my view.

Totally agree, that we can't do this for everything, but especially with the reusable nature of score, it might still make sense.

Happy to hear Thomas's thoughts :)

Sidenote

@thomasdavis
Copy link
Member

thomasdavis commented Aug 18, 2020

+1 in my experience in hiring, the grade has always been easily conveyed or non important.

More often than not we will stick with strings over flexibility, the only thing holding the ecosystem together is the simpleness.

If people absolutely require more complex fields, they are free to do so, by a) forking the theme they want to use and updating it and b) adding their fields as they wish to their resume.json. By virture of the entire project being open source, they could fork everything.

Until a mass of people have pitch forks burning down the README I think we can err on the side of basic.

As for grade vs score, I did feel score for a bit, but believe we should stick with grade.

education.grade
certificate.grade
test.grade 
training.grade

education.score
certificate.score
test.score
training.score 
```

I think grade sounds better in general. 

Happy for more comments before we decide.

@DonDebonair
Copy link
Member

DonDebonair commented Aug 18, 2020

ok, so for now: "whateverthenameis": "string"

Regarding the name, I'm actually starting to lean more towards score because of your examples @thomasdavis 😂 training.score and test.score sound better than training.grade and test.grade. For education.score vs eduction.grade I'm a bit on the fence, but the others pull me towards score.

If we can come to an agreement on the name of the field, I will adjust the PR, resolve conflicts and merge.

@stp-ip
Copy link
Member

stp-ip commented Aug 18, 2020

Would love to get a maintainer call done before merging, but definitely not opposed :)

In my non native english speaker mind grade is more tailored towards school compared to a score, that could be for a certificate, training or the like.

@DonDebonair
Copy link
Member

In my non native english speaker mind grade is more tailored towards school compared to a score, that could be for a certificate, training or the like.

But if we want to choose one for education, training, certificate and test, to keep consistent, which one would you choose between grade and score?

@stp-ip
Copy link
Member

stp-ip commented Aug 19, 2020

In my non native english speaker mind grade is more tailored towards school compared to a score, that could be for a certificate, training or the like.

But if we want to choose one for education, training, certificate and test, to keep consistent, which one would you choose between grade and score?

score

thomasdavis and others added 5 commits August 24, 2020 16:12
Test on non-EOL LTS versions of Node
Node <10 is officially end-of-life. 10+ will enable built-in promises as well as many other useful features.
Test every aspect of the validator
Node 10+ no longer requires a polyfill to use use promises.
evanplaice and others added 22 commits August 24, 2020 16:12
* Specify the Correct Data Type

- basics.network.url -> uri
- publications.url -> uri
- meta.canonical -> uri

* Fix Mistake
re: ["remove mention of migration.js since that doesn't exist"](#349)

If any of the removed content here is still meaningful, we could add it to a roadmap.
The JSONSchema date format is too strict (ie YYYY-MM-DD). This new validation pattern is still ISO8601 compliant but allows for

- YYYY-MM-DD
- YYYY-MM
- YYYY
Make validation more precise and reduce copypasta.
* clean up the samples
* add $schema property to the schema
Now that CI is covered by GH Actions, Travis is redundant.
* Remove .travis.yml
* Fix README.md Badges
Migrate the change log to CHANGELOG.md and back-fill missing data.
@DonDebonair
Copy link
Member

I tried to fix the merge conflict, but it pulled in a lot of commits.
I'm also trying to figure out why the tests fail now.

@DonDebonair
Copy link
Member

I've created a new PR with the same change but also with passing tests and no merge conflicts. Have a look at #391

@DonDebonair
Copy link
Member

Fixed by #391

This was referenced Aug 28, 2020
@joshuarpearce joshuarpearce deleted the bugs/288-non-usa-marking-score branch August 28, 2020 13:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants