diff --git a/client/i18n/locales/chinese-traditional/intro.json b/client/i18n/locales/chinese-traditional/intro.json index 084a2544045..3df5380b53d 100644 --- a/client/i18n/locales/chinese-traditional/intro.json +++ b/client/i18n/locales/chinese-traditional/intro.json @@ -2055,13 +2055,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "來自 Quincy Larson 的歡迎致辭", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2072,7 +2065,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2085,7 +2078,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2105,13 +2098,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2123,13 +2116,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2141,7 +2134,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2153,7 +2152,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2173,25 +2172,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2223,7 +2222,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2243,7 +2242,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2262,7 +2261,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2282,7 +2281,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2294,19 +2293,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2358,19 +2357,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2389,7 +2388,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2409,7 +2408,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2428,7 +2427,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2441,7 +2440,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2467,19 +2466,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2498,7 +2497,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2524,13 +2523,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2555,7 +2554,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2584,7 +2583,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2615,7 +2614,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2647,7 +2646,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2677,7 +2676,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2708,7 +2707,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2740,7 +2739,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2771,7 +2770,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2803,7 +2802,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2836,7 +2835,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2867,7 +2866,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2886,7 +2885,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2909,7 +2908,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2960,25 +2959,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3003,7 +3002,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3022,7 +3021,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3035,25 +3034,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3070,31 +3069,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3113,7 +3112,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3132,7 +3131,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3151,7 +3150,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3222,7 +3221,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3253,7 +3252,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3270,19 +3269,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3318,7 +3317,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3384,19 +3383,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3434,7 +3433,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3459,13 +3458,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3520,7 +3525,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3565,6 +3570,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3593,7 +3604,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3617,7 +3628,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3668,7 +3679,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3706,7 +3717,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3729,7 +3740,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3791,7 +3802,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3824,7 +3835,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3849,7 +3860,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3881,7 +3892,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3913,7 +3924,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3946,7 +3957,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3985,7 +3996,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4015,13 +4026,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4047,7 +4058,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4096,13 +4107,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4113,7 +4124,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4142,7 +4153,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4161,7 +4172,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4193,7 +4204,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4212,7 +4223,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4231,7 +4242,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4244,7 +4255,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4263,7 +4274,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4282,7 +4293,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4299,7 +4310,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4350,19 +4361,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4413,7 +4424,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4444,7 +4455,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4473,12 +4484,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4508,7 +4519,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4531,7 +4542,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4561,7 +4572,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4575,7 +4586,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4592,7 +4603,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4617,12 +4628,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4648,7 +4661,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4710,7 +4723,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4752,7 +4765,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4778,7 +4791,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4801,7 +4814,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4831,7 +4844,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4853,7 +4866,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4907,7 +4920,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4918,12 +4931,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/chinese-traditional/translations.json b/client/i18n/locales/chinese-traditional/translations.json index b58c5691960..2ab37ac4067 100644 --- a/client/i18n/locales/chinese-traditional/translations.json +++ b/client/i18n/locales/chinese-traditional/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "你的成績單鏈接不正確,它應該有以下表格:<1>https://learn.microsoft.com/LOCALE/usERNAME/transcript/ID - 請檢查你的鏈接中的 UPPERCASE 項目是否正確。" }, "block-type": { - "lecture": "講座", + "lecture": "Theory", "workshop": "工作坊", "lab": "實驗室", "review": "複習", diff --git a/client/i18n/locales/chinese/intro.json b/client/i18n/locales/chinese/intro.json index b10c6de71c3..18c3dc08711 100644 --- a/client/i18n/locales/chinese/intro.json +++ b/client/i18n/locales/chinese/intro.json @@ -2055,13 +2055,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "来自 Quincy Larson 的欢迎致辞", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2072,7 +2065,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2085,7 +2078,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2105,13 +2098,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2123,13 +2116,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2141,7 +2134,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2153,7 +2152,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2173,25 +2172,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2223,7 +2222,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2243,7 +2242,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2262,7 +2261,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2282,7 +2281,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2294,19 +2293,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2358,19 +2357,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2389,7 +2388,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2409,7 +2408,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2428,7 +2427,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2441,7 +2440,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2467,19 +2466,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2498,7 +2497,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2524,13 +2523,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2555,7 +2554,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2584,7 +2583,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2615,7 +2614,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2647,7 +2646,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2677,7 +2676,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2708,7 +2707,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2740,7 +2739,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2771,7 +2770,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2803,7 +2802,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2836,7 +2835,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2867,7 +2866,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2886,7 +2885,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2909,7 +2908,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2960,25 +2959,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3003,7 +3002,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3022,7 +3021,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3035,25 +3034,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3070,31 +3069,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3113,7 +3112,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3132,7 +3131,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3151,7 +3150,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3222,7 +3221,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3253,7 +3252,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3270,19 +3269,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3318,7 +3317,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3384,19 +3383,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3434,7 +3433,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3459,13 +3458,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3520,7 +3525,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3565,6 +3570,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3593,7 +3604,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3617,7 +3628,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3668,7 +3679,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3706,7 +3717,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3729,7 +3740,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3791,7 +3802,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3824,7 +3835,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3849,7 +3860,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3881,7 +3892,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3913,7 +3924,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3946,7 +3957,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3985,7 +3996,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4015,13 +4026,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4047,7 +4058,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4096,13 +4107,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4113,7 +4124,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4142,7 +4153,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4161,7 +4172,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4193,7 +4204,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4212,7 +4223,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4231,7 +4242,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4244,7 +4255,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4263,7 +4274,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4282,7 +4293,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4299,7 +4310,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4350,19 +4361,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4413,7 +4424,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4444,7 +4455,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4473,12 +4484,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4508,7 +4519,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4531,7 +4542,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4561,7 +4572,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4575,7 +4586,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4592,7 +4603,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4617,12 +4628,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4648,7 +4661,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4710,7 +4723,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4752,7 +4765,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4778,7 +4791,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4801,7 +4814,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4831,7 +4844,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4853,7 +4866,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4907,7 +4920,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4918,12 +4931,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/chinese/translations.json b/client/i18n/locales/chinese/translations.json index f64ee95afba..b8eb30eab40 100644 --- a/client/i18n/locales/chinese/translations.json +++ b/client/i18n/locales/chinese/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "你的成绩单链接不正确,它应该有以下表格:<1>https://learn.microsoft.com/LOCALE/usERNAME/transcript/ID - 请检查你的链接中的 UPPERCASE 项目是否正确。" }, "block-type": { - "lecture": "讲座", + "lecture": "Theory", "workshop": "工作坊", "lab": "实验室", "review": "复习", diff --git a/client/i18n/locales/espanol/intro.json b/client/i18n/locales/espanol/intro.json index b2105c70738..7a2cc72b244 100644 --- a/client/i18n/locales/espanol/intro.json +++ b/client/i18n/locales/espanol/intro.json @@ -2069,13 +2069,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "Welcome Message from Quincy Larson", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2086,7 +2079,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2099,7 +2092,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2119,13 +2112,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2137,13 +2130,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2155,7 +2148,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2167,7 +2166,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2187,25 +2186,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2237,7 +2236,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2257,7 +2256,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2276,7 +2275,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2296,7 +2295,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2308,19 +2307,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2372,19 +2371,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2403,7 +2402,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2423,7 +2422,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2442,7 +2441,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2455,7 +2454,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2481,19 +2480,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2512,7 +2511,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2538,13 +2537,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2569,7 +2568,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2598,7 +2597,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2629,7 +2628,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2661,7 +2660,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2691,7 +2690,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2722,7 +2721,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2754,7 +2753,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2785,7 +2784,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2817,7 +2816,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2850,7 +2849,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2881,7 +2880,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2900,7 +2899,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2923,7 +2922,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2974,25 +2973,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3017,7 +3016,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3036,7 +3035,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3049,25 +3048,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3084,31 +3083,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3127,7 +3126,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3146,7 +3145,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3165,7 +3164,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3236,7 +3235,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3267,7 +3266,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3284,19 +3283,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3332,7 +3331,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3398,19 +3397,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3448,7 +3447,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3473,13 +3472,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3534,7 +3539,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3579,6 +3584,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3607,7 +3618,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3631,7 +3642,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3682,7 +3693,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3720,7 +3731,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3743,7 +3754,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3805,7 +3816,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3838,7 +3849,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3863,7 +3874,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3895,7 +3906,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3927,7 +3938,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3960,7 +3971,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3999,7 +4010,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4029,13 +4040,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4061,7 +4072,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4110,13 +4121,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4127,7 +4138,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4156,7 +4167,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4175,7 +4186,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4207,7 +4218,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4226,7 +4237,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4245,7 +4256,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4258,7 +4269,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4277,7 +4288,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4296,7 +4307,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4313,7 +4324,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4364,19 +4375,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4427,7 +4438,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4458,7 +4469,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4487,12 +4498,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4522,7 +4533,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4545,7 +4556,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4575,7 +4586,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4589,7 +4600,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4606,7 +4617,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4631,12 +4642,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4662,7 +4675,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4724,7 +4737,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4766,7 +4779,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4792,7 +4805,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4815,7 +4828,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4845,7 +4858,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4867,7 +4880,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4921,7 +4934,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4932,12 +4945,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/espanol/translations.json b/client/i18n/locales/espanol/translations.json index 496db75b5fe..eff62318b82 100644 --- a/client/i18n/locales/espanol/translations.json +++ b/client/i18n/locales/espanol/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "Tu link de transcripción no es correcta, debería tener está forma: <1>https://learn.microsoft.com/LOCALE/users/USERNAME/transcript/ID - revisa si los objetos MAYÚSCULA en tu vinculo están correctos." }, "block-type": { - "lecture": "Lecture", + "lecture": "Theory", "workshop": "Workshop", "lab": "Lab", "review": "Review", diff --git a/client/i18n/locales/german/intro.json b/client/i18n/locales/german/intro.json index d89492b8c57..ec9b7d14c51 100644 --- a/client/i18n/locales/german/intro.json +++ b/client/i18n/locales/german/intro.json @@ -2069,13 +2069,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "Welcome Message from Quincy Larson", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2086,7 +2079,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2099,7 +2092,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2119,13 +2112,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2137,13 +2130,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2155,7 +2148,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2167,7 +2166,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2187,25 +2186,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2237,7 +2236,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2257,7 +2256,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2276,7 +2275,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2296,7 +2295,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2308,19 +2307,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2372,19 +2371,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2403,7 +2402,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2423,7 +2422,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2442,7 +2441,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2455,7 +2454,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2481,19 +2480,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2512,7 +2511,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2538,13 +2537,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2569,7 +2568,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2598,7 +2597,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2629,7 +2628,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2661,7 +2660,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2691,7 +2690,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2722,7 +2721,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2754,7 +2753,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2785,7 +2784,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2817,7 +2816,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2850,7 +2849,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2881,7 +2880,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2900,7 +2899,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2923,7 +2922,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2974,25 +2973,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3017,7 +3016,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3036,7 +3035,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3049,25 +3048,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3084,31 +3083,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3127,7 +3126,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3146,7 +3145,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3165,7 +3164,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3236,7 +3235,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3267,7 +3266,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3284,19 +3283,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3332,7 +3331,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3398,19 +3397,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3448,7 +3447,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3473,13 +3472,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3534,7 +3539,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3579,6 +3584,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3607,7 +3618,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3631,7 +3642,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3682,7 +3693,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3720,7 +3731,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3743,7 +3754,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3805,7 +3816,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3838,7 +3849,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3863,7 +3874,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3895,7 +3906,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3927,7 +3938,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3960,7 +3971,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3999,7 +4010,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4029,13 +4040,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4061,7 +4072,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4110,13 +4121,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4127,7 +4138,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4156,7 +4167,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4175,7 +4186,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4207,7 +4218,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4226,7 +4237,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4245,7 +4256,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4258,7 +4269,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4277,7 +4288,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4296,7 +4307,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4313,7 +4324,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4364,19 +4375,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4427,7 +4438,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4458,7 +4469,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4487,12 +4498,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4522,7 +4533,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4545,7 +4556,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4575,7 +4586,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4589,7 +4600,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4606,7 +4617,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4631,12 +4642,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4662,7 +4675,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4724,7 +4737,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4766,7 +4779,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4792,7 +4805,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4815,7 +4828,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4845,7 +4858,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4867,7 +4880,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4921,7 +4934,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4932,12 +4945,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/german/translations.json b/client/i18n/locales/german/translations.json index bdfca4eeb89..11b102e515e 100644 --- a/client/i18n/locales/german/translations.json +++ b/client/i18n/locales/german/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "Your transcript link is not correct, it should have the following form: <1>https://learn.microsoft.com/LOCALE/users/USERNAME/transcript/ID - check the UPPERCASE items in your link are correct." }, "block-type": { - "lecture": "Lecture", + "lecture": "Theory", "workshop": "Workshop", "lab": "Lab", "review": "Review", diff --git a/client/i18n/locales/italian/intro.json b/client/i18n/locales/italian/intro.json index 3fd857f910a..006ce769d77 100644 --- a/client/i18n/locales/italian/intro.json +++ b/client/i18n/locales/italian/intro.json @@ -2069,13 +2069,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "Welcome Message from Quincy Larson", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2086,7 +2079,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2099,7 +2092,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2119,13 +2112,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2137,13 +2130,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2155,7 +2148,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2167,7 +2166,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2187,25 +2186,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2237,7 +2236,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2257,7 +2256,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2276,7 +2275,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2296,7 +2295,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2308,19 +2307,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2372,19 +2371,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2403,7 +2402,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2423,7 +2422,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2442,7 +2441,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2455,7 +2454,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2481,19 +2480,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2512,7 +2511,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2538,13 +2537,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2569,7 +2568,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2598,7 +2597,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2629,7 +2628,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2661,7 +2660,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2691,7 +2690,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2722,7 +2721,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2754,7 +2753,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2785,7 +2784,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2817,7 +2816,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2850,7 +2849,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2881,7 +2880,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2900,7 +2899,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2923,7 +2922,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2974,25 +2973,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3017,7 +3016,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3036,7 +3035,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3049,25 +3048,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3084,31 +3083,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3127,7 +3126,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3146,7 +3145,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3165,7 +3164,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3236,7 +3235,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3267,7 +3266,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3284,19 +3283,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3332,7 +3331,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3398,19 +3397,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3448,7 +3447,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3473,13 +3472,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3534,7 +3539,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3579,6 +3584,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3607,7 +3618,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3631,7 +3642,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3682,7 +3693,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3720,7 +3731,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3743,7 +3754,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3805,7 +3816,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3838,7 +3849,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3863,7 +3874,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3895,7 +3906,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3927,7 +3938,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3960,7 +3971,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3999,7 +4010,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4029,13 +4040,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4061,7 +4072,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4110,13 +4121,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4127,7 +4138,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4156,7 +4167,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4175,7 +4186,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4207,7 +4218,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4226,7 +4237,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4245,7 +4256,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4258,7 +4269,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4277,7 +4288,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4296,7 +4307,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4313,7 +4324,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4364,19 +4375,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4427,7 +4438,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4458,7 +4469,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4487,12 +4498,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4522,7 +4533,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4545,7 +4556,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4575,7 +4586,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4589,7 +4600,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4606,7 +4617,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4631,12 +4642,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4662,7 +4675,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4724,7 +4737,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4766,7 +4779,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4792,7 +4805,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4815,7 +4828,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4845,7 +4858,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4867,7 +4880,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4921,7 +4934,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4932,12 +4945,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/italian/translations.json b/client/i18n/locales/italian/translations.json index 14cd006b202..24874a0e037 100644 --- a/client/i18n/locales/italian/translations.json +++ b/client/i18n/locales/italian/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "Your transcript link is not correct, it should have the following form: <1>https://learn.microsoft.com/LOCALE/users/USERNAME/transcript/ID - check the UPPERCASE items in your link are correct." }, "block-type": { - "lecture": "Lecture", + "lecture": "Theory", "workshop": "Workshop", "lab": "Lab", "review": "Review", diff --git a/client/i18n/locales/japanese/intro.json b/client/i18n/locales/japanese/intro.json index c34b4c9eb21..a3d29ffb243 100644 --- a/client/i18n/locales/japanese/intro.json +++ b/client/i18n/locales/japanese/intro.json @@ -2069,13 +2069,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "Welcome Message from Quincy Larson", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2086,7 +2079,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2099,7 +2092,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2119,13 +2112,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2137,13 +2130,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2155,7 +2148,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2167,7 +2166,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2187,25 +2186,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2237,7 +2236,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2257,7 +2256,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2276,7 +2275,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2296,7 +2295,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2308,19 +2307,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2372,19 +2371,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2403,7 +2402,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2423,7 +2422,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2442,7 +2441,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2455,7 +2454,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2481,19 +2480,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2512,7 +2511,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2538,13 +2537,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2569,7 +2568,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2598,7 +2597,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2629,7 +2628,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2661,7 +2660,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2691,7 +2690,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2722,7 +2721,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2754,7 +2753,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2785,7 +2784,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2817,7 +2816,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2850,7 +2849,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2881,7 +2880,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2900,7 +2899,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2923,7 +2922,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2974,25 +2973,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3017,7 +3016,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3036,7 +3035,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3049,25 +3048,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3084,31 +3083,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3127,7 +3126,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3146,7 +3145,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3165,7 +3164,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3236,7 +3235,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3267,7 +3266,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3284,19 +3283,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3332,7 +3331,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3398,19 +3397,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3448,7 +3447,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3473,13 +3472,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3534,7 +3539,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3579,6 +3584,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3607,7 +3618,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3631,7 +3642,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3682,7 +3693,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3720,7 +3731,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3743,7 +3754,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3805,7 +3816,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3838,7 +3849,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3863,7 +3874,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3895,7 +3906,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3927,7 +3938,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3960,7 +3971,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3999,7 +4010,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4029,13 +4040,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4061,7 +4072,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4110,13 +4121,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4127,7 +4138,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4156,7 +4167,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4175,7 +4186,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4207,7 +4218,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4226,7 +4237,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4245,7 +4256,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4258,7 +4269,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4277,7 +4288,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4296,7 +4307,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4313,7 +4324,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4364,19 +4375,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4427,7 +4438,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4458,7 +4469,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4487,12 +4498,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4522,7 +4533,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4545,7 +4556,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4575,7 +4586,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4589,7 +4600,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4606,7 +4617,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4631,12 +4642,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4662,7 +4675,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4724,7 +4737,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4766,7 +4779,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4792,7 +4805,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4815,7 +4828,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4845,7 +4858,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4867,7 +4880,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4921,7 +4934,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4932,12 +4945,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/japanese/translations.json b/client/i18n/locales/japanese/translations.json index ca5ecc78f22..da4e1f32284 100644 --- a/client/i18n/locales/japanese/translations.json +++ b/client/i18n/locales/japanese/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "成績証明書のリンクが正しくありません。以下の形式になっているか確認してください: <1>https://learn.microsoft.com/LOCALE/users/USERNAME/transcript/ID - 特に大文字で示した部分が正しいか確認してください。" }, "block-type": { - "lecture": "レクチャー", + "lecture": "Theory", "workshop": "ワークショップ", "lab": "ラボ", "review": "復習", diff --git a/client/i18n/locales/korean/intro.json b/client/i18n/locales/korean/intro.json index 0d5af31897f..70d028714ec 100644 --- a/client/i18n/locales/korean/intro.json +++ b/client/i18n/locales/korean/intro.json @@ -2069,13 +2069,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "Welcome Message from Quincy Larson", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2086,7 +2079,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2099,7 +2092,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2119,13 +2112,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2137,13 +2130,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2155,7 +2148,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2167,7 +2166,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2187,25 +2186,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2237,7 +2236,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2257,7 +2256,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2276,7 +2275,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2296,7 +2295,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2308,19 +2307,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2372,19 +2371,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2403,7 +2402,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2423,7 +2422,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2442,7 +2441,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2455,7 +2454,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2481,19 +2480,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2512,7 +2511,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2538,13 +2537,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2569,7 +2568,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2598,7 +2597,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2629,7 +2628,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2661,7 +2660,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2691,7 +2690,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2722,7 +2721,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2754,7 +2753,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2785,7 +2784,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2817,7 +2816,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2850,7 +2849,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2881,7 +2880,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2900,7 +2899,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2923,7 +2922,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2974,25 +2973,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3017,7 +3016,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3036,7 +3035,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3049,25 +3048,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3084,31 +3083,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3127,7 +3126,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3146,7 +3145,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3165,7 +3164,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3236,7 +3235,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3267,7 +3266,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3284,19 +3283,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3332,7 +3331,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3398,19 +3397,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3448,7 +3447,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3473,13 +3472,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3534,7 +3539,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3579,6 +3584,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3607,7 +3618,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3631,7 +3642,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3682,7 +3693,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3720,7 +3731,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3743,7 +3754,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3805,7 +3816,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3838,7 +3849,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3863,7 +3874,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3895,7 +3906,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3927,7 +3938,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3960,7 +3971,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3999,7 +4010,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4029,13 +4040,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4061,7 +4072,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4110,13 +4121,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4127,7 +4138,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4156,7 +4167,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4175,7 +4186,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4207,7 +4218,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4226,7 +4237,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4245,7 +4256,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4258,7 +4269,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4277,7 +4288,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4296,7 +4307,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4313,7 +4324,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4364,19 +4375,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4427,7 +4438,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4458,7 +4469,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4487,12 +4498,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4522,7 +4533,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4545,7 +4556,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4575,7 +4586,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4589,7 +4600,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4606,7 +4617,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4631,12 +4642,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4662,7 +4675,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4724,7 +4737,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4766,7 +4779,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4792,7 +4805,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4815,7 +4828,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4845,7 +4858,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4867,7 +4880,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4921,7 +4934,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4932,12 +4945,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/korean/translations.json b/client/i18n/locales/korean/translations.json index 77e38c1ac50..2c4a5dfbaa5 100644 --- a/client/i18n/locales/korean/translations.json +++ b/client/i18n/locales/korean/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "Your transcript link is not correct, it should have the following form: <1>https://learn.microsoft.com/LOCALE/users/USERNAME/transcript/ID - check the UPPERCASE items in your link are correct." }, "block-type": { - "lecture": "Lecture", + "lecture": "Theory", "workshop": "Workshop", "lab": "Lab", "review": "Review", diff --git a/client/i18n/locales/portuguese/intro.json b/client/i18n/locales/portuguese/intro.json index a52b45ae752..4fb71d41bf2 100644 --- a/client/i18n/locales/portuguese/intro.json +++ b/client/i18n/locales/portuguese/intro.json @@ -2069,13 +2069,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "Welcome Message from Quincy Larson", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2086,7 +2079,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2099,7 +2092,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2119,13 +2112,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2137,13 +2130,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2155,7 +2148,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2167,7 +2166,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2187,25 +2186,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2237,7 +2236,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2257,7 +2256,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2276,7 +2275,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2296,7 +2295,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2308,19 +2307,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2372,19 +2371,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2403,7 +2402,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2423,7 +2422,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2442,7 +2441,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2455,7 +2454,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2481,19 +2480,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2512,7 +2511,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2538,13 +2537,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2569,7 +2568,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2598,7 +2597,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2629,7 +2628,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2661,7 +2660,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2691,7 +2690,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2722,7 +2721,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2754,7 +2753,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2785,7 +2784,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2817,7 +2816,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2850,7 +2849,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2881,7 +2880,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2900,7 +2899,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2923,7 +2922,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2974,25 +2973,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3017,7 +3016,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3036,7 +3035,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3049,25 +3048,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3084,31 +3083,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3127,7 +3126,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3146,7 +3145,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3165,7 +3164,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3236,7 +3235,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3267,7 +3266,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3284,19 +3283,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3332,7 +3331,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3398,19 +3397,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3448,7 +3447,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3473,13 +3472,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3534,7 +3539,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3579,6 +3584,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3607,7 +3618,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3631,7 +3642,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3682,7 +3693,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3720,7 +3731,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3743,7 +3754,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3805,7 +3816,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3838,7 +3849,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3863,7 +3874,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3895,7 +3906,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3927,7 +3938,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3960,7 +3971,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3999,7 +4010,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4029,13 +4040,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4061,7 +4072,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4110,13 +4121,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4127,7 +4138,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4156,7 +4167,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4175,7 +4186,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4207,7 +4218,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4226,7 +4237,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4245,7 +4256,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4258,7 +4269,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4277,7 +4288,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4296,7 +4307,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4313,7 +4324,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4364,19 +4375,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4427,7 +4438,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4458,7 +4469,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4487,12 +4498,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4522,7 +4533,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4545,7 +4556,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4575,7 +4586,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4589,7 +4600,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4606,7 +4617,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4631,12 +4642,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4662,7 +4675,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4724,7 +4737,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4766,7 +4779,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4792,7 +4805,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4815,7 +4828,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4845,7 +4858,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4867,7 +4880,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4921,7 +4934,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4932,12 +4945,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/portuguese/translations.json b/client/i18n/locales/portuguese/translations.json index a88141a850c..152bf76eecb 100644 --- a/client/i18n/locales/portuguese/translations.json +++ b/client/i18n/locales/portuguese/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "O link da transcrição não está correto. Ele deve ter esta aparência: <1>https://learn.microsoft.com/IDIOMA_DE_LOCALIZACAO/users/NOME_DO_USUARIO/transcript/ID - Confira os itens que aparecem em MAIÚSCULAS no seu link para ver se estão corretos." }, "block-type": { - "lecture": "Aula", + "lecture": "Theory", "workshop": "Workshop", "lab": "Laboratório", "review": "Revisão", diff --git a/client/i18n/locales/swahili/intro.json b/client/i18n/locales/swahili/intro.json index c1a19aa61d0..c3008d59344 100644 --- a/client/i18n/locales/swahili/intro.json +++ b/client/i18n/locales/swahili/intro.json @@ -2069,13 +2069,6 @@ "This workshop will serve as your introduction to HTML and coding in general. You will learn about headings and paragraph elements." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "Welcome Message from Quincy Larson", - "intro": [ - "Hear from Quincy Larson, the founder and teacher of freeCodeCamp.", - "Quincy will welcome you to the platform and talk about how the certification works. Quincy will also provide tips on how to learn effectively." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Debug Camperbot's Profile Page", "intro": [ @@ -2086,7 +2079,7 @@ "lecture-understanding-html-attributes": { "title": "Understanding HTML Attributes", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "You will learn about HTML's role on the web, and what HTML attributes are." ] }, @@ -2099,7 +2092,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Understanding the HTML Boilerplate", "intro": [ - "In these lectures, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "You will learn how to work with the link element, meta element and more." ] }, @@ -2119,13 +2112,13 @@ "lecture-html-fundamentals": { "title": "HTML Fundamentals", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2137,13 +2130,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Working with Audio and Video Elements", "intro": [ - "In these lectures, you will learn how to work with the audio and video elements." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Working with Images and SVGs", "intro": [ - "In these lectures, you will learn how to work with SVGs and learn about techniques for optimizing your images." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2155,7 +2148,13 @@ "lecture-working-with-media": { "title": "Working with the iframe Element", "intro": [ - "In these lectures, you will learn how to work with the iframe element which is used to embed an external site on your web page." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2167,7 +2166,7 @@ "lecture-working-with-links": { "title": "Working with Links", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2187,25 +2186,25 @@ "lecture-importance-of-semantic-html": { "title": "Importance of Semantic HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Understanding Nuanced Semantic Elements", "intro": [ - "In these lectures, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Working with Text and Time Semantic Elements ", "intro": [ - "In this lecture, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Working with Specialized Semantic Elements", "intro": [ - "In this lecture, you will learn about specialized semantic elements like u, s, code elements and more." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2237,7 +2236,7 @@ "lecture-working-with-forms": { "title": "Working with Forms", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2257,7 +2256,7 @@ "lecture-working-with-tables": { "title": "Working with Tables", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2276,7 +2275,7 @@ "lecture-working-with-html-tools": { "title": "Working with HTML Tools", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2296,7 +2295,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Importance of Accessibility and Good HTML Structure", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2308,19 +2307,19 @@ "lecture-accessible-tables-forms": { "title": "Working with Accessible Tables and Forms", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Introduction to ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Working with Accessible Media Elements", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2372,19 +2371,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Understanding Computer, Internet, and Tooling Basics", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Working with File Systems", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Browsing the Web Effectively", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2403,7 +2402,7 @@ "lecture-what-is-css": { "title": "What Is CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2423,7 +2422,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "CSS Specificity, the Cascade Algorithm, and Inheritance", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2442,7 +2441,7 @@ "lecture-styling-lists-and-links": { "title": "Styling Lists and Links", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2455,7 +2454,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Working with Backgrounds and Borders", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2481,19 +2480,19 @@ "lecture-user-interface-design-fundamentals": { "title": "User Interface Design Fundamentals", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "User-Centered Design", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Common Design Tools", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2512,7 +2511,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Working with Relative and Absolute Units", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2538,13 +2537,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Working with Pseudo-Classes and Pseudo-Elements in CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Design a Greeting Card", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "In this workshop, you will have a chance to practice what you have learned by designing a greeting card." ] }, @@ -2569,7 +2568,7 @@ "lecture-working-with-colors-in-css": { "title": "Working with Colors in CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2598,7 +2597,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Best Practices for Styling Forms", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2629,7 +2628,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Working with CSS Transforms, Overflow, and Filters", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2661,7 +2660,7 @@ "lecture-working-with-css-flexbox": { "title": "Working with CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2691,7 +2690,7 @@ "lecture-working-with-css-fonts": { "title": "Working with CSS Fonts", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2722,7 +2721,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Best Practices for Accessibility and CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2754,7 +2753,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Understanding How to Work with Floats and Positioning in CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2785,7 +2784,7 @@ "lecture-working-with-attribute-selectors": { "title": "Working with Attribute Selectors", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2817,7 +2816,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Best Practices for Responsive Web Design", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2850,7 +2849,7 @@ "lecture-working-with-css-variables": { "title": "Working with CSS Variables", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2881,7 +2880,7 @@ "lecture-working-with-css-grid": { "title": "Working with CSS Grid", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2900,7 +2899,7 @@ "lecture-debugging-css": { "title": "Debugging CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2923,7 +2922,7 @@ "lecture-animations-and-accessibility": { "title": "Animations and Accessibility", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2974,25 +2973,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Working with Code Editors and IDEs", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Introduction to JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3017,7 +3016,7 @@ "lecture-working-with-data-types": { "title": "Working with Data Types", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3036,7 +3035,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Working with Strings in JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3049,25 +3048,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3084,31 +3083,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3127,7 +3126,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Working with Numbers and Common Number Methods", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3146,7 +3145,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Understanding Comparisons and Conditionals", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3165,7 +3164,7 @@ "lecture-working-with-functions": { "title": "Working with Functions", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3236,7 +3235,7 @@ "lecture-working-with-arrays": { "title": "Working with Arrays", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3267,7 +3266,7 @@ "lecture-working-with-common-array-methods": { "title": "Working with Common Array Methods", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3284,19 +3283,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3332,7 +3331,7 @@ "lecture-working-with-loops": { "title": "Working with Loops", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3398,19 +3397,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3448,7 +3447,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "The var Keyword and Hoisting", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3473,13 +3472,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Understanding Modules, Imports, and Exports", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3534,7 +3539,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Working with Higher Order Functions and Callbacks", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3579,6 +3584,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3607,7 +3618,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Working with the DOM, Click Events, and Web APIs", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3631,7 +3642,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Understanding the Event Object and Event Delegation", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3682,7 +3693,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3720,7 +3731,7 @@ "lecture-debugging-techniques": { "title": "Debugging Techniques", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3743,7 +3754,7 @@ "lecture-working-with-regular-expressions": { "title": "Working with Regular Expressions", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3805,7 +3816,7 @@ "lecture-understanding-form-validation": { "title": "Understanding Form Validation", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3838,7 +3849,7 @@ "lecture-working-with-dates": { "title": "Working with Dates", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3863,7 +3874,7 @@ "lecture-working-with-audio-and-video": { "title": "Working with Audio and Video", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3895,7 +3906,7 @@ "lecture-working-with-maps-and-sets": { "title": "Working with Maps and Sets", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3927,7 +3938,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Working with Client-Side Storage and CRUD Operations", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3960,7 +3971,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Understanding How to Work with Classes in JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3999,7 +4010,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Understanding Recursion and the Call Stack", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4029,13 +4040,13 @@ "lecture-understanding-functional-programming": { "title": "Understanding Functional Programming", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Build a Recipe Ingredient Converter", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Now you will be able to apply what you have learned about currying and functional programming by building a recipe ingredient converter application." ] }, @@ -4061,7 +4072,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Understanding Asynchronous Programming", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4110,13 +4121,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Introduction to JavaScript Libraries and Frameworks", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Build a Reusable Mega Navbar", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "In this workshop, you will build a reusable Navbar component using React." ] }, @@ -4127,7 +4138,7 @@ "lecture-working-with-data-in-react": { "title": "Working with Data in React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4156,7 +4167,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Working with State and Responding to Events in React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4175,7 +4186,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Understanding Effects and Referencing Values in React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4207,7 +4218,7 @@ "lecture-working-with-forms-in-react": { "title": "Working with Forms in React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4226,7 +4237,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Working with Data Fetching and Memoization in React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4245,7 +4256,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Routing, React Frameworks, and Dependency Management Tools", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4258,7 +4269,7 @@ "lecture-react-strategies-and-debugging": { "title": "React Strategies and Debugging", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4277,7 +4288,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Understanding Performance in Web Applications", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4296,7 +4307,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Understanding the Different Types of Testing", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4313,7 +4324,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Working with CSS Libraries and Frameworks", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4364,19 +4375,19 @@ "lecture-introduction-to-typescript": { "title": "Introduction to TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4427,7 +4438,7 @@ "lecture-introduction-to-python": { "title": "Introduction to Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4458,7 +4469,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Working with Loops and Sequences", "intro": [ - "Learn about Working with Loops and Sequences in these lectures." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4487,12 +4498,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Working with Dictionaries and Sets", "intro": [ - "Learn about working with dictionaries and sets in these lectures." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Working with Modules", - "intro": ["Learn about working with modules in these lectures."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4522,7 +4533,7 @@ "lecture-understanding-error-handling": { "title": "Understanding Error Handling", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4545,7 +4556,7 @@ }, "lecture-classes-and-objects": { "title": "Classes and Objects", - "intro": ["Learn about Classes and Objects in these lectures."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4575,7 +4586,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Understanding Object Oriented Programming and Encapsulation", "intro": [ - "Learn about Understanding Object Oriented Programming and Encapsulation in these lectures." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4589,7 +4600,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Understanding Inheritance and Polymorphism", "intro": [ - "Learn about Understanding Inheritance and Polymorphism in these lectures." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4606,7 +4617,7 @@ }, "lecture-understanding-abstraction": { "title": "Understanding Abstraction", - "intro": ["Learn about Understanding Abstraction in these lectures."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4631,12 +4642,14 @@ "lecture-working-with-common-data-structures": { "title": "Working with Common Data Structures", "intro": [ - "Learn about Working with Common Data Structures in these lectures." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Build a Linked List Class", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Build a Hash Table", @@ -4662,7 +4675,7 @@ "title": "Searching and Sorting Algorithms", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4724,7 +4737,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Understanding Graphs and Trees", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4766,7 +4779,7 @@ "lecture-understanding-dynamic-programming": { "title": "Understanding Dynamic Programming", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4792,7 +4805,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4815,7 +4828,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4845,7 +4858,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Build Five Programs", @@ -4867,7 +4880,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4921,7 +4934,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Build a Castle", @@ -4932,12 +4945,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/swahili/translations.json b/client/i18n/locales/swahili/translations.json index 9445f69387b..216890a9903 100644 --- a/client/i18n/locales/swahili/translations.json +++ b/client/i18n/locales/swahili/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "Your transcript link is not correct, it should have the following form: <1>https://learn.microsoft.com/LOCALE/users/USERNAME/transcript/ID - check the UPPERCASE items in your link are correct." }, "block-type": { - "lecture": "Lecture", + "lecture": "Theory", "workshop": "Workshop", "lab": "Lab", "review": "Review", diff --git a/client/i18n/locales/ukrainian/intro.json b/client/i18n/locales/ukrainian/intro.json index e4f92010379..0275bef86a4 100644 --- a/client/i18n/locales/ukrainian/intro.json +++ b/client/i18n/locales/ukrainian/intro.json @@ -2055,13 +2055,6 @@ "У цьому практичному занятті ви ознайомитесь з HTML та програмуванням. Ви дізнаєтесь про деякі елементи: заголовки та абзаци." ] }, - "lecture-welcome-to-freecodecamp": { - "title": "Привітальне повідомлення від Квінсі Ларсона", - "intro": [ - "Послухайте Квінсі Ларсона — засновника і вчителя freeCodeCamp.", - "Квінсі привітає вас на платформі і розкаже, як працює сертифікація. Він також поділиться тим, як вчитись ефективніше." - ] - }, "lab-debug-camperbots-profile-page": { "title": "Налагодьте профіль Кемпербота", "intro": [ @@ -2072,7 +2065,7 @@ "lecture-understanding-html-attributes": { "title": "Знайомство з HTML-атрибутами", "intro": [ - "In these lectures, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", + "In these lessons, you will learn more about HTML (HyperText Markup Language), a markup language for creating web pages.", "Ви дізнаєтесь, яку роль відіграє HTML у мережі, а також ознайомитесь з його атрибутами." ] }, @@ -2085,7 +2078,7 @@ "lecture-understanding-the-html-boilerplate": { "title": "Знайомство з шаблонним HTML-кодом", "intro": [ - "У цих відеолекціях ви дізнаєтесь про шаблонний код для HTML.", + "In these lessons, you will learn about the HTML boilerplate which is a ready-made template for your webpages.", "Ви навчитесь працювати з елементами link, meta та іншими." ] }, @@ -2105,13 +2098,13 @@ "lecture-html-fundamentals": { "title": "Основи HTML", "intro": [ - "In these lectures, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." + "In these lessons, you will learn about HTML fundamentals like the div element, the id and class attributes, the HTML boilerplate, HTML entities, and more." ] }, "lecture-understanding-how-html-affects-seo": { "title": "Understanding How HTML Affects SEO", "intro": [ - "In these lectures, you will learn how your HTML code impacts search engine optimization." + "In these lessons, you will learn how your HTML code impacts search engine optimization." ] }, "lab-travel-agency-page": { @@ -2123,13 +2116,13 @@ "lecture-working-with-audio-and-video-elements": { "title": "Робота з елементами audio та video", "intro": [ - "У цих відеолекціях ви дізнаєтесь, як працювати з елементами audio та video." + "In these lessons, you will learn how to work with the audio and video elements." ] }, "lecture-working-with-images-and-svgs": { "title": "Робота із зображеннями та SVG", "intro": [ - "У цих відеолекціях ви навчитесь працювати з SVG та дізнаєтесь про способи оптимізації зображень." + "In these lessons, you will learn how to work with SVGs and learn about techniques for optimizing your images." ] }, "workshop-build-a-heart-icon": { @@ -2141,7 +2134,13 @@ "lecture-working-with-media": { "title": "Робота з елементом iframe", "intro": [ - "У цих відеолекціях ви навчитесь працювати з елементом iframe, який використовують для додавання зовнішнього сайту на вебсторінку." + "In these lessons, you will learn how to work with the iframe element which is used to embed an external site on your web page." + ] + }, + "workshop-build-a-video-display-using-iframe": { + "title": "Build a Video Display Using iframe", + "intro": [ + "In this workshop, you'll learn how to work with the iframe element by building a video display." ] }, "lab-video-compilation-page": { @@ -2153,7 +2152,7 @@ "lecture-working-with-links": { "title": "Робота з посиланнями", "intro": [ - "In these lectures, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." + "In these lessons, you will learn about links, the target attribute, different link states, absolute, and relative paths, and more." ] }, "review-basic-html": { @@ -2173,25 +2172,25 @@ "lecture-importance-of-semantic-html": { "title": "Важливість семантичного HTML", "intro": [ - "In these lectures, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." + "In these lessons, you will learn about semantic HTML and why you should care about it, semantic elements, how semantic HTML differs from presentational HTML, and more." ] }, "lecture-understanding-nuanced-semantic-elements": { "title": "Нюанси роботи з семантичними елементами", "intro": [ - "У цих відеолекціях ви дізнаєтесь, коли варто використовувати семантичні елементи (наприклад, em замість i), а також про списки визначень і багато іншого." + "In these lessons, you will learn when you should use certain semantic elements like the em element over the i element, description lists, and more." ] }, "lecture-working-with-text-and-time-semantic-elements": { "title": "Робота з семантичними елементами тексту і часу", "intro": [ - "У цих відеолекціях ви дізнаєтесь про важливість семантики у передачі значення тексту і часу, що включає елементи time, blockquote тощо." + "In this lesson, you will learn about the importance of semantics in conveying meaning for text and time-related content including the time, blockquote elements and more." ] }, "lecture-working-with-specialized-semantic-elements": { "title": "Робота зі спеціальними семантичними елементами", "intro": [ - "У цих відеолекціях ви ознайомитесь зі спеціальними семантичними елементами, зокрема з u, s, code і багатьма іншими." + "In this lesson, you will learn about specialized semantic elements like u, s, code elements and more." ] }, "workshop-blog-page": { @@ -2223,7 +2222,7 @@ "lecture-working-with-forms": { "title": "Робота з формами", "intro": [ - "In these lectures, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." + "In these lessons, you will learn about forms, the role of labels, inputs and buttons in creating forms, client-side form validation, and form states." ] }, "workshop-hotel-feedback-form": { @@ -2243,7 +2242,7 @@ "lecture-working-with-tables": { "title": "Робота з таблицями", "intro": [ - "In these lectures, you will learn about HTML tables, how to create them, and when to use them." + "In these lessons, you will learn about HTML tables, how to create them, and when to use them." ] }, "workshop-final-exams-table": { @@ -2262,7 +2261,7 @@ "lecture-working-with-html-tools": { "title": "Робота з інструментами HTML", "intro": [ - "In these lectures, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." + "In these lessons, you will learn about HTML tools and how they let you write better code. These tools include HTML validators, DOM Inspector, and the browser developer tools." ] }, "review-html-tables-and-forms": { @@ -2282,7 +2281,7 @@ "lecture-importance-of-accessibility-and-good-html-structure": { "title": "Важливість доступності та хорошої структури HTML", "intro": [ - "In these lectures, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." + "In these lessons, you will learn about accessibility and its importance, assistive tools for people with disabilities, HTML attributes that let you create inclusive websites, accessibility best practices, and much more." ] }, "workshop-debug-coding-journey-blog-page": { @@ -2294,19 +2293,19 @@ "lecture-accessible-tables-forms": { "title": "Робота з доступними таблицями і формами", "intro": [ - "In these lectures, you will learn about how to create accessible tables and forms." + "In these lessons, you will learn about how to create accessible tables and forms." ] }, "lecture-introduction-to-aria": { "title": "Вступ до ARIA", "intro": [ - "In these lectures, you will learn about working with ARIA roles." + "In these lessons, you will learn about working with ARIA roles." ] }, "lecture-accessible-media-elements": { "title": "Робота з доступними медіаелементами", "intro": [ - "In these lectures, you will learn about how to create accessible links, audio and video content." + "In these lessons, you will learn about how to create accessible links, audio and video content." ] }, "lab-checkout-page": { @@ -2358,19 +2357,19 @@ "lecture-understanding-computer-internet-and-tooling-basics": { "title": "Знайомство з комп’ютером, інтернетом та інструментами", "intro": [ - "In these lectures, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." + "In these lessons, you will learn about the computer, its different parts, internet service providers (ISPs), and the tools professional developers use." ] }, "lecture-working-with-file-systems": { "title": "Робота з файловими системами", "intro": [ - "In these lectures, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." + "In these lessons, you will learn how to work with file and folder systems on your computers. You will learn how to create, move, and delete files and folders, the best practices for naming and organizing files and folders, and more." ] }, "lecture-browsing-the-web-effectively": { "title": "Ефективне користування мережею", "intro": [ - "In these lectures, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." + "In these lessons, you will learn about what websites, search engine, and web browsers are, the different browsers available, and how to get the best out of a search engine." ] }, "review-computer-basics": { @@ -2387,7 +2386,7 @@ "lecture-what-is-css": { "title": "Що таке CSS?", "intro": [ - "The following lectures are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." + "The following lessons are all about CSS. You will learn what CSS is and its role on the web, a CSS rule and its anatomy, the three ways to write CSS and when to use each, inline and block elements, and many more." ] }, "workshop-cafe-menu": { @@ -2407,7 +2406,7 @@ "lecture-css-specificity-the-cascade-algorithm-and-inheritance": { "title": "Специфічність, алгоритм каскаду та успадкування в CSS", "intro": [ - "In these lectures, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." + "In these lessons, you will learn about CSS specificity, the common selectors and their specificities, the cascade algorithm, inheritance, and more." ] }, "review-basic-css": { @@ -2424,7 +2423,7 @@ "lecture-styling-lists-and-links": { "title": "Стилізація списків і посилань", "intro": [ - "In these lectures, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." + "In these lessons, you will learn the properties you need to know to effectively style lists and links, including link states like link, visited, hover, and active." ] }, "lab-stylized-to-do-list": { @@ -2437,7 +2436,7 @@ "lecture-working-with-backgrounds-and-borders": { "title": "Робота з фоном і кордоном", "intro": [ - "In these lectures, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." + "In these lessons, you will learn about the properties and values you need to know to style backgrounds and borders of elements, alongside the accessibility considerations for backgrounds." ] }, "lab-blog-post-card": { @@ -2461,19 +2460,19 @@ "lecture-user-interface-design-fundamentals": { "title": "Основи UI дизайну", "intro": [ - "In these lectures, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." + "In these lessons, you will learn about the fundamentals of user interface (UI) design. You will learn about the terms you need to know to communicate with designers, visual hierarchy, scaling, alignment, whitespace, and much more." ] }, "lecture-user-centered-design": { "title": "Дизайн, орієнтований на користувача", "intro": [ - "In these lectures, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." + "In these lessons, you will learn about best practices for designing user-facing features like dark mode, breadcrumbs, modal dialogs, and much more. You will also learn how to conduct user research, user requirements and testing." ] }, "lecture-common-design-tools": { "title": "Поширені інструменти дизайну", "intro": [ - "In these lectures, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." + "In these lessons, you will learn about the common design tools developers should know. You will also learn about design briefs and how developers work with them." ] }, "review-design-fundamentals": { @@ -2490,7 +2489,7 @@ "lecture-working-with-relative-and-absolute-units": { "title": "Робота з відносними й абсолютними одиницями", "intro": [ - "In these lectures, you will learn about relative and absolute units, and how they both impact what you see in the browser." + "In these lessons, you will learn about relative and absolute units, and how they both impact what you see in the browser." ] }, "lab-event-flyer-page": { @@ -2516,13 +2515,13 @@ "lecture-working-with-pseudo-classes-and-pseudo-elements-in-css": { "title": "Робота з псевдокласами та псевдоелементами в CSS", "intro": [ - "In these lectures, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." + "In these lessons, you will learn about pseudo-classes and pseudo-elements, alongside their examples and how they work." ] }, "workshop-greeting-card": { "title": "Створіть вітальну листівку", "intro": [ - "In the previous lectures, you learned how to work with the different types of pseudo-classes.", + "In the previous lessons, you learned how to work with the different types of pseudo-classes.", "У цьому практичному занятті ви зможете попрактикувати те, чого навчились, створивши вітальну листівку." ] }, @@ -2549,7 +2548,7 @@ "lecture-working-with-colors-in-css": { "title": "Робота з кольорами в CSS", "intro": [ - "In these lectures, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." + "In these lessons, you will learn about linear and radial gradients, the color theory, different kinds of colors like named, RGB, Hex, and HSL colors. You will learn how these colors work, and which to use in specific cases." ] }, "workshop-colored-markers": { @@ -2580,7 +2579,7 @@ "lecture-best-practices-for-styling-forms": { "title": "Найкращі практики стилізації форм", "intro": [ - "In these lectures, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." + "In these lessons, you will learn about the best practices for styling forms and issues you can encounter while styling special inputs like color and datetime-local." ] }, "workshop-registration-form": { @@ -2611,7 +2610,7 @@ "lecture-working-with-css-transforms-overflow-and-filters": { "title": "Робота з трансформаціями, переповненням і ефектами в CSS", "intro": [ - "In these lectures, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." + "In these lessons, you will learn about working with CSS transforms, overflow, and filters. You will also learn about the box model and how it works." ] }, "workshop-rothko-painting": { @@ -2643,7 +2642,7 @@ "lecture-working-with-css-flexbox": { "title": "Робота з CSS Flexbox", "intro": [ - "In these lectures, you will learn how CSS flexbox works, its properties, and when you should use it." + "In these lessons, you will learn how CSS flexbox works, its properties, and when you should use it." ] }, "workshop-flexbox-photo-gallery": { @@ -2673,7 +2672,7 @@ "lecture-working-with-css-fonts": { "title": "Робота з шрифтами в CSS", "intro": [ - "In these lectures, you will learn about typography and its best practices, fonts, and the text-shadow property." + "In these lessons, you will learn about typography and its best practices, fonts, and the text-shadow property." ] }, "workshop-nutritional-label": { @@ -2706,7 +2705,7 @@ "lecture-best-practices-for-accessibility-and-css": { "title": "Найкращі практики доступності й CSS", "intro": [ - "In these lectures, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." + "In these lessons, you will learn about best practices for accessibility in CSS, and the tools for checking good color contrast on websites." ] }, "workshop-accessibility-quiz": { @@ -2738,7 +2737,7 @@ "lecture-understanding-how-to-work-with-floats-and-positioning-in-css": { "title": "Знайомство з вирівнюванням й позиціюванням в CSS", "intro": [ - "In these lectures, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." + "In these lessons, you will learn how to use CSS positioning and floats. You will learn about absolute, relative, fixed, and sticky positioning. You will also use the z-index property." ] }, "workshop-cat-painting": { @@ -2771,7 +2770,7 @@ "lecture-working-with-attribute-selectors": { "title": "Робота з селекторами атрибутів", "intro": [ - "In these lectures, you will learn about attribute selectors and how to use them to target elements like links and lists." + "In these lessons, you will learn about attribute selectors and how to use them to target elements like links and lists." ] }, "workshop-balance-sheet": { @@ -2803,7 +2802,7 @@ "lecture-best-practices-for-responsive-web-design": { "title": "Найкращі практики адаптивного вебдизайну", "intro": [ - "In these lectures, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." + "In these lessons, you will learn about the best practices for responsive web design, the roles concepts like grid, flexbox, media queries, and media breakpoints play in responsive design, and more." ] }, "workshop-piano": { @@ -2834,7 +2833,7 @@ "lecture-working-with-css-variables": { "title": "Робота зі змінними в CSS", "intro": [ - "In these lectures, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." + "In these lessons, you will learn how to define and use custom properties (also known as CSS variables). You will also learn about the @property rule and how it works." ] }, "workshop-city-skyline": { @@ -2867,7 +2866,7 @@ "lecture-working-with-css-grid": { "title": "Робота з сіткою в CSS", "intro": [ - "In these lectures, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." + "In these lessons, you will learn about CSS grid, its several properties and how to use them, and how CSS grid differs from flexbox." ] }, "workshop-magazine": { @@ -2886,7 +2885,7 @@ "lecture-debugging-css": { "title": "Налагодження CSS", "intro": [ - "In this lecture, you'll learn how to debug CSS using your browser's developer tools and CSS validators." + "In this lesson, you'll learn how to debug CSS using your browser's developer tools and CSS validators." ] }, "lab-product-landing-page": { @@ -2911,7 +2910,7 @@ "lecture-animations-and-accessibility": { "title": "Анімація та доступність", "intro": [ - "In these lectures, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." + "In these lessons, you will learn about CSS animations and their accessibility concerns. You will also learn how prefers-reduced-motion can help address those accessibility concerns." ] }, "workshop-ferris-wheel": { @@ -2962,25 +2961,25 @@ "lecture-working-with-code-editors-and-ides": { "title": "Робота з редакторами коду та IDE", "intro": [ - "In these lectures, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." + "In these lessons, you will learn how to work with code editors and IDEs. You will learn various concepts about the most popular code editor, VS Code such as its installation, how to create a project in it, keyboard shortcuts, and extensions." ] }, "lecture-introduction-to-javascript": { "title": "Вступ до JavaScript", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." + "In these lessons, you will learn the fundamentals of JavaScript. Topics covered include, but are not limited to, variables, data types, how JavaScript interacts with HTML and CSS, and much more." ] }, "lecture-introduction-to-strings": { "title": "Introduction to Strings", "intro": [ - "In these lectures, you will learn how to work with strings and string concatenation." + "In these lessons, you will learn how to work with strings and string concatenation." ] }, "lecture-understanding-code-clarity": { "title": "Understanding Code Clarity", "intro": [ - "In these lectures, you will learn about comments in JavaScript and the role of semicolons in programming." + "In these lessons, you will learn about comments in JavaScript and the role of semicolons in programming." ] }, "workshop-greeting-bot": { @@ -3005,7 +3004,7 @@ "lecture-working-with-data-types": { "title": "Робота з типами даних", "intro": [ - "In the following lectures, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." + "In the following lessons, you will learn how to work with data types in JavaScript. You will also learn how dynamic typing differs from static typing, the typeof operator, and the typeof null bug." ] }, "review-javascript-variables-and-data-types": { @@ -3024,7 +3023,7 @@ "lecture-working-with-strings-in-javascript": { "title": "Робота з рядками в JavaScript", "intro": [ - "In these lectures, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." + "In these lessons, you will learn how to work with strings in JavaScript. You will learn how to access characters from a string, how to use template literals and interpolation, how to create a new line in strings, and much more." ] }, "workshop-teacher-chatbot": { @@ -3037,25 +3036,25 @@ "lecture-working-with-string-character-methods": { "title": "Working with String Character Methods", "intro": [ - "In this lecture you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." + "In this lesson you will learn about ASCII character encoding and how to use JavaScript's charCodeAt() and fromCharCode() methods to convert between characters and their numerical ASCII values." ] }, "lecture-working-with-string-search-and-slice-methods": { "title": "Working with String Search and Slice Methods", "intro": [ - "In this lecture you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." + "In this lesson you will learn how to search for substrings using the includes() method and how to extract portions of strings using the slice() method." ] }, "lecture-working-with-string-formatting-methods": { "title": "Working with String Formatting Methods", "intro": [ - "In this lecture you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." + "In this lesson you will learn how to format strings by changing their case using toUpperCase() and toLowerCase() methods, and how to remove whitespace using trim(), trimStart(), and trimEnd() methods." ] }, "lecture-working-with-string-modification-methods": { "title": "Working with String Modification Methods", "intro": [ - "In this lecture you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." + "In this lesson you will learn how to modify strings by replacing parts of them using the replace() method and how to repeat strings multiple times using the repeat() method." ] }, "review-javascript-strings": { @@ -3074,31 +3073,31 @@ "lecture-working-with-numbers-and-arithmetic-operators": { "title": "Working with Numbers and Arithmetic Operators", "intro": [ - "In these lectures you will learn about the number type, arithmetic operators, and using them with numbers and strings." + "In these lessons you will learn about the number type, arithmetic operators, and using them with numbers and strings." ] }, "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." + "In these lessons you will learn about operator precedence, the increment and decrement operators, and compound assignment operators." ] }, "lecture-working-with-comparison-and-boolean-operators": { "title": "Working with Comparison and Boolean Operators", "intro": [ - "In these lectures you will learn about booleans, and equality and inequality operators, and other comparison operators." + "In these lessons you will learn about booleans, and equality and inequality operators, and other comparison operators." ] }, "lecture-working-with-unary-and-bitwise-operators": { "title": "Working with Unary and Bitwise Operators", "intro": [ - "In these lectures you will learn about unary and bitwise operators." + "In these lessons you will learn about unary and bitwise operators." ] }, "lecture-working-with-conditional-logic-and-math-methods": { "title": "Working with Conditional Logic and Math Methods", "intro": [ - "In these lectures you will learn about conditional statements, binary logical operators, and the Math object." + "In these lessons you will learn about conditional statements, binary logical operators, and the Math object." ] }, "workshop-mathbot": { @@ -3117,7 +3116,7 @@ "lecture-working-with-numbers-and-common-number-methods": { "title": "Робота з числами й поширені методи роботи з ними", "intro": [ - "In these lectures, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." + "In these lessons, you will learn about numbers and common number methods. These include isNaN(), parseInt(), parseFloat(), and toFixed()." ] }, "review-javascript-math": { @@ -3136,7 +3135,7 @@ "lecture-understanding-comparisons-and-conditionals": { "title": "Знайомство з порівняннями й умовами", "intro": [ - "In these lectures, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." + "In these lessons, you will learn about comparison operators and conditionals. You will learn how the various conditionals differ from one another, and how comparisons work with null and undefined." ] }, "review-javascript-comparisons-and-conditionals": { @@ -3155,7 +3154,7 @@ "lecture-working-with-functions": { "title": "Робота з функціями", "intro": [ - "In these lectures, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " + "In these lessons, you will learn how to reuse a block of code with functions. You will learn what the purpose of a function is and how they work, and how scope works in programming. " ] }, "workshop-calculator": { @@ -3228,7 +3227,7 @@ "lecture-working-with-arrays": { "title": "Робота з масивами", "intro": [ - "In these lectures, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." + "In these lessons, you will learn how to work with JavaScript arrays. You will learn about what makes an array, one-dimensional and two-dimensional arrays, how to access and update the elements in an array, and much more." ] }, "workshop-shopping-list": { @@ -3259,7 +3258,7 @@ "lecture-working-with-common-array-methods": { "title": "Поширені методи роботи з масивами", "intro": [ - "In these lectures, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." + "In these lessons, you will learn about the array methods for performing more advanced operations like getting the position of an item in an array, checking if an array contains a certain element, copying an array, and lots more." ] }, "review-javascript-arrays": { @@ -3278,19 +3277,19 @@ "lecture-introduction-to-javascript-objects-and-their-properties": { "title": "Introduction to JavaScript Objects and Their Properties", "intro": [ - "In these lectures, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." + "In these lessons, you will learn the fundamentals of JavaScript objects, including how to create them, access their properties, and understand the difference between primitive and non-primitive data types." ] }, "lecture-working-with-optional-chaining-and-object-destructuring": { "title": "Working with Optional Chaining and Object Destructuring", "intro": [ - "In these lectures, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." + "In these lessons, you will learn about advanced object manipulation techniques in JavaScript, including the optional chaining operator and object destructuring syntax." ] }, "lecture-working-with-json": { "title": "Working with JSON", "intro": [ - "In these lectures, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." + "In these lessons, you will learn about JavaScript Object Notation (JSON), including how to access JSON data and use the JSON.parse() and JSON.stringify() methods." ] }, "workshop-recipe-tracker": { @@ -3328,7 +3327,7 @@ "lecture-working-with-loops": { "title": "Робота з циклами", "intro": [ - "Loops are an essential part of JavaScript. That's why the following lectures have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." + "Loops are an essential part of JavaScript. That's why the following lessons have been prepared for you to learn about the different types of loops and how they work, and also how iteration works." ] }, "workshop-sentence-analyzer": { @@ -3396,19 +3395,19 @@ "lecture-working-with-types-and-objects": { "title": "Working with Types and Objects", "intro": [ - "In these lectures you will learn about string objects, the toString() method, the Number constructor and more." + "In these lessons you will learn about string objects, the toString() method, the Number constructor and more." ] }, "lecture-working-with-arrays-variables-and-naming-practices": { "title": "Working with Arrays, Variables, and Naming Practices", "intro": [ - "In these lectures you will learn about common practices for naming variables and functions, and how to work with arrays." + "In these lessons you will learn about common practices for naming variables and functions, and how to work with arrays." ] }, "lecture-working-with-code-quality-and-execution-concepts": { "title": "Working with Code Quality and Execution Concepts", "intro": [ - "In these lectures you will learn what are linters and formatters, what is memory management, and closures." + "In these lessons you will learn what are linters and formatters, what is memory management, and closures." ] }, "lab-largest-number-finder": { @@ -3444,7 +3443,7 @@ "lecture-the-var-keyword-and-hoisting": { "title": "Ключове слово var та підняття", "intro": [ - "In these lectures, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." + "In these lessons, you will learn about the var keyword and why it is not recommended for use anymore. You will also learn about hoisting in JavaScript so you can avoid subtle bugs in your code." ] }, "lab-title-case-converter": { @@ -3469,13 +3468,19 @@ "lecture-understanding-modules-imports-and-exports": { "title": "Знайомство з модулями, імпортом та експортом", "intro": [ - "In this lecture, you will learn about modules, imports, and exports in JavaScript." + "In this lesson, you will learn about modules, imports, and exports in JavaScript." ] }, "lecture-working-with-the-arguments-object-and-rest-parameters": { "title": "Working with the arguments Object and Rest Parameters", "intro": [ - "In these lectures, you will learn how to work with the arguments object and rest parameter syntax." + "In these lessons, you will learn how to work with the arguments object and rest parameter syntax." + ] + }, + "lab-unique-sorted-union": { + "title": "Implement a Unique Sorted Union", + "intro": [ + "In this lab, you will create a function that takes two or more arrays and returns a new array of unique values in the order of the original provided arrays." ] }, "lab-password-generator": { @@ -3530,7 +3535,7 @@ "lecture-working-with-higher-order-functions-and-callbacks": { "title": "Робота з функціями вищого порядку та зворотного виклику", "intro": [ - "In these lectures, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." + "In these lessons, you will learn how to work with higher order functions and callbacks. The higher order functions you will learn include map(), filter(), reduce(), sort(), every(), and some(). You will also learn how to chain these methods together to achieve your desired results." ] }, "workshop-library-manager": { @@ -3575,6 +3580,12 @@ "In this lab you will build a sum all primes calculator that takes a number and returns the sum of all prime numbers that are less than or equal to that number." ] }, + "lab-range-based-lcm-calculator": { + "title": "Implement a Range-Based LCM Calculator", + "intro": [ + "In this lab, you will create a function that takes an array of two numbers and returns the least common multiple (LCM) of those two numbers and all the numbers between them." + ] + }, "lab-deep-flattening-tool": { "title": "Create a Deep Flattening Tool", "intro": [ @@ -3603,7 +3614,7 @@ "lecture-working-with-the-dom-click-events-and-web-apis": { "title": "Робота з DOM, подіями click та web API", "intro": [ - "In these lectures, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." + "In these lessons, you will learn how to work with the Document Object Model (DOM), the addEventListener() method and events, and web APIs." ] }, "workshop-storytelling-app": { @@ -3627,7 +3638,7 @@ "lecture-understanding-the-event-object-and-event-delegation": { "title": "Знайомство з подіями та їх делегуванням", "intro": [ - "In these lectures, you will learn about the event object, the change event, event bubbling, and event delegation." + "In these lessons, you will learn about the event object, the change event, event bubbling, and event delegation." ] }, "workshop-music-instrument-filter": { @@ -3678,7 +3689,7 @@ "lecture-understanding-aria-expanded-aria-live-and-common-aria-states": { "title": "Understanding aria-expanded, aria-live, and Common ARIA States", "intro": [ - "In these lectures you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." + "In these lessons you will learn more about ARIA attributes like aria-expanded, aria-live, and common ARIA states." ] }, "workshop-planets-tablist": { @@ -3716,7 +3727,7 @@ "lecture-debugging-techniques": { "title": "Техніки налагодження", "intro": [ - "In these lectures, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." + "In these lessons, you will learn about the common errors in JavaScript and the techniques you can use to fix them – a process called debugging." ] }, "lab-random-background-color-changer": { @@ -3741,7 +3752,7 @@ "lecture-working-with-regular-expressions": { "title": "Робота з регулярними виразами", "intro": [ - "In these lectures, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." + "In these lessons, you will learn about regular expressions in JavaScript. You will learn about the methods for working with regular expressions, modifiers, character classes, lookaheads, lookbehinds, back-references, quantifiers, and more." ] }, "workshop-spam-filter": { @@ -3805,7 +3816,7 @@ "lecture-understanding-form-validation": { "title": "Знайомство з валідацією форм", "intro": [ - "In these lectures, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." + "In these lessons, you will learn about form validation in JavaScript. You will learn about the various ways to validate forms, how the preventDefault() method works, and how the submit event works." ] }, "workshop-calorie-counter": { @@ -3836,7 +3847,7 @@ "lecture-working-with-dates": { "title": "Робота з датами", "intro": [ - "In these lectures, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." + "In these lessons, you will learn about the JavaScript date object. You will learn about the methods for working with dates and how to format dates." ] }, "lab-date-conversion": { @@ -3859,7 +3870,7 @@ "lecture-working-with-audio-and-video": { "title": "Робота з аудіо та відео", "intro": [ - "In these lectures, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." + "In these lessons, you will learn how to work with audio and video files using JavaScript. You will learn about the Audio and Video constructors, their methods and properties, audio and video formats, codecs, the HTMLMediaElement API, and much more." ] }, "workshop-music-player": { @@ -3889,7 +3900,7 @@ "lecture-working-with-maps-and-sets": { "title": "Робота з map та set", "intro": [ - "In these lectures, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." + "In these lessons, you will learn about JavaScript Map and Set. You will also learn how they both differ from WeakSets and WeakMaps." ] }, "workshop-plant-nursery-catalog": { @@ -3919,7 +3930,7 @@ "lecture-working-with-client-side-storage-and-crud-operations": { "title": "Робота зі сховищем на клієнтській стороні та операціями CRUD", "intro": [ - "In these lectures, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." + "In these lessons, you will learn about client-side storage and CRUD operations in JavaScript. You will learn about localStorage and sessionStorage alongside their methods and properties, cookies, the Cache API, IndexDB, and much more." ] }, "workshop-todo-app": { @@ -3950,7 +3961,7 @@ "lecture-understanding-how-to-work-with-classes-in-javascript": { "title": "Знайомство з класами в JavaScript", "intro": [ - "In these lectures, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." + "In these lessons, you will learn about classes in JavaScript. You will learn about inheritance, the this keyword, static properties and methods, and more." ] }, "workshop-shopping-cart": { @@ -3987,7 +3998,7 @@ "lecture-understanding-recursion-and-the-call-stack": { "title": "Знайомство з рекурсією та стеком викликів", "intro": [ - "In this lecture, you will learn about recursion and the call stack." + "In this lesson, you will learn about recursion and the call stack." ] }, "workshop-decimal-to-binary-converter": { @@ -4019,13 +4030,13 @@ "lecture-understanding-functional-programming": { "title": "Знайомство з функціональним програмуванням", "intro": [ - "In these lectures, you will learn about functional programming and how to nest functions using a technique called currying." + "In these lessons, you will learn about functional programming and how to nest functions using a technique called currying." ] }, "workshop-recipe-ingredient-converter": { "title": "Створіть конвертер інгредієнтів", "intro": [ - "In the previous lectures, you learned the core concepts behind functional programming and currying.", + "In the previous lessons, you learned the core concepts behind functional programming and currying.", "Зараз ви зможете застосувати на практиці все те, що вивчили про каррування та функціональне програмування, створивши застосунок із конвертацією інгредієнтів." ] }, @@ -4051,7 +4062,7 @@ "lecture-understanding-asynchronous-programming": { "title": "Знайомство з асинхронним програмуванням", "intro": [ - "In these lectures, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." + "In these lessons, you will learn about asynchronous programming in JavaScript. You will learn about the differences between synchronous and asynchronous programming, how the async keyword works, the Fetch API, promises, async/await, the Geolocation API, and much more." ] }, "workshop-fcc-authors-page": { @@ -4098,13 +4109,13 @@ "lecture-introduction-to-javascript-libraries-and-frameworks": { "title": "Вступ до бібліотек і фреймворків JavaScript", "intro": [ - "In these lectures, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." + "In these lessons, you will get an introduction to JavaScript libraries and frameworks. You will learn about the roles of JavaScript libraries and frameworks, single page applications (SPAs) and the issue surrounding them, and React, the most popular frontend JavaScript library." ] }, "workshop-reusable-mega-navbar": { "title": "Створіть Navbar, придатний для повторного використання", "intro": [ - "In the previous lectures, you learned how to work with components in React.", + "In the previous lessons, you learned how to work with components in React.", "У цьому практичному занятті ви створите компонент Navbar, придатний для повторного використання, за допомогою React." ] }, @@ -4117,7 +4128,7 @@ "lecture-working-with-data-in-react": { "title": "Робота з даними в React", "intro": [ - "In these lectures, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." + "In these lessons, you will learn how to work with data in React. You will learn about props and how to pass them around, conditional rendering, how to render lists, and how to use inline styles." ] }, "workshop-reusable-profile-card-component": { @@ -4148,7 +4159,7 @@ "lecture-working-with-state-and-responding-to-events-in-react": { "title": "Робота зі станом та відповідь на подію в React", "intro": [ - "In these lectures, you will learn about working with state and responding to events with React." + "In these lessons, you will learn about working with state and responding to events with React." ] }, "workshop-toggle-text-app": { @@ -4167,7 +4178,7 @@ "lecture-understanding-effects-and-referencing-values-in-react": { "title": "Знайомство з ефектами та посиланнями на значення в React", "intro": [ - "In these lectures, you will learn about effects and referencing values with React." + "In these lessons, you will learn about effects and referencing values with React." ] }, "workshop-fruit-search-app": { @@ -4199,7 +4210,7 @@ "lecture-working-with-forms-in-react": { "title": "Робота з формами в React", "intro": [ - "In these lectures, you will learn about working with forms in React." + "In these lessons, you will learn about working with forms in React." ] }, "workshop-superhero-application-form": { @@ -4218,7 +4229,7 @@ "lecture-working-with-data-fetching-and-memoization-in-react": { "title": "Робота з обробкою даних та мемоїзацією в React", "intro": [ - "In these lectures, you will learn about data fetching and memoization in React." + "In these lessons, you will learn about data fetching and memoization in React." ] }, "workshop-shopping-list-app": { @@ -4237,7 +4248,7 @@ "lecture-routing-react-frameworks-and-dependency-management-tools": { "title": "Маршрутизація, фреймворки React і засоби управління залежностями", "intro": [ - "In these lectures, you will learn about routing in React, React frameworks, and dependency management tools." + "In these lessons, you will learn about routing in React, React frameworks, and dependency management tools." ] }, "lab-tic-tac-toe": { @@ -4250,7 +4261,7 @@ "lecture-react-strategies-and-debugging": { "title": "Стратегії та налагодження в React", "intro": [ - "In these lectures, you will learn about different strategies and debugging in React." + "In these lessons, you will learn about different strategies and debugging in React." ] }, "review-react-forms-data-fetching-and-routing": { @@ -4269,7 +4280,7 @@ "lecture-understanding-performance-in-web-applications": { "title": "Знайомство з продуктивністю у вебзастосунках", "intro": [ - "In these lectures, you will learn performance in web applications." + "In these lessons, you will learn performance in web applications." ] }, "review-web-performance": { @@ -4286,7 +4297,7 @@ "lecture-understanding-the-different-types-of-testing": { "title": "Знайомство з різними видами тестування", "intro": [ - "In these lectures, you will learn about the different types of testing." + "In these lessons, you will learn about the different types of testing." ] }, "review-testing": { @@ -4303,7 +4314,7 @@ "lecture-working-with-css-libraries-and-frameworks": { "title": "Робота з бібліотеками та фреймворками CSS", "intro": [ - "In these lectures, you will learn how to work with CSS libraries and frameworks." + "In these lessons, you will learn how to work with CSS libraries and frameworks." ] }, "workshop-error-message-component": { @@ -4354,19 +4365,19 @@ "lecture-introduction-to-typescript": { "title": "Вступ до TypeScript", "intro": [ - "In these lectures, you will learn what TypeScript is and how to use it." + "In these lessons, you will learn what TypeScript is and how to use it." ] }, "lecture-working-with-generics-and-type-narrowing": { "title": "Working with Generics and Type Narrowing", "intro": [ - "In these lectures, you will learn about generics and type narrowing in TypeScript." + "In these lessons, you will learn about generics and type narrowing in TypeScript." ] }, "lecture-working-with-typescript-configuration-files": { "title": "Working with TypeScript Configuration Files", "intro": [ - "In this lecture, you will learn about TypeScript configuration files and how to use them." + "In this lesson, you will learn about TypeScript configuration files and how to use them." ] }, "trvf": { @@ -4417,7 +4428,7 @@ "lecture-introduction-to-python": { "title": "Вступ до Python", "intro": [ - "In these lectures, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." + "In these lessons, you will learn the fundamentals of Python. You'll learn about variables, data types, operators, control flow, functions, and more." ] }, "workshop-caesar-cipher": { @@ -4446,7 +4457,7 @@ "lecture-working-with-loops-and-sequences": { "title": "Робота з циклами та послідовностями", "intro": [ - "У цих відеолекціях ви дізнаєтесь про цикли та послідовності." + "Learn about Working with Loops and Sequences in these lessons." ] }, "workshop-pin-extractor": { @@ -4477,12 +4488,12 @@ "lecture-working-with-dictionaries-and-sets": { "title": "Робота зі словниками та наборами", "intro": [ - "У цих відеолекціях ви дізнаєтесь, як працювати зі словниками і наборами." + "Learn about working with dictionaries and sets in these lessons." ] }, "lecture-working-with-modules": { "title": "Робота з модулями", - "intro": ["У цих відеолекціях ви дізнаєтесь, як працювати з модулями."] + "intro": ["Learn about working with modules in these lessons."] }, "workshop-medical-data-validator": { "title": "Build a Medical Data Validator", @@ -4510,7 +4521,7 @@ "lecture-understanding-error-handling": { "title": "Знайомство з обробкою помилок", "intro": [ - "In these lectures, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." + "In these lessons, you will learn about error handling in Python. You will learn about the different types of errors, some good debugging practices, what exceptions are, and how to handle them." ] }, "lab-isbn-validator": { @@ -4531,7 +4542,7 @@ }, "lecture-classes-and-objects": { "title": "Класи та об’єкти", - "intro": ["У цих відеолекціях ви дізнаєтесь про класи та об’єкти."] + "intro": ["Learn about Classes and Objects in these lessons."] }, "workshop-musical-instrument-inventory": { "title": "Build a Musical Instrument Inventory", @@ -4559,7 +4570,7 @@ "lecture-understanding-object-oriented-programming-and-encapsulation": { "title": "Знайомство з об’єктноорієнтованим програмуванням та інкапсуляцією", "intro": [ - "У цих відеолекціях ви дізнаєтесь про об’єктноорієнтоване програмування та інкапсуляцію." + "Learn about Understanding Object Oriented Programming and Encapsulation in these lessons." ] }, "workshop-placeholder-oop-1": { @@ -4573,7 +4584,7 @@ "lecture-understanding-inheritance-and-polymorphism": { "title": "Знайомство з успадкуванням та поліморфізмом", "intro": [ - "У цих відеолекціях ви дізнаєтесь про успадкування та поліморфізм." + "Learn about Understanding Inheritance and Polymorphism in these lessons." ] }, "workshop-media-catalogue": { @@ -4590,7 +4601,7 @@ }, "lecture-understanding-abstraction": { "title": "Знайомство з абстракцією", - "intro": ["У цих відеолекціях ви дізнаєтесь про абстракцію."] + "intro": ["Learn about Understanding Abstraction in these lessons."] }, "workshop-placeholder-oop-3": { "title": "Placeholder - Waiting for title", @@ -4615,12 +4626,14 @@ "lecture-working-with-common-data-structures": { "title": "Робота з поширеними структурами даних", "intro": [ - "У цих відеолекціях ви дізнаєтесь про поширені структури даних." + "Learn about Working with Common Data Structures in these lessons." ] }, "workshop-linked-list-class": { - "title": "Створіть клас «Linked List»", - "intro": [""] + "title": "Build a Linked List", + "intro": [ + "In this workshop, you'll practice working with data structures by building a linked list." + ] }, "lab-hash-table": { "title": "Створіть хеш-таблицю", @@ -4644,7 +4657,7 @@ "title": "Алгоритми пошуку та сортування", "intro": [ "Learn about fundamental searching and sorting algorithms, including linear search, binary search, and merge sort.", - "These lectures cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." + "These lessons cover algorithm implementations, time and space complexity analysis, and the divide and conquer programming paradigm." ] }, "workshop-binary-search": { @@ -4706,7 +4719,7 @@ "lecture-understanding-graphs-and-trees": { "title": "Знайомство з графами та деревами", "intro": [ - "In this lecture, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." + "In this lesson, you will learn about fundamental data structures like graphs, trees, and their practical applications in computer science." ] }, "workshop-shortest-path-algorithm": { @@ -4746,7 +4759,7 @@ "lecture-understanding-dynamic-programming": { "title": "Знайомство з динамічним програмуванням", "intro": [ - "In this lecture, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." + "In this lesson, you will learn about dynamic programming, an algorithmic technique used to solve complex problems efficiently by breaking them down into simpler subproblems." ] }, "lab-nth-fibonacci-number": { @@ -4774,7 +4787,7 @@ "lecture-understanding-the-command-line-and-working-with-bash": { "title": "Understanding the Command Line and Working with Bash", "intro": [ - "Learn about the Command Line and Working with Bash in these lectures." + "Learn about the Command Line and Working with Bash in these lessons." ] }, "workshop-bash-boilerplate": { @@ -4797,7 +4810,7 @@ "lecture-working-with-relational-databases": { "title": "Working with Relational Databases", "intro": [ - "Learn how to work with Relational Databases in these lectures." + "Learn how to work with Relational Databases in these lessons." ] }, "workshop-database-of-video-game-characters": { @@ -4825,7 +4838,7 @@ }, "lecture-understanding-bash-scripting": { "title": "Understanding Bash Scripting", - "intro": ["Learn about Bash Scripting in these lectures."] + "intro": ["Learn about Bash Scripting in these lessons."] }, "workshop-bash-five-programs": { "title": "Створіть п’ять програм", @@ -4847,7 +4860,7 @@ "lecture-working-with-sql": { "title": "Working With SQL", "intro": [ - "In these lectures, you will learn about SQL injection, normalization, and the N+1 problem." + "In these lessons, you will learn about SQL injection, normalization, and the N+1 problem." ] }, "workshop-sql-student-database-part-1": { @@ -4901,7 +4914,7 @@ }, "lecture-working-with-nano": { "title": "Working With Nano", - "intro": ["Learn about Nano in this lecture."] + "intro": ["Learn about Nano in this lesson."] }, "workshop-castle": { "title": "Створіть замок", @@ -4912,12 +4925,12 @@ }, "lecture-introduction-to-git-and-github": { "title": "Introduction to Git and GitHub", - "intro": ["Learn how to work with Git and GitHub in these lectures."] + "intro": ["Learn how to work with Git and GitHub in these lessons."] }, "lecture-working-with-code-reviews-branching-deployment-and-ci-cd": { "title": "Working With Code Reviews, Branching, Deployment, and CI/CD", "intro": [ - "Learn about code reviews, branching, deployment, and CI/CD in these lectures." + "Learn about code reviews, branching, deployment, and CI/CD in these lessons." ] }, "workshop-sql-reference-object": { diff --git a/client/i18n/locales/ukrainian/translations.json b/client/i18n/locales/ukrainian/translations.json index b4bad7a4e6f..22977baebfc 100644 --- a/client/i18n/locales/ukrainian/translations.json +++ b/client/i18n/locales/ukrainian/translations.json @@ -653,7 +653,7 @@ "invalid-transcript": "Ваше посилання на стенограму невірне. Воно повинне мати такий формат: <1>https://learn.microsoft.com/LOCALE/users/USERNAME/transcript/ID — перевірте, чи текст ВЕЛИКИМИ ЛІТЕРАМИ правильний." }, "block-type": { - "lecture": "Лекція", + "lecture": "Theory", "workshop": "Практичне заняття", "lab": "Лабораторна робота", "review": "Повторення",