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.
Figma mockups for 1.7 related configurations: https://www.figma.com/file/SeNpRff5HxzdpCgoD5pmlQ/Apps-and-resources-landing-page?node-id=3786%3A18911
Rollout decisions
Table of Contents |
---|
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:
While
discussions.enable_new_structure_discussions
is enabled, default provider for all new course runs will beOPEN_EDX
.Once re-run has been created, “the script” the mechanism for new topic structure will run and create discussion topics, with following rules:
For unit without an existing discussion xblock, new discussion topic will NOT be created during migration.
For a unit having at least 1 discussion xblock, a new discussion topic will be created. Topic of existing discussion xblock will not be usedignored.
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” “Graded unit” toggle will be automatically turned on for the course.
For a unit within an Exam subsectiona subsection marked as “timed exam”, new discussion topic will not NOT be created even if the unit already has a discussion xblock.
On the UI for creating a new run of a course, following discussions related settings will be provided:
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.
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”.
A banner in studio will inform course teams about the new topic structure and xblocks.
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.”
For new course runs, the banner will say: “Hey we’ve migrated discussions over to the new topic structure. Learn more about it here.
Discussion xblocks are
For units that were not assigned new topics, there is an option in studio to create topics for a unit, as seen below.
...
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 threads in existing discussions threads in xblocksxblocks.
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.
It is important to note that disabling this 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.
Once a course using new provider has been started:
If a new unit is published, a new topic will be created be automatically created and linked to that unit.
If the newly published unit contains an xblock, that xblock will be ignored.
xblocks in courses using new provider
...
All xblocks will appear in collapsed state, as seen below, with inactive “Show Discussion” button.
...
xblocks will no longer be visible to learners in live courses using OPEN_EDX
as discussion provider.
Rolling back new provider for a course
We want the migration to be non-reversible. Therefore, we wont provide a rollback option on the frontendto course teams. However, if a course team really wants to use the legacy provider for a new course or re-run, we want to be able to migrate that particular course manually.
To accomodate this, while the discussions.enable_new_structure_discussions
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 Infinity team gets a request from PS or PC team to switch a course to legacy discussion provider, they will change the discussion provider for that course to legacy.
During this rollback, the discussion topics created during migration and settings for the new provider will remain untouchedunchanged.
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.
When the unit is marked as hidden, the associated topic will not appear in discussions hierarchy. Associated threads will also not show up.
Delta between current implementation and planned
Configure
discussions.enable_new_structure_discussions
flag such that all new courses and new course run useOPEN_EDX
as default discussion provider. In addition, edX global staff will see 2 discussion providers for all courses once this flag is enabled.Creating a migration workflow for course re-runs.
Discussion settings in course run creation UI and how those discussion settings will be linked to the topic creation mechanism.
xblocks will no longer be visible to learners in live courses using
OPEN_EDX
as discussion provider.