#44 implemented a User profile model for holding some information about the user.
As well as a method for verifying that the user is able to perform the validation task correctly.
When a user enter to the platform for the first time, he is considered as "non trustable".
When he goes for validating category annotations, in the first page, some test examples are added.
If the user succeed with those examples, he is then considered as "trustable", and his votes will be considered as "trustable". If he does not succeed, his votes will be considered as "non trustable" until he succeed in validating the test examples.
There is one problem in the current implementation:
The "trutable" field is independent of the category. It means that if a user validate the test example of "dog bark", he is also trustable for validating "Soprano Saxophone". This should not be the case.
After discussing with edufonseca, we decided that this solution should be implemented:
When a user start to validate a certain category, test examples are added to the first page.
Once in a while (for now once every five pages), test examples are added.
If the user changes category, test examples are again added (even if he has not done 5 pages).
From the implementation point of view, I think of adding a last_category_annotated
field in Profile
that allows for knowing which was the last category he annotated (and thus will correspond to the category the user is trustable or not)