Giter VIP home page Giter VIP logo

moodle-ribbon's Introduction

Ribbon - Parametric variation of a moodle quiz

We introduce Ribbon a wrapper around Moodle’s GIFT format, which enables instructors to compose a quiz in a Markdown document, with questions that have multiple versions. The tool accepts templated questions with placeholder strings in the body of the question and a list of multiple values, or a function/routine that generates a list of values. The output is a GIFT file containing a question for each variation of the list. This reduces the amount of time needed to create a high quality exam while minimizing students' incentive for copying each other.

A presentation explaining the project is available here.

Prerequisites

The only dependency of the Ribbon module is Python 3. All imported packages should be installed in a clean, new Python 3 installation.

Usage

Usage information and help is include within the script. Issue

python3 ribbon.py --help

for command line options and documentation.

Example

Using the csv comment block, you can generate a question template, where the variables will be substituted by Ribbon to generate the final GIFT questions. Each template can have a header name, which identifies the hierarchy in the moodle question bank. The example

 # exam/text/substitution
 <!-- csv
 form           , word       , answer
 past tense     , run        , ran
 plural         , mouse      , mice
 scientific term, yawning    , oscitancy
 Latin term     , unconquered, invicta
 -->
 The {{form}} of {{word}} is { ={{answer}} }

will generate 4 questions based on the template, with names Q001, ..., Q004 under exam/text/substitution path in moodle question bank.

Changelog

v0.1

  • Initial commit
  • Beta option: Coderunner questions

Author list

Design and development:
Frank Blanning1, Dimitris Floros1, Nikos Pitsianis1.

Communication:
Send your questions at {frankgou, fcdimitr} @auth.gr
or open a new issue.

Acknowledgements:
We thank Xiaobai Sun2 for her critical comments.

1 Department of Electrical and Computer Engineering, Aristotle University of Thessaloniki, Thessaloniki, Greece
2 Department of Computer Science, Duke University, Durham, NC USA

moodle-ribbon's People

Contributors

fcdimitr avatar laserscout avatar pitsianis avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.