Skip to content

Lesson Porting

Description / Purpose

This process is for when we have a lesson that already exists in a certain language, say Python, and we want to create a new version of that lesson in a different language, say JavaScript. In this case, we want to change as little about the lesson as possible but update all of the code blocks and workspaces to the new language.

The complexity of this task can vary, both in the size of the lesson, and the amount of changes that need to be made. To account for this variety, there are two versions of this process given in the Milestones/Deliverables for Production section with the same steps but different durations.

Lesson Porting Processes

Step 1: Create Porting Guide and Export the Narratives of the Existing lesson

This stage should be done by the Curriculum Developer overseeing the project that involves lesson porting. They should create a short document describing the desired outcome of the port and outlining how much should be changed.

In addition to this, work with Curriculum Enablement to get a full markdown export of the existing narratives and checkpoints into a google document. This will allow the Content Associate doing the port to make edits and have them reviewed in a safe and easy way.

Step 2: Make Narrative Edits

All edits are made to the narratives in the google document.

Step 3: New Workspaces

All old workspaces are scrapped and replaced with workspaces of the new language type.

Needs Review: Narratives and new workspaces

Step 4: New Lesson in Author

The work of the previous 2 steps are added to the new lesson in Author along with any necessary revisions.

Step 5: New Tests

Because the workspace is in a new language, the lesson now also needs a new series of tests. Write these now.

Needs Review: Lesson in Author with tests

Step 6: Final Revisions

All revisions required during the last round of review are implemented and the new lesson is ready to go live to learners.

Milestones/Deliverables for Production

Deliverable Description Duration (short port) Duration (long port)
Narrative Edits + New Workspaces The narrative is edited where appropriate and new workspaces are made for the new language. 3 days production + 1 day review 7 days production + 1 day review
Content in Author + Tests The new lesson is created in author and tests are written for it. 3 days production + 1 day review 4 days production + 1 day review
Final Revisions Any necessary revisions are made and the content is ready to go live to learners 2 days production 2 days production

Example Timeline

The following diagrams shows the deliverables to port a lesson into a new language in a day by day gantt-like chart. There are two versions, both with the same deliverables but different durations. Use the appropriate version based on the length of the lesson being ported and the complexity of the changes that need to be made.

Light green days are dedicated to production, darker green days are when deliverables are due, and yellow days are when the content is being reviewed.

A diagram of the article production process.