-
Notifications
You must be signed in to change notification settings - Fork 7
Best Practices: Accessibility, Diversity, Cheating Prevention
Yes, the standard characters in a crypto scenario are Alice, Bob, and Carol (A, B, C) along with malicious Mallory, eavesdropper Eve, etc. But unless you're doing a crypto problem and feel bound to stick to those characters, consider using characters whose names reflect a more diverse population. Some sources:
- A list of gender-neutral names
- The Fake Name Generator lets you select a nationality/ethnicity and generates fake names accordingly
- Extensive list of African-American names from the author-facing Wikibooks site
- If you need to generate names that were popular within a certain time period, try Social Security Administration Baby Names By Year site (e.g. if your question scenario is about a 60-year-old female, Donna or Janet would be popular names for that generation).
A basic rule is: don't embed style hints into HTML markup in question.html
. For example, avoid things like <p style="size: 11pt;">
or <div bgcolor="yellow">
. PrairieLearn uses Bootstrap, which already has a lot of symbolic class
names to support semantic markup and does a decent job with baseline accessibility. Rather than applying visual tweaks, study the Bootstrap documentation and figure out which class(es) are appropriate to highlight the semantics of an element you want to represent.
Watch this space for further required practices on making question generators accessible.
In the 2018 paper How Much Randomization is Needed to Deter Collaborative Cheating on Asynchronous Exams?, the PrairieLearn authors studied collaborative cheating, in which a cheater tries to get information about the exam from a student who has already taken the exam. The authors found as follows:
- An exam should consist mostly of variant-rich questions (vs. fixed questions with no variation)
- Each exam question "slot" should randomly draw from a pool of three or four possible "equivalent" questions for that slot
In these cases, cheaters were unable to score more than 2-3% higher than the students they were trying to cheat off of. Note: in their studies, students take exams in a proctored classroom, not remotely.
Watch this space for info on enhancing PrairieLearn with cheating-detection mechanisms such as UI event timing hooks and Nick Weaver's "cheat trap" detection.