chore(curriculum): update v9 content (#63650)

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
This commit is contained in:
Tom
2025-11-10 11:24:50 -06:00
committed by GitHub
parent 13ec0d5a90
commit 14dd3c6b27
7 changed files with 62 additions and 13 deletions
+51
View File
@@ -5198,6 +5198,12 @@
"In this lecture you will learn how to format strings by changing their case using <code>toUpperCase()</code> and <code>toLowerCase()</code> methods, and how to remove whitespace using <code>trim()</code>, <code>trimStart()</code>, and <code>trimEnd()</code> methods."
]
},
"workshop-string-formatter": {
"title": "Build a String Formatter",
"intro": [
"In this workshop, you will practice working with various string methods including <code>trim()</code>, <code>toUpperCase()</code> and <code>toLowerCase()</code>."
]
},
"lecture-working-with-string-modification-methods": {
"title": "Working with String Modification Methods",
"intro": [
@@ -5227,12 +5233,26 @@
"In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings."
]
},
"lab-debug-type-coercion-errors": {
"title": "Debug Type Coercion Errors in a Buggy App",
"intro": [
"In this lab, you will be working with a buggy app that contains several type coercion errors.",
"Your task is to identify and fix these errors to ensure the app functions correctly."
]
},
"lecture-working-with-operator-behavior": {
"title": "Working with Operator Behavior",
"intro": [
"In these lectures you will learn about operator precedence, the increment and decrement operators, and compound assignment operators."
]
},
"lab-debug-increment-and-decrement-operator-errors": {
"title": "Debug Increment and Decrement Operator Errors in a Buggy App",
"intro": [
"In this lab, you'll debug an app that has several errors related to the increment and decrement operators.",
"Your task is to identify and fix the errors so that the app works as intended."
]
},
"lecture-working-with-comparison-and-boolean-operators": {
"title": "Working with Comparison and Boolean Operators",
"intro": [
@@ -6283,6 +6303,8 @@
"modules": {
"react-fundamentals": "React Fundamentals",
"react-state-hooks-and-routing": "React State, Hooks, and Routing",
"lab-currency-converter": "Build a Currency Converter",
"lab-tic-tac-toe": "Build a Tic-Tac-Toe Game",
"performance": "Performance",
"testing": "Testing",
"css-libraries-and-frameworks": "CSS Libraries and Frameworks",
@@ -6626,11 +6648,16 @@
"python-basics": "Python Basics",
"python-loops-and-sequences": "Loops and Sequences",
"python-dictionaries-and-sets": "Dictionaries and Sets",
"lab-user-configuration-manager": "Build a User Configuration Manager",
"python-error-handling": "Error Handling",
"python-classes-and-objects": "Classes and Objects",
"lab-budget-app": "Build a Budget App",
"python-object-oriented-programming": "Object-Oriented Programming (OOP)",
"lab-polygon-area-calculator": "Build a Polygon Area Calculator",
"python-linear-data-structures": "Linear Data Structures",
"lab-hash-table": "Build a Hash Table",
"python-algorithms": "Algorithms",
"lab-tower-of-hanoi": "Implement the Tower of Hanoi Algorithm",
"python-graphs-and-trees": "Graphs and Trees",
"python-dynamic-programming": "Dynamic Programming",
"review-python": "Python Review",
@@ -6879,6 +6906,12 @@
"title": "Understanding Abstraction",
"intro": ["Learn about Understanding Abstraction in these lessons."]
},
"workshop-discount-calculator": {
"title": "Build a Discount Calculator",
"intro": [
"In this workshop you will build a flexible discount pricing calculator through abstract base classes, allowing multiple discount algorithms to be applied interchangeably without modifying the core logic."
]
},
"lab-player-interface": {
"title": "Build a Player Interface",
"intro": [
@@ -6998,6 +7031,12 @@
"In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science."
]
},
"workshop-shortest-path-algorithm": {
"title": "Implement the Shortest Path Algorithm",
"intro": [
"In this workshop you will implement an algorithm to find the shortest path between two nodes in a graph."
]
},
"lab-adjacency-list-to-matrix-converter": {
"title": "Build an Adjacency List to Matrix Converter",
"intro": [
@@ -7686,6 +7725,12 @@
"In these lectures, you will learn about HTML fundamentals like the <code>div</code> element, the <code>id</code> and <code>class</code> attributes, the HTML boilerplate, HTML entities, and more."
]
},
"workshop-bookstore-page": {
"title": "Build a Bookstore Page",
"intro": [
"In this workshop, you will practice working with classes, ids and the <code>div</code> element by building a bookstore page."
]
},
"lecture-understanding-how-html-affects-seo": {
"title": "Understanding How HTML Affects SEO",
"intro": [
@@ -7772,6 +7817,12 @@
"In these lectures, you will learn when you should use certain semantic elements like the <code>em</code> element over the <code>i</code> element, description lists, and more."
]
},
"workshop-major-browsers-list": {
"title": "Build a List of Major Web Browsers",
"intro": [
"In this workshop, you will build a description list and work with the <code>dl</code>, <code>dt</code>, and <code>dd</code> elements."
]
},
"lecture-working-with-text-and-time-semantic-elements": {
"title": "Working with Text and Time Semantic Elements ",
"intro": [
@@ -60,6 +60,7 @@
"comingSoon": true,
"modules": [
{
"comingSoon": true,
"dashedName": "back-end-development-and-apis-certification-exam",
"blocks": ["exam-back-end-development-and-apis-certification"]
}
@@ -107,6 +107,7 @@
"comingSoon": true,
"modules": [
{
"comingSoon": true,
"dashedName": "front-end-development-libraries-certification-exam",
"blocks": ["exam-front-end-development-libraries-certification"]
}
@@ -21,6 +21,7 @@
"lecture-working-with-string-search-and-slice-methods",
"workshop-string-inspector",
"lecture-working-with-string-formatting-methods",
"workshop-string-formatter",
"lecture-working-with-string-modification-methods",
"workshop-string-transformer",
"review-javascript-strings",
@@ -31,7 +32,9 @@
"dashedName": "javascript-booleans-and-numbers",
"blocks": [
"lecture-working-with-numbers-and-arithmetic-operators",
"lab-debug-type-coercion-errors",
"lecture-working-with-operator-behavior",
"lab-debug-increment-and-decrement-operator-errors",
"lecture-working-with-comparison-and-boolean-operators",
"lecture-working-with-unary-and-bitwise-operators",
"lecture-working-with-conditional-logic-and-math-methods",
@@ -325,7 +328,6 @@
{
"chapterType": "exam",
"dashedName": "javascript-certification-exam",
"comingSoon": true,
"modules": [
{
"dashedName": "javascript-certification-exam",
@@ -5,7 +5,6 @@
"modules": [
{
"dashedName": "python-basics",
"comingSoon": false,
"blocks": [
"lecture-introduction-to-python",
"workshop-caesar-cipher",
@@ -16,7 +15,6 @@
},
{
"dashedName": "python-loops-and-sequences",
"comingSoon": false,
"blocks": [
"lecture-working-with-loops-and-sequences",
"workshop-pin-extractor",
@@ -27,7 +25,6 @@
},
{
"dashedName": "python-dictionaries-and-sets",
"comingSoon": false,
"blocks": [
"lecture-working-with-dictionaries-and-sets",
"lecture-working-with-modules",
@@ -43,7 +40,6 @@
},
{
"dashedName": "python-error-handling",
"comingSoon": false,
"blocks": [
"lecture-understanding-error-handling",
"lab-isbn-validator",
@@ -53,7 +49,6 @@
},
{
"dashedName": "python-classes-and-objects",
"comingSoon": true,
"blocks": [
"lecture-classes-and-objects",
"workshop-musical-instrument-inventory",
@@ -70,7 +65,6 @@
},
{
"dashedName": "python-object-oriented-programming",
"comingSoon": true,
"blocks": [
"lecture-understanding-object-oriented-programming-and-encapsulation",
"workshop-salary-tracker",
@@ -78,6 +72,7 @@
"lecture-understanding-inheritance-and-polymorphism",
"workshop-media-catalogue",
"lecture-understanding-abstraction",
"workshop-discount-calculator",
"lab-player-interface",
"review-object-oriented-programming",
"quiz-object-oriented-programming"
@@ -90,7 +85,6 @@
},
{
"dashedName": "python-linear-data-structures",
"comingSoon": true,
"blocks": [
"lecture-working-with-common-data-structures",
"workshop-linked-list-class",
@@ -105,7 +99,6 @@
},
{
"dashedName": "python-algorithms",
"comingSoon": true,
"blocks": [
"lecture-searching-and-sorting-algorithms",
"workshop-binary-search",
@@ -125,9 +118,9 @@
},
{
"dashedName": "python-graphs-and-trees",
"comingSoon": true,
"blocks": [
"lecture-understanding-graphs-and-trees",
"workshop-shortest-path-algorithm",
"lab-adjacency-list-to-matrix-converter",
"workshop-breadth-first-search",
"lab-depth-first-search",
@@ -138,7 +131,6 @@
},
{
"dashedName": "python-dynamic-programming",
"comingSoon": true,
"blocks": [
"lecture-understanding-dynamic-programming",
"lab-nth-fibonacci-number",
@@ -147,7 +139,6 @@
]
},
{
"comingSoon": true,
"moduleType": "review",
"dashedName": "review-python",
"blocks": ["review-python"]
@@ -160,6 +151,7 @@
"comingSoon": true,
"modules": [
{
"comingSoon": true,
"dashedName": "python-certification-exam",
"blocks": ["exam-python-certification"]
}
@@ -96,6 +96,7 @@
"comingSoon": true,
"modules": [
{
"comingSoon": true,
"dashedName": "relational-databases-certification-exam",
"blocks": ["exam-relational-databases-certification"]
}
@@ -14,6 +14,7 @@
"workshop-cat-photo-app",
"lab-recipe-page",
"lecture-html-fundamentals",
"workshop-bookstore-page",
"lecture-understanding-how-html-affects-seo",
"lab-travel-agency-page",
"lecture-working-with-audio-and-video-elements",
@@ -33,6 +34,7 @@
"blocks": [
"lecture-importance-of-semantic-html",
"lecture-understanding-nuanced-semantic-elements",
"workshop-major-browsers-list",
"lecture-working-with-text-and-time-semantic-elements",
"workshop-quincys-job-tips",
"lecture-working-with-specialized-semantic-elements",
@@ -295,7 +297,6 @@
{
"chapterType": "exam",
"dashedName": "responsive-web-design-certification-exam",
"comingSoon": true,
"modules": [
{
"dashedName": "responsive-web-design-certification-exam",