|
9 | 9 | "\n",
|
10 | 10 | "## Timescales & Ordering\n",
|
11 | 11 | "\n",
|
12 |
| - "- **12 weeks before launch** \n", |
13 |
| - " - Hold initial logistics call with Programme Management to define learning objectives, course scope, and high-level timeline \n", |
14 |
| - " - Confirm roles (Developer, Lead, Helper) and schedule regular check-ins \n", |
| 12 | + "### **12 weeks before delivery** \n", |
| 13 | + " - Hold initial logistics call with Programme Management to define learning objectives, course scope, and high-level timeline\n", |
| 14 | + " - Confirm roles (Developer, Lead, Helper) and schedule regular check-ins\n", |
| 15 | + " - Create a feature branch on the [CfRR_Courses repo](https://github.com/coding-for-reproducible-research/CfRR_Courses), alongside a GitHub Issue \n", |
| 16 | + " - Developer begins drafting core materials \n", |
| 17 | + "\n", |
| 18 | + "#### Checklist Steps \n", |
| 19 | + "- [ ] Schedule and hold **initial logistics call** with Programme Management and Delivery Team \n", |
| 20 | + "- [ ] Define roles: Developer, Leader, Helper, Participant, Programme Management, and schedule a recurring meeting \n", |
| 21 | + "- [ ] Open GitHub Issue for the new course; create feature branch \n", |
| 22 | + "- [ ] Draft **course objectives** and detailed **learning objectives** for each section of the course\n", |
15 | 23 | "\n",
|
16 |
| - "- **10 weeks before launch** \n", |
17 |
| - " - Developer begins drafting core materials (notebooks, slides, datasets, etc.) \n", |
18 |
| - " - Create a feature branch on the [CfRR_Courses repo](https://github.com/coding-for-reproducible-research/CfRR_Courses) \n", |
19 | 24 | "\n",
|
20 |
| - "- **5 weeks before launch** \n", |
21 |
| - " - Submit the first complete draft of materials for internal review \n", |
| 25 | + "### **6 weeks before delivery** \n", |
| 26 | + " - Submit the first complete draft of materials for internal review. Liam Berrisford (@liamjberrisford) to validate website functionality (including accessibility features), then a separate reviewer to verify that the course content itself is accurate and appropriate.\n", |
22 | 27 | " - Draft metadata in `programme_information` and `section_landing_page` (titles, descriptions, prerequisites) \n",
|
23 | 28 | " - Create the “Where Is My Understanding?” quiz; confirm the quiz `JSON` files render via `JupyterQuiz`\n",
|
24 |
| - " - Conduct accessibility review (alt text, colour contrast, headings, tables) \n", |
25 | 29 | "\n",
|
26 |
| - "- **4 weeks before launch** \n", |
27 |
| - " - Integrate content into `JupyterBook`; perform a dry-run build on staging \n", |
28 |
| - " - Link all assets (images, data files, interactive widgets) \n", |
29 |
| - " - Add course pages to `_toc.yml` \n", |
30 |
| - " - If non-Python kernels are used, add them to the non-run list in `_config.yml` \n", |
31 |
| - "\n", |
32 |
| - "- **1 week before launch** \n", |
33 |
| - " - Freeze content; perform final proofreading and complete “top-to-bottom” code execution \n", |
34 |
| - " - Hold sign-off meeting with Programme Management \n", |
35 |
| - " - Merge the feature branch and add the new course to the live website \n", |
36 | 30 | "\n",
|
37 |
| - "- **Post-launch (within 1 week)** \n", |
38 |
| - " - Collect initial learner feedback via online form; log any issues as GitHub issues \n", |
39 |
| - " - Plan the first update cycle based on participant feedback \n", |
40 |
| - "\n", |
41 |
| - "## Checklist\n", |
42 |
| - "\n", |
43 |
| - "### Logistics & Planning\n", |
44 |
| - "- [ ] Schedule and hold **initial logistics call** with Programme Management and Delivery Team \n", |
45 |
| - "- [ ] Define roles: Developer, Leader, Helper, Participant, Programme Management \n", |
46 |
| - "- [ ] Open GitHub Issue for the new course; create feature branch \n", |
47 |
| - "\n", |
48 |
| - "### Content Creation & Structure\n", |
49 |
| - "- [ ] Draft **course objectives** and detailed **learning objectives** for each section of the course\n", |
50 |
| - "- [ ] Develop Jupyter notebooks (`.ipynb`) for Python or learnr tutorials (`.Rmd`) for R. Other types of course should be discussed with the central CfRR team\n", |
51 |
| - "- [ ] Include slides or PDFs as needed; confirm static content links \n", |
52 |
| - "\n", |
53 |
| - "### Metadata & Site Integration\n", |
| 31 | + "#### Checklist Steps\n", |
54 | 32 | "- [ ] Populate `programme_information` \n",
|
55 | 33 | "- [ ] Populate `section_landing_page`\n",
|
56 | 34 | "- [ ] Populate `where_is_my_understanding`\n",
|
57 |
| - "- [ ] Ensure no overlap or missing sections \n", |
58 |
| - "\n", |
59 |
| - "### Rendering & Functionality\n", |
60 |
| - "- [ ] Build with Jupyter Book on the PR; confirm notebooks render without errors \n", |
| 35 | + "- [ ] Add course pages to `_toc.yml` \n", |
| 36 | + "- [ ] Ensure no overlap or missing sections \n", |
61 | 37 | "- [ ] Test interactive plots, embedded HTML, and widgets \n",
|
62 | 38 | "- [ ] Validate “Where Is My Understanding?” quiz (`display_quiz(\"path/to/quiz.json\")`) \n",
|
63 |
| - "\n", |
64 |
| - "### Asset Linking & URL Encoding\n", |
65 | 39 | "- [ ] Verify all file paths (spaces, special characters) are realtive paths as used in JupyterBook\n",
|
66 | 40 | "- [ ] Confirm images, data files, and HTML assets load correctly \n",
|
67 |
| - "\n", |
68 |
| - "### Accessibility & Style\n", |
69 |
| - "- [ ] Use descriptive headings (H1–H3) and labels \n", |
70 |
| - "- [ ] Provide concise alt text for all images \n", |
71 |
| - "- [ ] Check colour contrast with a Contrast Checker \n", |
72 |
| - "- [ ] Avoid conveying information by colour alone; add text indicators, change shapes of points etc \n", |
73 |
| - "- [ ] Use clear, simple language and accessible tables \n", |
74 |
| - "\n", |
75 |
| - "### Testing & QA\n", |
| 41 | + "- [ ] Include slides or PDFs as needed; confirm static content links \n", |
76 | 42 | "- [ ] Execute all notebooks end-to-end \n",
|
77 | 43 | "- [ ] Peer-review code comments and markdown explanations \n",
|
78 |
| - "- [ ] Conduct cross-browser and device checks \n", |
79 |
| - "\n", |
80 |
| - "\n", |
81 |
| - "## Highlighting Issues\n", |
82 | 44 | "\n",
|
83 |
| - "Auditing materials refreshes your understanding and helps improve accuracy. Types of issues include: \n", |
84 |
| - "- Typographical errors \n", |
85 |
| - "- Factual errors \n", |
86 |
| - "- Content clarity and comprehension \n", |
87 |
| - "- Formatting and layout issues \n", |
88 |
| - "- Technical errors (broken links, non-functional elements) \n", |
89 |
| - "- Cultural and bias concerns \n", |
90 |
| - "- Outdated content \n", |
91 |
| - "- Logical fallacies or reasoning errors \n", |
92 | 45 | "\n",
|
93 |
| - "## Ensuring Understanding\n", |
94 |
| - "- **Multiple-Choice Questions** via JupyterQuiz (`display_quiz(\"path/to/quiz.json\")`) \n", |
95 |
| - "- **Coding Exercises** with clear instructions, hints, and dropdown solutions (use Jupyter Book admonitions) \n", |
96 |
| - "\n", |
97 |
| - "## Language-Specific Standards\n", |
| 46 | + "### **4 weeks before delivery** \n", |
| 47 | + " - Confirm that all feedback and change requests from the internal review have been addressed\n", |
| 48 | + " - Link all assets (images, data files, interactive widgets) \n", |
98 | 49 | "\n",
|
99 |
| - "### Python\n", |
100 |
| - "- Use Jupyter notebooks (`.ipynb`) with well-commented code and markdown \n", |
101 |
| - "- Include visualizations, interactive elements, and test notebooks end-to-end \n", |
| 50 | + "#### Checklist Steps\n", |
| 51 | + "- [ ] Confirm there is no outstanding feedback to be actioned from the internal review \n", |
| 52 | + "- [ ] Ensure that the Continuous Integration (CI) in the PR for building the Jupyter Book (website) and Accessibility passes\n", |
102 | 53 | "\n",
|
103 |
| - "### R\n", |
104 |
| - "- Use learnr tutorials (`.Rmd`) distributed via the `cfrr-r-tutorials` repo \n", |
105 |
| - "- Define prerequisites, embed interactive exercises/quizzes, and self-contain data and instructions \n", |
106 | 54 | "\n",
|
| 55 | + "### **2 week before delivery** \n", |
| 56 | + " - Freeze content; perform final proofreading and complete “top-to-bottom” code execution \n", |
| 57 | + " - Please notify Liam Berrisford (@liamjberrisford) that the content is ready for integration into the website and request his final review prior to publication.\n", |
| 58 | + " - Merge the feature branch and add the new course to the live website\n", |
107 | 59 | "\n",
|
108 |
| - " \n" |
| 60 | + "#### Checklist Steps\n", |
| 61 | + "- [ ] Perform a final proofreading pass; execute a full “top-to-bottom” run of all notebooks \n", |
| 62 | + "- [ ] Notify Liam Berrisford (@liamjberrisford) that materials are ready for integration and request his final sign-off \n", |
| 63 | + "- [ ] Once approved, merge the feature branch into main and deploy the new course to the live website " |
109 | 64 | ]
|
110 | 65 | },
|
111 | 66 | {
|
|
0 commit comments