RFEs for quizzes.

Additional content:

  • Support mathematical formulas using PluginFormula.
  • Support for audio for spelling tests and such.

One of the big things I've been aiming at is a script that generates the quizzes from existing public domain materials. The script looks something like this
Another shot at it:

cat search.pl #!/usr/bin/perl #use strict; open (WORDS,"<mywords.txt") || die "Sorry, opening failed\n"; #hopefully that will work while $word (<WORDS>) || die "Sorry, new error opening the file"; { push @words, $word; } close WORDS; open FILE, "<myfile.txt"; while ($line=<FILE>) { foreach $word (@words) { if ($line =~ /$word/) { print $line; } } } close FILE;

on exec. I get

perl search.pl
syntax error at search.pl line 5, near "while $word "
Execution of search.pl aborted due to compilation errors.

Ok, I know I should be doing this in PHP... redface


lynx --dump http://www.twain-adventures-27.txt #not a real page #this would be a project gutenberg or wikipedia page | tr "\n" " " | perl -nle 'print for / ([[:upper:]][^.]+.)/g' #this pulls the sentence | grep "devil" >2af.txt #Ideally this search would read in a list of grep expressions for example # grep '/^$Subordinatingconjuctionlist.txt/' # grep '/$prepositions/' #in the meantime just grepping for a list of vocabulary words would be nice :) # grep '/$vocabularywordlist.txt/' # or more complex stuff like # grep '/"([0-9]*\.)' # this searches for all instances of correct citations # example goes here: # this performs a search... Ideally this grep would read in a long array

What I'd like to be able to do is take the entire output of 2af.txt and CLOZE the word devil from the text ...

For example:

In my opinion, whoever hove those things in here caught a sight of us and took us for ghosts or .....s or something.
If them stairs hadn't broke down you'd 'a' seen how much dream it was! I've had dreams enough all night- with that patch-eyed Spanish ..... going for me all through 'em- rot him!" "No, not rot him.
I've come now becuz I wanted to know about it, you know; and I come before daylight becuz I didn't want to run acrost them .....s, even if they was dead.
One was a-smoking, and t'other one wanted a light; so they stopped right before me and the cigars lit up their faces and I see that the big one was the deaf and dumb Spaniard, by his white whiskers and the patch on his eye, and t'other one was a rusty, ragged looking ......

(Ideally this would be a fill in the blank question... but if not then a multiple choice.) Which word would best fit in the blanks above?


*devil dog lawyer Aunt


Security and quiz taking

  • The quiz feature has to notice that a viewed a quiz even if he didn't save! I suppose that just looking at the quiz should count as taking it.
    • absolutely! I've caught one student going through quizzes and copying and pasting them...
  • Optionally allow the students to take the quiz a specified number of times. At present you can permit repeating or not. Unlimited repeating might not be good in cases where we are randomly selecting the a number of questions from a pool as it would allow a student to eventually see most or all of the questions.
  • Is there a way to use javascript to "lock" the screen and prevent copy/paste for purposes of cheating? There was some talk of doing so in moddle on their web site. (google site:moodle.org javascript quiz development)
    • This will never work. Cheaters would just hit Print Screen and post the image on another web site. Copying/pasting locking via ))JavaScriptis also unreliable, since anyone can disableJavaScriptTro
      • Alternative, run the quizzes through an SWF generator. [Flash (SWF) is a universal, light weight, and libraries freely available. Ming looks especially good as it is LGPL and python. biggrin

        • I suggest Java. Flash and Shockwave behave badly on Linux. Java is cross-platform. -Tro
        • I don't suggest java as it behaves poorly, in my experience, on networks and a number of school admins view it as a security hole...
      • George Says: This is an issue, but not a show-stopper. For one thing, many courses are open, allowing the students to look at all the material and come and go whenever they please. The publish and expire dates also can be used for security, as can the shuffle questions and shuffle answers features. The best soultion may be to use XMLRPC and have studenst use a client other than a web browers to take the test.

title test for TOC


  • Optionally let the student stop (and save without grading) in the middle of quiz.
  • For the best learning experience, it would be good for the student to see some explanation about the answers immediately after taking the quiz. This explanation could either be on the quiz results page itself, or on a wiki page linked from the quiz results. (--chibaguy) Or, how about a forum that is only open to folks who have completed the quiz?
    • Excellent idea, the more feedback the student gets the better!



  • including apostrophes in the import causes the words to fail
  • Would it make sense to be able to import/export quiz data to/from xml?
  • needs a preview as there many examples of http://www.dennisgdaniels.com/tiki-take_quiz.php?quizId=62 (must be reg'd) where the import didn't work! Teachers need to know this earlier
  • don't allow for zero options!

This is the moodle format.


This is the keduca format:

Clearly the moodle format is more verbose.

<question image="/home/denny/admin_edit_questions11.png" type="1" > <text>Who are the new characters in this chapter?</text> <false>Prince Gwydion, Eilonwy and Taran</false> <false>Coll and Dalban</false> <false>Coll and Taran</false> <true>Coll, Dalban, and Taran</true> <tip>see page X</tip> <explain>This is a where the explanation goes.</explain> </question>



  • After we have more than a handful of quizzes, teachers are going to want to be able to search for text strings.


  • set the var for how many quizzes are viewed at one time
  • set col. heading for last edited
  • Sort the quizzes by categories, last modified.
  • on click of adm it goes to create not admin of that test ... very annoying
*sorts name *sorts: description*doesn't sort! needs to! timeLimit* doesn't sort! needs to! questions


  • import/ export for quiz cats and etc. as found in trackers
    • Please put a link here on how to use the import/export in trackers - otherwise I'll have to spend a lot of time futzing around trying to remember how they worked. I'm planning to import/export xml which will be better in some ways.
    • the import /export IMHO should be ported to all tiki objects


  • confirmation message that X number of questions were uploaded
  • perhaps different page for diff upload of diff question types?
  • include quicktag area for use of post processing plugins and general tagging


Below is a screen dump of new quiz editor I am proposing:

It will be accessed at tiki-quiz_edit.php?quizId=n where n is an integer.

Field-by-field explanation:

The title of the quiz "Chapter 1" is displayed at the top.

The help button takes you to a page on tikiwiki.org that will have content adapted from what I'm typing now.

The buttons:

  • list quizzes - Takes you to a listing of quizzes which someone still has to design (hint) and implement.
  • quiz stats - Takes you to page of stats for all the quizzes which someone still has to design (hint, hint) and implement.
  • this quiz stats - Takes you to page of stats for this particular quiz which someone still has to design (hint, hint, hint) and implement.
  • admin quizzes - Takes you to page for administering quizzes that someone still has to design (hint, hint, hint, hint) and implement.
  • View/Edit as XML - view and edit this quiz as XML that I am going to design and implement.

The check boxes and text fields:

  • Name: The name of the quiz
  • Description: A brief description (Maybe used for the forum, see below.)
  • Categorize: Add the quiz to a category, if desired.
  • Publication Date and Expiration Date: Students will only be able take the quiz between these two times. More accurately, students will only be able to start the quiz between the dates. If they are taking it when the expiration date passes, they still have the Tiki session time limit or the quiz time limit (whichever is smaller) to submit the quiz.
  • Shuffle Questions: The questions in the quiz will be presented in random order, different for each student and for each time taking the quiz.
  • Shuffle Answers: Randomize to order of the choices in multiple-choice questions.
  • Limit questions displayed per page. This tells Tiki to administer the quiz on multiple pages if necessary.
  • Allow students to retake this quiz. If checked the quiz may be taken more than once.
  • Impose a time limit. Tiki will mark a students work late and record by how much if he takes more than the specified time.
  • Allow students to store partial results and return to quiz. This makes the quiz more like an assignment. The student can keep saving coming back to it until he clicks on the button to turn it in. For each student, the questions and answers will only be randomized once and the order will be stored along with the students answers. It seems like this option would be incompatible with imposing a time limit.
  • Immediate feedback. Show the student his results right away.
  • Show answers. Show the correct answers to the questions during feedback.
  • Store quiz results. Store the results of the quiz for analysis and monitoring student progress (grading).
  • Use peer review system. If this option is checked, students will be able to grade other students' work once they have submitted their own. This only makes sense with short answer and fill in the blank style questions.
  • Solicit additional questions from students. After the student complete the quiz, ask him to propose more questions.
    • YES! This is BRILLIANT! My sharpest students ask the best question! Their questions are the ones that get the student's attention because they are coming from the students... this does beg the question of supporting the option of displaying the name of the creator of the question
  • Link to new forum named: Chapter 01 Quiz — Students who have completed the Quiz automatically get permission to enter a forum dedicated to the quiz. If there is not a forum with the specified name in your Tiki, it will be created with the appropriate permissions. If the forum with this name already exists, you will get a warning when you hit the save button. This is to facilitate feedback to the teacher and to encourage interaction among the students.
  • Edit: Type of paste the questions here. The textarea can accept multiple-choice questions formatted as shown. I'm thinking about want other types of input to accept. Possibilities include: preamble, fill in the blank questions, matching questions, audio (via a plugin), formulas (via a plugin).
  • Preview: Pops open another widow where the teacher can see what the test will look like and how it will behave.
  • Save and cancel edit: Just what they say.

About the data:

The questions for this quiz came from a teacher via DennisDaniels.
I set up the quiz in a fashion appropriate for a relatively unstructured class.

About the XML:

I think the XML will end up looking something like:

<!-- Tiki quiz --> <quiz name="Chapter 01" description="Quiz on Chapter 1 of Tom Sawyer"...> <question type="multiple-choice"> <prompt>"Who took care of Tom?"</prompt> <choice>"Huck\'s Dad"</choice> <choice correct=1>"Aunt Polly"</choice> <choice>"Ms. Douglas"</choice> <choice>"Window Nance"</choice> </question> . . . </quiz>

The XML is important because it will allow clients other than web severs to administer test developed in Tiki in the future. It also provides a convenient mechanism to unambiguously represent the data for a quiz.


admininstrator's quiz view

Edit the questions in the original text format would be ideal.


mass deletion


categories and edit for all levels of question and quiz administration


quiz admin

Sorting by name and category are critical.

Page last modified on Tuesday 13 July 2004 01:48:41 GMT-0000