Parley Practice NG 23rd attempt

Work on the parley practice happens in a branch here: Browse WebSVN online

Check it out: svn co svn://anonsvn.kde.org/home/kde/branches/work/parley-practice/


  • DONE: remove old practice code F
  • TODO: does Paraphrase make any sense at all? no - remove paraphrase - it is not used in any single document we could find
  • TODO: remove Antonym completely
  • TODO: find an icon for stop practice (toolbar)
    • idea: use the start practice with media-stop instead of media-play
  • DISCUSS: timeouts during practice ???


  • TODO: get rid of current way of handling them in the lib? BIC!!!???!!!
  • TODO: use a stringlist instead
  • TODO: make it possible to edit them in the table - how to separate two of them? semicolon?
  • TODO: change/rewrite dock widget
  • DISCUSS: practice options (is this really really needed?):
    • accept any synonym as correct
    • ask to enter all synonyms
    • ask until the exact word that is wanted is there, but don't count other synonyms as wrong on the way there

Configure Practice

  • Currently check boxes and radio buttons are shown ->remove radios F
  • is it OK to have options across all types of practice on the same page?
    • rather use advanced page, clean that up
    • select tenses by default?? otherwise this needs some way to be set up easier
    • clean up advanced options
    • TODO: move multiple choice options to advanced
    • TODO: move checkboxes in Practice->Options to Advanced page in config dialog
    • Tenses - where should they be selected? only needed for conjugation practice
  • TODO: language selection: instead of having two lists, just have one list containing "French → German" and "German → French"
  • TODO: threshold: word types are broken here?

The layout could be like this:

Parley practice settings.png

it would be nice to replace the checkboxes by listviews with multi selection and icons (and optionally drag and drop to change the order)

Parley practice settings advanced.png

Notes Advanced page:

  • Remove direction switching checkbox until implemented
  • Time limits: only let the user select if the time limit is active, use show solution after answering
  • enable button xyz: not applicable any more, only the hint button

Completely Missing

Still missing are:

  • Conjugations
  • Vocabulary test (school like) with good summary and "grade"
    • no button for hints
    • add buttons to "go back and forth"
    • don't show if the answer was right

Easy ones reusing the written front end should be:

  • Comparative forms, articles
  • Example sentences

Flash Card

  • Radio buttons make little sense here - I'd rather have 2-3 buttons - I knew it well, not good, not at all (?)

Multiple Choice

  • Unset the selected choice after an answer (radio button)
  • Showing the "I knew it"/"Did not know it" below the other radios looks bad
  • Make number of multiple choice answers configurable in the config practice dialog


  • Hint needs to be implemented in a sane way (now it shows the solution directly) - done (Frederik)
  • Feedback - when a new word is shown, it still says "Your answer was wrong" - done (Frederik)
  • Ignore accent / capitzalisation mistakes is not implemented currently
  • make sure that "I did (not) know it" actually does the right thing
  • I think I just had an empty word shown - make sure they are filtered away

All Practice Modes

  • Grading - how do we give grades, how do words advance? Especially when combining modes (doing FlashCard, MC and Written all in one go)
  • every word that was answered correctly is shown as "right on first attempt" in summary - no way to get anything wrong :D maybe change that...
  • feedback text: not "wrong idiot", not "I fear this was wrong.." but good sentences
  • set grade to 1 when a word was answered incorrectly


Grades are equivalent to boxes (leitner), they are:

  • 0 not practiced
  • 1 lowest level
  • ...
  • 7 best level

Words can be answered correctly or wrong.

  • a correct answer gives grade += 1
  • a wrong answer gives grade = 1 (reset to lowest level)
  • a word that has been answered correctly is not asked again
  • words that were incorrectly answered will come up again until they are answered correctly (or the practice is stopped)
  • when a word is answered after being answered wrong before, it ends up on level 2, if the practice is stopped before, it stays in level 1

When answering in written mode, the user gets a chance to correct herself if the first answer was not right. She can edit the answer immediately after pressing enter again. If no changes were made, we assume the user doesn't know the answer and show the "wrong answer, continue" state. If on the other hand the answer is changed into the right answer, we still count it as wrong. The feedback text reads something like "Your answer was right, but you needed more than one attempt to get there.".

A word is wrong when

  • the user enters anything but the right answer in the first attempt (first pressing enter is all that counts)
  • hint means it's wrong (may change policy here later if it doesn't work out)
  • accent and capitalisation might be accepted as right if the option is chosen in the config

Summary Page (after practice is finished)

  • One page only
  • Bar on top with colors that indicate how good the practice was
  • Table below (sorted, most mistakes on top)

General (not practice related)

  • New rows are appended when pressing enter in the row above the last one, not in the last one - Qt 4.6 regression?
  • changes in dock widgets are not reflected in table -> model needs to emit dataChanged for the view to update (not working since the editing happens without models knowledge)
  • table: add column for grades (including combo box for changing the grade)
  • summary dock widget: remove word type or make it work
  • remove leitner box classes

Profiles and config and zip

  • Instead of using current kvtml files, use the same with compression
  • add images, sound and other media into the zip file

This page was last edited on 22 April 2016, at 18:02. Content is available under Creative Commons License SA 4.0 unless otherwise noted.