Eliminate the need for questions to belong to a book
Currently Questions entered through the question writer are automatically stored under the current base_course, the chapter selected by the user and the subchapter is stored as Exercises.
When an instructor searches for a question the search is also limited to the questions in the current base course.
The question writer currently allows the author to tag the question, but does not give any hints as to how or why. As a result questions are not tagged.
The :topic: option is not currently obviously available. Topic defaults to chapter/subchapter but that isn't terribly useful when the subchapter is Exercises
In order to build a more flexible question bank we would like to remove these restrictions and limitations.
- We would like to encourage better tagging of questions for areas of competency. and/or prerequisite knowledge needed for the question.
- Instructors should be able to search for questions across books.
- Instructors should be able to search for questions that match areas of competency
- If a question is language specific that should be part of the search
- Instructors should be able to submit a suite of questions as an rst file rather than using the interface
- Stretch goal -- questions that come from the book originally should be editable and those edits should magically find their way back to the source for the book.
This issue is for discussion of a redesign to accomplish these goals.
The biggest area IMHO is to provide some guidance / structure for a topic. Otherwise, it becomes something that's easily lost in the database, or difficult to find, or that each author uses a different topic name for each topic. Are topics hierarchical, like chapter/subchapter? Free form? A word, or a phrase, or something else?
OK, but how do we make that happen on a platform where we could have books on every topic from math to economics to CS to electrical engineering?
I don't know -- my limited knowledge of engineering education is a weakness. I'm hoping that Jan/Barb/others have some good ideas. Without a good conceptual foundation, this becomes just another useless tagging system.
We often have a foot in both the tool builder and content creator worlds. This kind of feels like a chicken and egg situation.
Part of me thinks that if we demonstrate the benefits of being able to generate a quiz/exam from a well structured question bank will provide motivation for people to do a good job.
Part of me really hopes that UMich does a nice job of developing the taxonomy, or that we adopt work done by the Canterbury group.
I think when most of us write exams or building “check your understanding” questions we are thinking very carefully about what each question is testing. We just need to make sure there is an efficient way to express that intention that is not free form.
Here is an interesting approach that we steal some or all of from the webwork project. They have a massive question bank for math -- over 35,000 questions! They maintain this on github where each question lives in its own file, and so carries its own history.
Questions can be included in a textbook using a pretext markup tag that simply calls out the question by its identifier. For us, questions could either be inserted dynamically from the database, or inserted directly into the page with an .. include:: directive.
There is a script that updates the database with new versions of each question that is run periodically.
I think there is a lot to like here that could really help build a big question bank AND allow us to better maintain and update questions.
For new instructors I could see having them submit a file to a simple server that builds and previews their question. When they are happy with it we can write out a file and automatically submit a PR to our github repo.
More advanced instructors could make PRs to the repo directly.
Authors could still select individual questions. But would also leave open for us the ability to show contributed questions in a much more structured way by ensuring that we are selecting questions at the appropriate level for a particular course.
I like it! This is a great idea.