Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve completion criteria for content #18

Closed
rtibbles opened this issue Apr 7, 2021 · 3 comments
Closed

Improve completion criteria for content #18

rtibbles opened this issue Apr 7, 2021 · 3 comments
Labels

Comments

@rtibbles
Copy link
Member

rtibbles commented Apr 7, 2021

Outcomes

  • In Studio, users should be able to set custom resource duration.
  • Studio should automatically set this to a default value for video and audio files on upload
  • Ricecooker should also allow setting this resource duration, and ricecooker uploaded video and audio files should also have their duration explicitly set
  • In Kolibri, user progress should be logged as 100% when it reaches that duration.
  • New default completion criteria for different content types:
    • PDF/EPub/Slideshow - All pages/slides visited, but can flag to check duration instead
  • Allowing for user flagging of completion as sufficient for 100% progress recording
  • Resolve extant issues around progress updating code
@indirectlylit
Copy link

indirectlylit commented Apr 9, 2021

General UX questions

  1. How will we communicate completion criteria to coaches and learners?
  2. Which aspects of completion criteria can be customized by coaches in the context of lessons?
  3. Do we really want raw times to be entered, or should we instead provide abstractions which might map to times as an implementation detail?

Some of these are elaborated on in-context below.

Terminology and existing behaviors

This isn't quite "custom resource duration". More like "custom time needed for completion".

Some details:

  • Many resources use "learner time spent" as a completion percentage, where the time spent is compared to some time needed for completion:
    • For audio and video this time needed for completion is simply the length of the file. (Note that repeatedly watching the same portion of a longer video will eventually mark it as "complete".)
    • For other resources, the time needed for completion is calculated dynamically, e.g. by multiplying some number of seconds times the number of pages in a PDF or words in an e-book. The multiplying factor is currently fixed on a per-resource-type basis.
  • Other resources (exercises, SCORM) do not use "learner time spent" as the completion criterion at all.

Specific questions

In Studio, users should be able to set custom resource duration

  • Should users specify the time needed for completion directly, the multiplying factor (e.g. "minutes per page"), or some more abstract measure ("slideshow", "book", etc)? Making the selection more abstract might users choose reasonably time-frames.
  • Shouldn't we allow this to be overridden in the Learning Platform because time for completion is contextual to the lesson in which a resource is used, not absolute? (Granted that setting in Studio is a good first step.)

Studio should automatically set this to a default value for video and audio files on upload ... ricecooker uploaded video and audio files should also have their duration explicitly set

  • Why would we set a default value rather than continuing to use the built-in default behavior of the Learning Platform?
  • Does this mean we need to back-fill all previously-published resources with default values?

Allowing for user flagging of completion as sufficient for 100% progress recording

Would it make more sense for this to be set in coach lesson management than in Studio? (or possibly both)

Resolve extant issues around progress updating code

Needs references and clarification

@rtibbles
Copy link
Member Author

rtibbles commented Apr 9, 2021

How will we communicate completion criteria to coaches and learners?

No change as yet, consistent with existing behaviour. Additional work in #8 will start to display the resource duration information.

Which aspects of completion criteria can be customized by coaches in the context of lessons?

None - but this could be in scope in future work.

Do we really want raw times to be entered, or should we instead provide abstractions which might map to times as an implementation detail?

I don't think we have a good basis for these abstractions and would then require us to explain further. However, I think just asking for a whole number of minutes is probably the best medium.

@rtibbles
Copy link
Member Author

rtibbles commented Apr 9, 2021

This isn't quite "custom resource duration". More like "custom time needed for completion".

We are making this do double duty, as both the time displayed to the user for how long something should take, and also for estimating completion absent other measures.

Should users specify the time needed for completion directly, the multiplying factor (e.g. "minutes per page"), or some more abstract measure ("slideshow", "book", etc)? Making the selection more abstract might users choose reasonably time-frames.

Yes, directly. A whole number of minutes, any more finegrained and it is meaningless precision. Alternatively we could use some sort of expanding interval set: 1, 2, 3, 5, 10, 15, 30, 60 minutes.

Shouldn't we allow this to be overridden in the Learning Platform because time for completion is contextual to the lesson in which a resource is used, not absolute? (Granted that setting in Studio is a good first step.)

A good idea, but out of scope for this.

Why would we set a default value rather than continuing to use the built-in default behavior of the Learning Platform?

Because we want to additionally display this as metadata to learners to help them select appropriate materials.

Does this mean we need to back-fill all previously-published resources with default values?

Yes, eventually, although we should keep the fallback behaviour for now - see above for why setting these values is helpful.

Would it make more sense for this to be set in coach lesson management than in Studio? (or possibly both)

Both is definitely desirable, but the former is out of scope for now.

Needs references and clarification

See learningequality/kolibri#2355 and learningequality/kolibri-design-system#214 (for the latter, the timeSpent prop definition would allow us to stop making direct references to vuex state inside the renderers, which should be unaware of this).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants