rstudio / learnr

Interactive Tutorials with R Markdown
https://pkgs.rstudio.com/learnr
Apache License 2.0
712 stars 239 forks source link

Include optional subsections (or dynamically skip subsections) #359

Open garrettgman opened 4 years ago

garrettgman commented 4 years ago

Can we arrange for a set of sub-sections to be skipped or included based on whether or not the student answers an exercise (or exercises) correctly?

This may be a difficult ask because learnr documents are prerendered before a student submits exercise code. However, implementing the feature will allow us to:

  1. Create tutorials that dynamically adapt to a student's needs by digging deeper into areas where the student is having trouble and skimming over areas that the student has already mastered. In short, the feature will make learnr a more effective learning tool.

  2. Create quizzes that quickly zero in on the student's skill level. The learnr document itself could be used as a quiz that uses an algorithm similar to binary search to quickly assess the student's skill level. This practice is common and is implemented, for example, in the GRE.

Both cases would likely require #358 to automate inclusion/exclusion based on student performance.

profandyfield commented 4 years ago

I support this request, but would also be happy with a less complex version:

  1. Simply the ability to have optional material (so, hidden unless you click something ... like code folding but for a subsection of the tutorial)
  2. Accordian style sections allowing you to dig deeper into a topic (optionally)

Either of these would be really handy for producing materials with differerntiated learning in mind. So, there's a set of core material but optional deep-dives for students who want to push themselves. This is hard to achieve at the moment.