Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

What is “In-context discussions” (v1.7)?

Milestone v1.7 primarily consists of two improvements: Discussions sidebar and New discussions topic structure.

Discussions sidebar

Users will be able to see and interact with discussions corresponding to a course Unit, along side the Unit in a collapsable side-bar, when they navigate to that course Unit.

This setup assumes a 1:1 mapping between course Units and discussion topics, something that the legacy experience does not enforce. Therefore, a new discussions topic structure is introduced (details below).

...

New discussions topic structure

In legacy discussions experience, course authors can create course-wide discussion topics (details) and content-specific discussion topics (details). Content-specific discussion topics are created using discussion Xblocks (details). A 2 level hierarchy of these discussions Xblocks is created using the Category and Subcategory property of the discussion topic.

To satisfy the need for 1:1 mapping between course Units and content-specific discussion topics, we have introduced a new topic structure in which:

  • Each course Unit has AT MOST 1 content-specific discussion topic associated with it.

  • Each content-specific discussion topic has EXACTLY 1 course Unit associated with it.

Course teams will have the option to skip discussion topics for graded units.

Rollout decisions

Table of Contents
Info

Please refer to this document to understand what “in-context discussions” is and its features.

In-context discussions is configured as a separate provider called OPEN_EDX. The current topic structure is configured as LEGACY provider.

What will the rollout look like?

We only plan to rollout in-context discussions for new courses and re-runs only. If a course team wants to use in-context discussions for a running course, they’ll have to create a re-run of that course.

New courses:

...

While discussions.enable_new_structure_discussions is enabled, default provider for all new courses will

...

be OPEN_EDX.

...

Once the course or a unit is published, “the script” will run and create discussion topics.

Course re-runs:

...

New course runs:

  1. While discussions.enable_new_structure_discussions is enabled, default provider for all new course runs will be OPEN_EDX.

  2. Once re-run has been created, “the script” the mechanism for new topic structure will run and create discussion topics, with following rules:

    1. For unit without a an existing discussion xblock, a new discussion topic will NOT be created and linked with the course unitduring migration.

    2. For a unit having EXACTLY ONE at least 1 discussion xblock, topic for that xblock will be linked with the course unit.

    3. For unit having multiple discussion xblocks, topic for the top most xblock when viewed in studio, will be linked with the course unit. Rest of the xblocks in this unit will be ignored.

    A banner will show up in studio saying something like “Hey we’ve migrated discussions over to the new
    1. a new discussion topic will be created. Topic of existing discussion xblock will be ignored.

    2. If a unit lies within a graded subsection (but not “timed exam”), and contains at least 1 discussion xblock, a new discussion topic will be created and “Graded unit” toggle will be automatically turned on for the course.

    3. For a unit within a subsection marked as “timed exam”, new discussion topic will NOT be created even if the unit already has a discussion xblock.

  3. On the UI for creating a new run of a course, following discussions related settings will be provided: A link in course run creation interface will route users to discussions configuration page.

    Image Added
    1. If the first option is selected during course run creation, discussion topics will be created for all units in the course except the ones that are part of graded subsections.

    2. Second option will be active only if the first option is selected. If the second option is selected during course run creation, discussion topics will be created for all units in the course including the ones in graded subsections, except the ones that are part of subsections marked as “timed exam”.

  4. A banner in studio will inform course teams about the new topic structure and xblocks.

    1. For new courses, the banner will say: “This course uses the new discussions topic structure. Learn more about it here. Discussion xblocks are no longer supported.

    2. For new course

    re-
    1. runs

    having ignored xblocks
    1. , the banner will

    additionally
    1. say: “

    Here’s a list of discussions xblocks in the course that did not make it
    1. Hey we’ve migrated discussions over to the new

    discussions hierarchy
    1. topic structure. Learn more

    here.”
    1. How do we show the list on banner? It could be a long list?

    2. Should the banner be time bound or should it disappear upon about it here. Discussion xblocks are no longer supported and will not be visible to learners. Please make the necessary adjustments to the course content.

Running courses:

We do not NOT plan to migrate running courses to avoid complexities associated with discussions threadsthreads in existing xblocks.

Waffle flag:

Enabling discussions.enable_new_structure_discussions flag will initiate the rollout.

Once this flag is enabled, all new courses and new course runs will use OPEN_EDX as default discussions provider.

While the flag is enabled, edX global staff will see two edX discussion providers (OPEN_EDX and LEGACY) in discussions configuration, for all courses, until LEGACY is deprecated.

Once a course using new provider has been started:

  1. If a new unit is published, a new topic will be created be automatically created and linked to that unit.

  2. If the newly published unit contains an xblock, that xblock will be ignored.

...

xblocks in courses using new provider

...

...

xblocks will

...

For xblocks whose topic ID has been linked to course unit, “Show Discussion” button will open the topic in discussions sidebar,

...

For xblocks whose topic ID has NOT been linked to course unit, “Show Discussion” button will be inactive (greyed-out). There will be no way to access that discussion xblock.

...

What happens when an xblock is deleted, whose topic id has been linked to course unit?

...

Can we stop showing option to add xblocks in courses using the new provider?

Graded Units?

...

no longer be visible to learners in live courses using OPEN_EDX as discussion provider.

Rolling back new provider for a course

It is important to note that disabling discussions.enable_new_structure_discussions flag will not “rollback” in-context discussions. Course runs using OPEN_EDX as discussion provider will keep using it even after the flag has been disabled.

In essence, in-context discussions can NOT be rolled back for all courses, at once.

We want the migration to be non-reversible. Therefore, we wont provide a rollback option to course teams.

However, if a course team really wants to use the legacy provider for a new course or re-run, they’ll probably place a request to partner support or project coordinator team. This request should be routed to Infinity team along with the reasons for rolling back.

Infinity team will then switch the provider for that particular course run to LEGACY.

During this rollback, the discussion topics created during migration and settings for the new provider will remain unchanged.

Once the rollback is complete, course team will only see the legacy topic structure (categories and subcategories of xblocks). Course teams will NOT be able to see or access the topics created during migration, nor the threads in those topics.

...

Note

Information below this note is meant for Infinity team and OpenCraft only.

Delta between current implementation and planned

  1. Configure discussions.enable_new_structure_discussions flag such that all new courses and new course run use OPEN_EDX as default discussion provider. In addition, edX global staff will see 2 discussion providers for all courses once this flag is enabled.

  2. Creating a migration workflow for course re-runs.

  3. Discussion settings in course run creation UI and how those discussion settings will be linked to the topic creation mechanism.

  4. xblocks will no longer be visible to learners in live courses using OPEN_EDX as discussion provider.