qosf / qosf.org

Web portal of Quantum Open Source Foundation
https://qosf.org/
Creative Commons Zero v1.0 Universal
124 stars 91 forks source link

Monthly challenge grader system #107

Closed ljcamargo closed 3 months ago

ljcamargo commented 3 months ago

Hello,

This grading system proposal implements nbgrader for jupyter notebooks allowing automated grading and export of csv with the results. This collection of scripts will ease the job for creating, distributing and collecting solved notebooks. A example notebook is included with a simple test, it's a trivial qiskit challenge. This could be fully automated in some point but that will depends on your available or desired execution environment but it is a good start to run locally; for example, it could work with a CI triggered by pull requests in a github repo, upload of submissions in a website, or even a jupyter server as the now extint Qiskit Labs. The requirements for the jupyter notebooks with nbgrader metadata are simple, but as far as I know is not possible to create all-cases generic tests, the checks or assertions must be created carefuly to avoid the participants to reverse enginner the notebook or fake a correct answer and therefore the tests should be a combination of hidden and visible assertions to verify the correctness of the achievement.

There is a README.md for installing and usage.

Closes https://github.com/qosf/qosf.org/issues/94

[Unitary Hack 2024]