From 9823536d1d818aa70e25181b735d229d825973c0 Mon Sep 17 00:00:00 2001 From: leestott Date: Sun, 24 Aug 2025 13:57:14 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=8C=90=20Update=20translations=20via=20Co?= =?UTF-8?q?-op=20Translator?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../README.md | 215 ++++++++++ .../assignment.md | 23 + .../2-github-basics/README.md | 337 +++++++++++++++ .../3-accessibility/README.md | 241 +++++++++++ .../3-accessibility/assignment.md | 26 ++ .../de/1-getting-started-lessons/README.md | 29 ++ .../de/2-js-basics/1-data-types/README.md | 213 ++++++++++ .../de/2-js-basics/1-data-types/assignment.md | 23 + .../2-js-basics/2-functions-methods/README.md | 208 +++++++++ .../2-functions-methods/assignment.md | 25 ++ .../2-js-basics/3-making-decisions/README.md | 230 ++++++++++ .../3-making-decisions/assignment.md | 52 +++ .../de/2-js-basics/4-arrays-loops/README.md | 145 +++++++ .../2-js-basics/4-arrays-loops/assignment.md | 25 ++ translations/de/2-js-basics/README.md | 26 ++ .../de/3-terrarium/1-intro-to-html/README.md | 247 +++++++++++ .../3-terrarium/1-intro-to-html/assignment.md | 23 + .../de/3-terrarium/2-intro-to-css/README.md | 282 ++++++++++++ .../3-terrarium/2-intro-to-css/assignment.md | 23 + .../3-intro-to-DOM-and-closures/README.md | 231 ++++++++++ .../3-intro-to-DOM-and-closures/assignment.md | 23 + translations/de/3-terrarium/README.md | 43 ++ .../de/3-terrarium/solution/README.md | 37 ++ translations/de/4-typing-game/README.md | 42 ++ .../de/4-typing-game/solution/README.md | 13 + .../de/4-typing-game/typing-game/README.md | 351 +++++++++++++++ .../4-typing-game/typing-game/assignment.md | 24 ++ .../1-about-browsers/README.md | 180 ++++++++ .../1-about-browsers/assignment.md | 23 + .../2-forms-browsers-local-storage/README.md | 238 +++++++++++ .../assignment.md | 23 + .../README.md | 174 ++++++++ .../assignment.md | 21 + translations/de/5-browser-extension/README.md | 39 ++ .../de/5-browser-extension/solution/README.md | 39 ++ .../solution/translation/README.es.md | 39 ++ .../solution/translation/README.fr.md | 39 ++ .../solution/translation/README.hi.md | 39 ++ .../solution/translation/README.it.md | 39 ++ .../solution/translation/README.ja.md | 39 ++ .../solution/translation/README.ms.md | 39 ++ .../de/5-browser-extension/start/README.md | 39 ++ .../de/6-space-game/1-introduction/README.md | 236 +++++++++++ .../6-space-game/1-introduction/assignment.md | 23 + .../2-drawing-to-canvas/README.md | 228 ++++++++++ .../2-drawing-to-canvas/assignment.md | 23 + .../3-moving-elements-around/README.md | 400 ++++++++++++++++++ .../3-moving-elements-around/assignment.md | 23 + .../4-collision-detection/README.md | 309 ++++++++++++++ .../4-collision-detection/assignment.md | 23 + .../4-collision-detection/solution/README.md | 13 + .../4-collision-detection/your-work/README.md | 13 + .../de/6-space-game/5-keeping-score/README.md | 201 +++++++++ .../5-keeping-score/assignment.md | 23 + .../5-keeping-score/solution/README.md | 13 + .../5-keeping-score/your-work/README.md | 13 + .../de/6-space-game/6-end-condition/README.md | 234 ++++++++++ .../6-end-condition/assignment.md | 31 ++ .../6-end-condition/solution/README.md | 13 + .../6-end-condition/your-work/README.md | 13 + translations/de/6-space-game/README.md | 43 ++ .../de/6-space-game/solution/README.md | 13 + .../7-bank-project/1-template-route/README.md | 320 ++++++++++++++ .../1-template-route/assignment.md | 26 ++ .../de/7-bank-project/2-forms/README.md | 310 ++++++++++++++ .../de/7-bank-project/2-forms/assignment.md | 25 ++ .../de/7-bank-project/3-data/README.md | 345 +++++++++++++++ .../de/7-bank-project/3-data/assignment.md | 27 ++ .../4-state-management/README.md | 292 +++++++++++++ .../4-state-management/assignment.md | 37 ++ translations/de/7-bank-project/README.md | 33 ++ translations/de/7-bank-project/api/README.md | 46 ++ .../de/7-bank-project/solution/README.md | 25 ++ .../1-using-a-code-editor/README.md | 156 +++++++ .../1-using-a-code-editor/assignment.md | 261 ++++++++++++ translations/de/CODE_OF_CONDUCT.md | 21 + translations/de/CONTRIBUTING.md | 20 + translations/de/README.md | 204 +++++++++ translations/de/SECURITY.md | 49 +++ translations/de/SUPPORT.md | 23 + translations/de/_404.md | 19 + translations/de/docs/_navbar.md | 32 ++ translations/de/docs/_sidebar.md | 49 +++ translations/de/for-teachers.md | 45 ++ translations/de/lesson-template/README.md | 63 +++ translations/de/lesson-template/assignment.md | 21 + translations/de/quiz-app/README.md | 189 +++++++++ .../README.md | 215 ++++++++++ .../assignment.md | 23 + .../2-github-basics/README.md | 337 +++++++++++++++ .../3-accessibility/README.md | 242 +++++++++++ .../3-accessibility/assignment.md | 27 ++ .../es/1-getting-started-lessons/README.md | 29 ++ .../es/2-js-basics/1-data-types/README.md | 213 ++++++++++ .../es/2-js-basics/1-data-types/assignment.md | 23 + .../2-js-basics/2-functions-methods/README.md | 208 +++++++++ .../2-functions-methods/assignment.md | 25 ++ .../2-js-basics/3-making-decisions/README.md | 230 ++++++++++ .../3-making-decisions/assignment.md | 52 +++ .../es/2-js-basics/4-arrays-loops/README.md | 145 +++++++ .../2-js-basics/4-arrays-loops/assignment.md | 25 ++ translations/es/2-js-basics/README.md | 26 ++ .../es/3-terrarium/1-intro-to-html/README.md | 247 +++++++++++ .../3-terrarium/1-intro-to-html/assignment.md | 23 + .../es/3-terrarium/2-intro-to-css/README.md | 282 ++++++++++++ .../3-terrarium/2-intro-to-css/assignment.md | 23 + .../3-intro-to-DOM-and-closures/README.md | 228 ++++++++++ .../3-intro-to-DOM-and-closures/assignment.md | 23 + translations/es/3-terrarium/README.md | 43 ++ .../es/3-terrarium/solution/README.md | 37 ++ translations/es/4-typing-game/README.md | 42 ++ .../es/4-typing-game/solution/README.md | 13 + .../es/4-typing-game/typing-game/README.md | 351 +++++++++++++++ .../4-typing-game/typing-game/assignment.md | 24 ++ .../1-about-browsers/README.md | 180 ++++++++ .../1-about-browsers/assignment.md | 23 + .../2-forms-browsers-local-storage/README.md | 238 +++++++++++ .../assignment.md | 23 + .../README.md | 174 ++++++++ .../assignment.md | 21 + translations/es/5-browser-extension/README.md | 39 ++ .../es/5-browser-extension/solution/README.md | 39 ++ .../solution/translation/README.es.md | 39 ++ .../solution/translation/README.fr.md | 39 ++ .../solution/translation/README.hi.md | 39 ++ .../solution/translation/README.it.md | 39 ++ .../solution/translation/README.ja.md | 39 ++ .../solution/translation/README.ms.md | 39 ++ .../es/5-browser-extension/start/README.md | 39 ++ .../es/6-space-game/1-introduction/README.md | 236 +++++++++++ .../6-space-game/1-introduction/assignment.md | 23 + .../2-drawing-to-canvas/README.md | 228 ++++++++++ .../2-drawing-to-canvas/assignment.md | 23 + .../3-moving-elements-around/README.md | 400 ++++++++++++++++++ .../3-moving-elements-around/assignment.md | 23 + .../4-collision-detection/README.md | 309 ++++++++++++++ .../4-collision-detection/assignment.md | 23 + .../4-collision-detection/solution/README.md | 13 + .../4-collision-detection/your-work/README.md | 13 + .../es/6-space-game/5-keeping-score/README.md | 201 +++++++++ .../5-keeping-score/assignment.md | 23 + .../5-keeping-score/solution/README.md | 13 + .../5-keeping-score/your-work/README.md | 13 + .../es/6-space-game/6-end-condition/README.md | 234 ++++++++++ .../6-end-condition/assignment.md | 31 ++ .../6-end-condition/solution/README.md | 13 + .../6-end-condition/your-work/README.md | 13 + translations/es/6-space-game/README.md | 43 ++ .../es/6-space-game/solution/README.md | 13 + .../7-bank-project/1-template-route/README.md | 320 ++++++++++++++ .../1-template-route/assignment.md | 26 ++ .../es/7-bank-project/2-forms/README.md | 311 ++++++++++++++ .../es/7-bank-project/2-forms/assignment.md | 25 ++ .../es/7-bank-project/3-data/README.md | 345 +++++++++++++++ .../es/7-bank-project/3-data/assignment.md | 27 ++ .../4-state-management/README.md | 292 +++++++++++++ .../4-state-management/assignment.md | 37 ++ translations/es/7-bank-project/README.md | 33 ++ translations/es/7-bank-project/api/README.md | 46 ++ .../es/7-bank-project/solution/README.md | 25 ++ .../1-using-a-code-editor/README.md | 156 +++++++ .../1-using-a-code-editor/assignment.md | 245 +++++++++++ translations/es/CODE_OF_CONDUCT.md | 21 + translations/es/CONTRIBUTING.md | 20 + translations/es/README.md | 205 +++++++++ translations/es/SECURITY.md | 49 +++ translations/es/SUPPORT.md | 23 + translations/es/_404.md | 19 + translations/es/docs/_navbar.md | 32 ++ translations/es/docs/_sidebar.md | 49 +++ translations/es/for-teachers.md | 45 ++ translations/es/lesson-template/README.md | 63 +++ translations/es/lesson-template/assignment.md | 21 + translations/es/quiz-app/README.md | 189 +++++++++ .../README.md | 214 ++++++++++ .../assignment.md | 23 + .../2-github-basics/README.md | 337 +++++++++++++++ .../3-accessibility/README.md | 242 +++++++++++ .../3-accessibility/assignment.md | 28 ++ .../fa/1-getting-started-lessons/README.md | 29 ++ .../fa/2-js-basics/1-data-types/README.md | 213 ++++++++++ .../fa/2-js-basics/1-data-types/assignment.md | 23 + .../2-js-basics/2-functions-methods/README.md | 208 +++++++++ .../2-functions-methods/assignment.md | 25 ++ .../2-js-basics/3-making-decisions/README.md | 230 ++++++++++ .../3-making-decisions/assignment.md | 52 +++ .../fa/2-js-basics/4-arrays-loops/README.md | 145 +++++++ .../2-js-basics/4-arrays-loops/assignment.md | 25 ++ translations/fa/2-js-basics/README.md | 26 ++ .../fa/3-terrarium/1-intro-to-html/README.md | 247 +++++++++++ .../3-terrarium/1-intro-to-html/assignment.md | 23 + .../fa/3-terrarium/2-intro-to-css/README.md | 282 ++++++++++++ .../3-terrarium/2-intro-to-css/assignment.md | 23 + .../3-intro-to-DOM-and-closures/README.md | 230 ++++++++++ .../3-intro-to-DOM-and-closures/assignment.md | 23 + translations/fa/3-terrarium/README.md | 43 ++ .../fa/3-terrarium/solution/README.md | 37 ++ translations/fa/4-typing-game/README.md | 42 ++ .../fa/4-typing-game/solution/README.md | 13 + .../fa/4-typing-game/typing-game/README.md | 351 +++++++++++++++ .../4-typing-game/typing-game/assignment.md | 24 ++ .../1-about-browsers/README.md | 180 ++++++++ .../1-about-browsers/assignment.md | 23 + .../2-forms-browsers-local-storage/README.md | 238 +++++++++++ .../assignment.md | 23 + .../README.md | 174 ++++++++ .../assignment.md | 21 + translations/fa/5-browser-extension/README.md | 39 ++ .../fa/5-browser-extension/solution/README.md | 39 ++ .../solution/translation/README.es.md | 39 ++ .../solution/translation/README.fr.md | 39 ++ .../solution/translation/README.hi.md | 39 ++ .../solution/translation/README.it.md | 39 ++ .../solution/translation/README.ja.md | 39 ++ .../solution/translation/README.ms.md | 39 ++ .../fa/5-browser-extension/start/README.md | 39 ++ .../fa/6-space-game/1-introduction/README.md | 236 +++++++++++ .../6-space-game/1-introduction/assignment.md | 23 + .../2-drawing-to-canvas/README.md | 228 ++++++++++ .../2-drawing-to-canvas/assignment.md | 23 + .../3-moving-elements-around/README.md | 400 ++++++++++++++++++ .../3-moving-elements-around/assignment.md | 23 + .../4-collision-detection/README.md | 309 ++++++++++++++ .../4-collision-detection/assignment.md | 23 + .../4-collision-detection/solution/README.md | 13 + .../4-collision-detection/your-work/README.md | 13 + .../fa/6-space-game/5-keeping-score/README.md | 201 +++++++++ .../5-keeping-score/assignment.md | 23 + .../5-keeping-score/solution/README.md | 13 + .../5-keeping-score/your-work/README.md | 13 + .../fa/6-space-game/6-end-condition/README.md | 234 ++++++++++ .../6-end-condition/assignment.md | 31 ++ .../6-end-condition/solution/README.md | 13 + .../6-end-condition/your-work/README.md | 13 + translations/fa/6-space-game/README.md | 43 ++ .../fa/6-space-game/solution/README.md | 13 + .../7-bank-project/1-template-route/README.md | 320 ++++++++++++++ .../1-template-route/assignment.md | 26 ++ .../fa/7-bank-project/2-forms/README.md | 310 ++++++++++++++ .../fa/7-bank-project/2-forms/assignment.md | 25 ++ .../fa/7-bank-project/3-data/README.md | 345 +++++++++++++++ .../fa/7-bank-project/3-data/assignment.md | 27 ++ .../4-state-management/README.md | 296 +++++++++++++ .../4-state-management/assignment.md | 37 ++ translations/fa/7-bank-project/README.md | 33 ++ translations/fa/7-bank-project/api/README.md | 46 ++ .../fa/7-bank-project/solution/README.md | 25 ++ .../1-using-a-code-editor/README.md | 155 +++++++ .../1-using-a-code-editor/assignment.md | 245 +++++++++++ translations/fa/CODE_OF_CONDUCT.md | 21 + translations/fa/CONTRIBUTING.md | 20 + translations/fa/README.md | 204 +++++++++ translations/fa/SECURITY.md | 49 +++ translations/fa/SUPPORT.md | 23 + translations/fa/_404.md | 19 + translations/fa/docs/_navbar.md | 32 ++ translations/fa/docs/_sidebar.md | 49 +++ translations/fa/for-teachers.md | 45 ++ translations/fa/lesson-template/README.md | 63 +++ translations/fa/lesson-template/assignment.md | 21 + translations/fa/quiz-app/README.md | 189 +++++++++ .../README.md | 215 ++++++++++ .../assignment.md | 23 + .../2-github-basics/README.md | 337 +++++++++++++++ .../3-accessibility/README.md | 242 +++++++++++ .../3-accessibility/assignment.md | 28 ++ .../hi/1-getting-started-lessons/README.md | 29 ++ .../hi/2-js-basics/1-data-types/README.md | 213 ++++++++++ .../hi/2-js-basics/1-data-types/assignment.md | 23 + .../2-js-basics/2-functions-methods/README.md | 208 +++++++++ .../2-functions-methods/assignment.md | 25 ++ .../2-js-basics/3-making-decisions/README.md | 230 ++++++++++ .../3-making-decisions/assignment.md | 52 +++ .../hi/2-js-basics/4-arrays-loops/README.md | 145 +++++++ .../2-js-basics/4-arrays-loops/assignment.md | 25 ++ translations/hi/2-js-basics/README.md | 26 ++ .../hi/3-terrarium/1-intro-to-html/README.md | 247 +++++++++++ .../3-terrarium/1-intro-to-html/assignment.md | 23 + .../hi/3-terrarium/2-intro-to-css/README.md | 282 ++++++++++++ .../3-terrarium/2-intro-to-css/assignment.md | 23 + .../3-intro-to-DOM-and-closures/README.md | 228 ++++++++++ .../3-intro-to-DOM-and-closures/assignment.md | 23 + translations/hi/3-terrarium/README.md | 43 ++ .../hi/3-terrarium/solution/README.md | 37 ++ translations/hi/4-typing-game/README.md | 42 ++ .../hi/4-typing-game/solution/README.md | 13 + .../hi/4-typing-game/typing-game/README.md | 351 +++++++++++++++ .../4-typing-game/typing-game/assignment.md | 24 ++ .../1-about-browsers/README.md | 180 ++++++++ .../1-about-browsers/assignment.md | 23 + .../2-forms-browsers-local-storage/README.md | 238 +++++++++++ .../assignment.md | 23 + .../README.md | 174 ++++++++ .../assignment.md | 21 + translations/hi/5-browser-extension/README.md | 39 ++ .../hi/5-browser-extension/solution/README.md | 39 ++ .../solution/translation/README.es.md | 39 ++ .../solution/translation/README.fr.md | 39 ++ .../solution/translation/README.hi.md | 39 ++ .../solution/translation/README.it.md | 39 ++ .../solution/translation/README.ja.md | 39 ++ .../solution/translation/README.ms.md | 39 ++ .../hi/5-browser-extension/start/README.md | 39 ++ .../hi/6-space-game/1-introduction/README.md | 236 +++++++++++ .../6-space-game/1-introduction/assignment.md | 23 + .../2-drawing-to-canvas/README.md | 228 ++++++++++ .../2-drawing-to-canvas/assignment.md | 23 + .../3-moving-elements-around/README.md | 400 ++++++++++++++++++ .../3-moving-elements-around/assignment.md | 23 + .../4-collision-detection/README.md | 309 ++++++++++++++ .../4-collision-detection/assignment.md | 23 + .../4-collision-detection/solution/README.md | 13 + .../4-collision-detection/your-work/README.md | 13 + .../hi/6-space-game/5-keeping-score/README.md | 201 +++++++++ .../5-keeping-score/assignment.md | 23 + .../5-keeping-score/solution/README.md | 13 + .../5-keeping-score/your-work/README.md | 13 + .../hi/6-space-game/6-end-condition/README.md | 234 ++++++++++ .../6-end-condition/assignment.md | 31 ++ .../6-end-condition/solution/README.md | 13 + .../6-end-condition/your-work/README.md | 13 + translations/hi/6-space-game/README.md | 43 ++ .../hi/6-space-game/solution/README.md | 13 + .../7-bank-project/1-template-route/README.md | 320 ++++++++++++++ .../1-template-route/assignment.md | 26 ++ .../hi/7-bank-project/2-forms/README.md | 305 +++++++++++++ .../hi/7-bank-project/2-forms/assignment.md | 25 ++ .../hi/7-bank-project/3-data/README.md | 345 +++++++++++++++ .../hi/7-bank-project/3-data/assignment.md | 27 ++ .../4-state-management/README.md | 292 +++++++++++++ .../4-state-management/assignment.md | 36 ++ translations/hi/7-bank-project/README.md | 33 ++ translations/hi/7-bank-project/api/README.md | 46 ++ .../hi/7-bank-project/solution/README.md | 25 ++ .../1-using-a-code-editor/README.md | 154 +++++++ .../1-using-a-code-editor/assignment.md | 245 +++++++++++ translations/hi/CODE_OF_CONDUCT.md | 21 + translations/hi/CONTRIBUTING.md | 19 + translations/hi/README.md | 208 +++++++++ translations/hi/SECURITY.md | 49 +++ translations/hi/SUPPORT.md | 23 + translations/hi/_404.md | 19 + translations/hi/docs/_navbar.md | 32 ++ translations/hi/docs/_sidebar.md | 49 +++ translations/hi/for-teachers.md | 45 ++ translations/hi/lesson-template/README.md | 63 +++ translations/hi/lesson-template/assignment.md | 21 + translations/hi/quiz-app/README.md | 189 +++++++++ .../README.md | 215 ++++++++++ .../assignment.md | 23 + .../2-github-basics/README.md | 337 +++++++++++++++ .../3-accessibility/README.md | 187 ++++++++ .../3-accessibility/assignment.md | 27 ++ .../pl/1-getting-started-lessons/README.md | 29 ++ .../pl/2-js-basics/1-data-types/README.md | 213 ++++++++++ .../pl/2-js-basics/1-data-types/assignment.md | 23 + .../2-js-basics/2-functions-methods/README.md | 208 +++++++++ .../2-functions-methods/assignment.md | 25 ++ .../2-js-basics/3-making-decisions/README.md | 230 ++++++++++ .../3-making-decisions/assignment.md | 52 +++ .../pl/2-js-basics/4-arrays-loops/README.md | 145 +++++++ .../2-js-basics/4-arrays-loops/assignment.md | 25 ++ translations/pl/2-js-basics/README.md | 26 ++ .../pl/3-terrarium/1-intro-to-html/README.md | 247 +++++++++++ .../3-terrarium/1-intro-to-html/assignment.md | 23 + .../pl/3-terrarium/2-intro-to-css/README.md | 282 ++++++++++++ .../3-terrarium/2-intro-to-css/assignment.md | 23 + .../3-intro-to-DOM-and-closures/README.md | 228 ++++++++++ .../3-intro-to-DOM-and-closures/assignment.md | 23 + translations/pl/3-terrarium/README.md | 43 ++ .../pl/3-terrarium/solution/README.md | 37 ++ translations/pl/4-typing-game/README.md | 42 ++ .../pl/4-typing-game/solution/README.md | 13 + .../pl/4-typing-game/typing-game/README.md | 351 +++++++++++++++ .../4-typing-game/typing-game/assignment.md | 24 ++ .../1-about-browsers/README.md | 180 ++++++++ .../1-about-browsers/assignment.md | 23 + .../2-forms-browsers-local-storage/README.md | 238 +++++++++++ .../assignment.md | 23 + .../README.md | 174 ++++++++ .../assignment.md | 21 + translations/pl/5-browser-extension/README.md | 39 ++ .../pl/5-browser-extension/solution/README.md | 39 ++ .../solution/translation/README.es.md | 39 ++ .../solution/translation/README.fr.md | 39 ++ .../solution/translation/README.hi.md | 39 ++ .../solution/translation/README.it.md | 39 ++ .../solution/translation/README.ja.md | 39 ++ .../solution/translation/README.ms.md | 39 ++ .../pl/5-browser-extension/start/README.md | 39 ++ .../pl/6-space-game/1-introduction/README.md | 236 +++++++++++ .../6-space-game/1-introduction/assignment.md | 23 + .../2-drawing-to-canvas/README.md | 228 ++++++++++ .../2-drawing-to-canvas/assignment.md | 23 + .../3-moving-elements-around/README.md | 400 ++++++++++++++++++ .../3-moving-elements-around/assignment.md | 23 + .../4-collision-detection/README.md | 309 ++++++++++++++ .../4-collision-detection/assignment.md | 23 + .../4-collision-detection/solution/README.md | 13 + .../4-collision-detection/your-work/README.md | 13 + .../pl/6-space-game/5-keeping-score/README.md | 201 +++++++++ .../5-keeping-score/assignment.md | 23 + .../5-keeping-score/solution/README.md | 13 + .../5-keeping-score/your-work/README.md | 13 + .../pl/6-space-game/6-end-condition/README.md | 234 ++++++++++ .../6-end-condition/assignment.md | 31 ++ .../6-end-condition/solution/README.md | 13 + .../6-end-condition/your-work/README.md | 13 + translations/pl/6-space-game/README.md | 43 ++ .../pl/6-space-game/solution/README.md | 13 + .../7-bank-project/1-template-route/README.md | 320 ++++++++++++++ .../1-template-route/assignment.md | 26 ++ .../pl/7-bank-project/2-forms/README.md | 310 ++++++++++++++ .../pl/7-bank-project/2-forms/assignment.md | 25 ++ .../pl/7-bank-project/3-data/README.md | 345 +++++++++++++++ .../pl/7-bank-project/3-data/assignment.md | 27 ++ .../4-state-management/README.md | 292 +++++++++++++ .../4-state-management/assignment.md | 37 ++ translations/pl/7-bank-project/README.md | 33 ++ translations/pl/7-bank-project/api/README.md | 46 ++ .../pl/7-bank-project/solution/README.md | 25 ++ .../1-using-a-code-editor/README.md | 152 +++++++ .../1-using-a-code-editor/assignment.md | 245 +++++++++++ translations/pl/CODE_OF_CONDUCT.md | 21 + translations/pl/CONTRIBUTING.md | 26 ++ translations/pl/README.md | 204 +++++++++ translations/pl/SECURITY.md | 49 +++ translations/pl/SUPPORT.md | 23 + translations/pl/_404.md | 19 + translations/pl/docs/_navbar.md | 32 ++ translations/pl/docs/_sidebar.md | 49 +++ translations/pl/for-teachers.md | 45 ++ translations/pl/lesson-template/README.md | 63 +++ translations/pl/lesson-template/assignment.md | 21 + translations/pl/quiz-app/README.md | 189 +++++++++ .../README.md | 215 ++++++++++ .../assignment.md | 23 + .../2-github-basics/README.md | 337 +++++++++++++++ .../3-accessibility/README.md | 242 +++++++++++ .../3-accessibility/assignment.md | 27 ++ .../pt/1-getting-started-lessons/README.md | 29 ++ .../pt/2-js-basics/1-data-types/README.md | 213 ++++++++++ .../pt/2-js-basics/1-data-types/assignment.md | 23 + .../2-js-basics/2-functions-methods/README.md | 208 +++++++++ .../2-functions-methods/assignment.md | 25 ++ .../2-js-basics/3-making-decisions/README.md | 230 ++++++++++ .../3-making-decisions/assignment.md | 52 +++ .../pt/2-js-basics/4-arrays-loops/README.md | 145 +++++++ .../2-js-basics/4-arrays-loops/assignment.md | 25 ++ translations/pt/2-js-basics/README.md | 26 ++ .../pt/3-terrarium/1-intro-to-html/README.md | 247 +++++++++++ .../3-terrarium/1-intro-to-html/assignment.md | 23 + .../pt/3-terrarium/2-intro-to-css/README.md | 282 ++++++++++++ .../3-terrarium/2-intro-to-css/assignment.md | 23 + .../3-intro-to-DOM-and-closures/README.md | 228 ++++++++++ .../3-intro-to-DOM-and-closures/assignment.md | 23 + translations/pt/3-terrarium/README.md | 43 ++ .../pt/3-terrarium/solution/README.md | 37 ++ translations/pt/4-typing-game/README.md | 42 ++ .../pt/4-typing-game/solution/README.md | 13 + .../pt/4-typing-game/typing-game/README.md | 351 +++++++++++++++ .../4-typing-game/typing-game/assignment.md | 24 ++ .../1-about-browsers/README.md | 180 ++++++++ .../1-about-browsers/assignment.md | 23 + .../2-forms-browsers-local-storage/README.md | 238 +++++++++++ .../assignment.md | 23 + .../README.md | 174 ++++++++ .../assignment.md | 21 + translations/pt/5-browser-extension/README.md | 39 ++ .../pt/5-browser-extension/solution/README.md | 39 ++ .../solution/translation/README.es.md | 39 ++ .../solution/translation/README.fr.md | 39 ++ .../solution/translation/README.hi.md | 39 ++ .../solution/translation/README.it.md | 39 ++ .../solution/translation/README.ja.md | 39 ++ .../solution/translation/README.ms.md | 39 ++ .../pt/5-browser-extension/start/README.md | 39 ++ .../pt/6-space-game/1-introduction/README.md | 236 +++++++++++ .../6-space-game/1-introduction/assignment.md | 23 + .../2-drawing-to-canvas/README.md | 228 ++++++++++ .../2-drawing-to-canvas/assignment.md | 23 + .../3-moving-elements-around/README.md | 400 ++++++++++++++++++ .../3-moving-elements-around/assignment.md | 23 + .../4-collision-detection/README.md | 309 ++++++++++++++ .../4-collision-detection/assignment.md | 23 + .../4-collision-detection/solution/README.md | 13 + .../4-collision-detection/your-work/README.md | 13 + .../pt/6-space-game/5-keeping-score/README.md | 201 +++++++++ .../5-keeping-score/assignment.md | 23 + .../5-keeping-score/solution/README.md | 13 + .../5-keeping-score/your-work/README.md | 13 + .../pt/6-space-game/6-end-condition/README.md | 234 ++++++++++ .../6-end-condition/assignment.md | 31 ++ .../6-end-condition/solution/README.md | 13 + .../6-end-condition/your-work/README.md | 13 + translations/pt/6-space-game/README.md | 43 ++ .../pt/6-space-game/solution/README.md | 13 + .../7-bank-project/1-template-route/README.md | 320 ++++++++++++++ .../1-template-route/assignment.md | 26 ++ .../pt/7-bank-project/2-forms/README.md | 311 ++++++++++++++ .../pt/7-bank-project/2-forms/assignment.md | 25 ++ .../pt/7-bank-project/3-data/README.md | 345 +++++++++++++++ .../pt/7-bank-project/3-data/assignment.md | 27 ++ .../4-state-management/README.md | 292 +++++++++++++ .../4-state-management/assignment.md | 37 ++ translations/pt/7-bank-project/README.md | 33 ++ translations/pt/7-bank-project/api/README.md | 46 ++ .../pt/7-bank-project/solution/README.md | 25 ++ .../1-using-a-code-editor/README.md | 172 ++++++++ .../1-using-a-code-editor/assignment.md | 245 +++++++++++ translations/pt/CODE_OF_CONDUCT.md | 21 + translations/pt/CONTRIBUTING.md | 21 + translations/pt/README.md | 204 +++++++++ translations/pt/SECURITY.md | 49 +++ translations/pt/SUPPORT.md | 23 + translations/pt/_404.md | 19 + translations/pt/docs/_navbar.md | 32 ++ translations/pt/docs/_sidebar.md | 49 +++ translations/pt/for-teachers.md | 45 ++ translations/pt/lesson-template/README.md | 63 +++ translations/pt/lesson-template/assignment.md | 21 + translations/pt/quiz-app/README.md | 189 +++++++++ 522 files changed, 52041 insertions(+) create mode 100644 translations/de/1-getting-started-lessons/1-intro-to-programming-languages/README.md create mode 100644 translations/de/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md create mode 100644 translations/de/1-getting-started-lessons/2-github-basics/README.md create mode 100644 translations/de/1-getting-started-lessons/3-accessibility/README.md create mode 100644 translations/de/1-getting-started-lessons/3-accessibility/assignment.md create mode 100644 translations/de/1-getting-started-lessons/README.md create mode 100644 translations/de/2-js-basics/1-data-types/README.md create mode 100644 translations/de/2-js-basics/1-data-types/assignment.md create mode 100644 translations/de/2-js-basics/2-functions-methods/README.md create mode 100644 translations/de/2-js-basics/2-functions-methods/assignment.md create mode 100644 translations/de/2-js-basics/3-making-decisions/README.md create mode 100644 translations/de/2-js-basics/3-making-decisions/assignment.md create mode 100644 translations/de/2-js-basics/4-arrays-loops/README.md create mode 100644 translations/de/2-js-basics/4-arrays-loops/assignment.md create mode 100644 translations/de/2-js-basics/README.md create mode 100644 translations/de/3-terrarium/1-intro-to-html/README.md create mode 100644 translations/de/3-terrarium/1-intro-to-html/assignment.md create mode 100644 translations/de/3-terrarium/2-intro-to-css/README.md create mode 100644 translations/de/3-terrarium/2-intro-to-css/assignment.md create mode 100644 translations/de/3-terrarium/3-intro-to-DOM-and-closures/README.md create mode 100644 translations/de/3-terrarium/3-intro-to-DOM-and-closures/assignment.md create mode 100644 translations/de/3-terrarium/README.md create mode 100644 translations/de/3-terrarium/solution/README.md create mode 100644 translations/de/4-typing-game/README.md create mode 100644 translations/de/4-typing-game/solution/README.md create mode 100644 translations/de/4-typing-game/typing-game/README.md create mode 100644 translations/de/4-typing-game/typing-game/assignment.md create mode 100644 translations/de/5-browser-extension/1-about-browsers/README.md create mode 100644 translations/de/5-browser-extension/1-about-browsers/assignment.md create mode 100644 translations/de/5-browser-extension/2-forms-browsers-local-storage/README.md create mode 100644 translations/de/5-browser-extension/2-forms-browsers-local-storage/assignment.md create mode 100644 translations/de/5-browser-extension/3-background-tasks-and-performance/README.md create mode 100644 translations/de/5-browser-extension/3-background-tasks-and-performance/assignment.md create mode 100644 translations/de/5-browser-extension/README.md create mode 100644 translations/de/5-browser-extension/solution/README.md create mode 100644 translations/de/5-browser-extension/solution/translation/README.es.md create mode 100644 translations/de/5-browser-extension/solution/translation/README.fr.md create mode 100644 translations/de/5-browser-extension/solution/translation/README.hi.md create mode 100644 translations/de/5-browser-extension/solution/translation/README.it.md create mode 100644 translations/de/5-browser-extension/solution/translation/README.ja.md create mode 100644 translations/de/5-browser-extension/solution/translation/README.ms.md create mode 100644 translations/de/5-browser-extension/start/README.md create mode 100644 translations/de/6-space-game/1-introduction/README.md create mode 100644 translations/de/6-space-game/1-introduction/assignment.md create mode 100644 translations/de/6-space-game/2-drawing-to-canvas/README.md create mode 100644 translations/de/6-space-game/2-drawing-to-canvas/assignment.md create mode 100644 translations/de/6-space-game/3-moving-elements-around/README.md create mode 100644 translations/de/6-space-game/3-moving-elements-around/assignment.md create mode 100644 translations/de/6-space-game/4-collision-detection/README.md create mode 100644 translations/de/6-space-game/4-collision-detection/assignment.md create mode 100644 translations/de/6-space-game/4-collision-detection/solution/README.md create mode 100644 translations/de/6-space-game/4-collision-detection/your-work/README.md create mode 100644 translations/de/6-space-game/5-keeping-score/README.md create mode 100644 translations/de/6-space-game/5-keeping-score/assignment.md create mode 100644 translations/de/6-space-game/5-keeping-score/solution/README.md create mode 100644 translations/de/6-space-game/5-keeping-score/your-work/README.md create mode 100644 translations/de/6-space-game/6-end-condition/README.md create mode 100644 translations/de/6-space-game/6-end-condition/assignment.md create mode 100644 translations/de/6-space-game/6-end-condition/solution/README.md create mode 100644 translations/de/6-space-game/6-end-condition/your-work/README.md create mode 100644 translations/de/6-space-game/README.md create mode 100644 translations/de/6-space-game/solution/README.md create mode 100644 translations/de/7-bank-project/1-template-route/README.md create mode 100644 translations/de/7-bank-project/1-template-route/assignment.md create mode 100644 translations/de/7-bank-project/2-forms/README.md create mode 100644 translations/de/7-bank-project/2-forms/assignment.md create mode 100644 translations/de/7-bank-project/3-data/README.md create mode 100644 translations/de/7-bank-project/3-data/assignment.md create mode 100644 translations/de/7-bank-project/4-state-management/README.md create mode 100644 translations/de/7-bank-project/4-state-management/assignment.md create mode 100644 translations/de/7-bank-project/README.md create mode 100644 translations/de/7-bank-project/api/README.md create mode 100644 translations/de/7-bank-project/solution/README.md create mode 100644 translations/de/8-code-editor/1-using-a-code-editor/README.md create mode 100644 translations/de/8-code-editor/1-using-a-code-editor/assignment.md create mode 100644 translations/de/CODE_OF_CONDUCT.md create mode 100644 translations/de/CONTRIBUTING.md create mode 100644 translations/de/README.md create mode 100644 translations/de/SECURITY.md create mode 100644 translations/de/SUPPORT.md create mode 100644 translations/de/_404.md create mode 100644 translations/de/docs/_navbar.md create mode 100644 translations/de/docs/_sidebar.md create mode 100644 translations/de/for-teachers.md create mode 100644 translations/de/lesson-template/README.md create mode 100644 translations/de/lesson-template/assignment.md create mode 100644 translations/de/quiz-app/README.md create mode 100644 translations/es/1-getting-started-lessons/1-intro-to-programming-languages/README.md create mode 100644 translations/es/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md create mode 100644 translations/es/1-getting-started-lessons/2-github-basics/README.md create mode 100644 translations/es/1-getting-started-lessons/3-accessibility/README.md create mode 100644 translations/es/1-getting-started-lessons/3-accessibility/assignment.md create mode 100644 translations/es/1-getting-started-lessons/README.md create mode 100644 translations/es/2-js-basics/1-data-types/README.md create mode 100644 translations/es/2-js-basics/1-data-types/assignment.md create mode 100644 translations/es/2-js-basics/2-functions-methods/README.md create mode 100644 translations/es/2-js-basics/2-functions-methods/assignment.md create mode 100644 translations/es/2-js-basics/3-making-decisions/README.md create mode 100644 translations/es/2-js-basics/3-making-decisions/assignment.md create mode 100644 translations/es/2-js-basics/4-arrays-loops/README.md create mode 100644 translations/es/2-js-basics/4-arrays-loops/assignment.md create mode 100644 translations/es/2-js-basics/README.md create mode 100644 translations/es/3-terrarium/1-intro-to-html/README.md create mode 100644 translations/es/3-terrarium/1-intro-to-html/assignment.md create mode 100644 translations/es/3-terrarium/2-intro-to-css/README.md create mode 100644 translations/es/3-terrarium/2-intro-to-css/assignment.md create mode 100644 translations/es/3-terrarium/3-intro-to-DOM-and-closures/README.md create mode 100644 translations/es/3-terrarium/3-intro-to-DOM-and-closures/assignment.md create mode 100644 translations/es/3-terrarium/README.md create mode 100644 translations/es/3-terrarium/solution/README.md create mode 100644 translations/es/4-typing-game/README.md create mode 100644 translations/es/4-typing-game/solution/README.md create mode 100644 translations/es/4-typing-game/typing-game/README.md create mode 100644 translations/es/4-typing-game/typing-game/assignment.md create mode 100644 translations/es/5-browser-extension/1-about-browsers/README.md create mode 100644 translations/es/5-browser-extension/1-about-browsers/assignment.md create mode 100644 translations/es/5-browser-extension/2-forms-browsers-local-storage/README.md create mode 100644 translations/es/5-browser-extension/2-forms-browsers-local-storage/assignment.md create mode 100644 translations/es/5-browser-extension/3-background-tasks-and-performance/README.md create mode 100644 translations/es/5-browser-extension/3-background-tasks-and-performance/assignment.md create mode 100644 translations/es/5-browser-extension/README.md create mode 100644 translations/es/5-browser-extension/solution/README.md create mode 100644 translations/es/5-browser-extension/solution/translation/README.es.md create mode 100644 translations/es/5-browser-extension/solution/translation/README.fr.md create mode 100644 translations/es/5-browser-extension/solution/translation/README.hi.md create mode 100644 translations/es/5-browser-extension/solution/translation/README.it.md create mode 100644 translations/es/5-browser-extension/solution/translation/README.ja.md create mode 100644 translations/es/5-browser-extension/solution/translation/README.ms.md create mode 100644 translations/es/5-browser-extension/start/README.md create mode 100644 translations/es/6-space-game/1-introduction/README.md create mode 100644 translations/es/6-space-game/1-introduction/assignment.md create mode 100644 translations/es/6-space-game/2-drawing-to-canvas/README.md create mode 100644 translations/es/6-space-game/2-drawing-to-canvas/assignment.md create mode 100644 translations/es/6-space-game/3-moving-elements-around/README.md create mode 100644 translations/es/6-space-game/3-moving-elements-around/assignment.md create mode 100644 translations/es/6-space-game/4-collision-detection/README.md create mode 100644 translations/es/6-space-game/4-collision-detection/assignment.md create mode 100644 translations/es/6-space-game/4-collision-detection/solution/README.md create mode 100644 translations/es/6-space-game/4-collision-detection/your-work/README.md create mode 100644 translations/es/6-space-game/5-keeping-score/README.md create mode 100644 translations/es/6-space-game/5-keeping-score/assignment.md create mode 100644 translations/es/6-space-game/5-keeping-score/solution/README.md create mode 100644 translations/es/6-space-game/5-keeping-score/your-work/README.md create mode 100644 translations/es/6-space-game/6-end-condition/README.md create mode 100644 translations/es/6-space-game/6-end-condition/assignment.md create mode 100644 translations/es/6-space-game/6-end-condition/solution/README.md create mode 100644 translations/es/6-space-game/6-end-condition/your-work/README.md create mode 100644 translations/es/6-space-game/README.md create mode 100644 translations/es/6-space-game/solution/README.md create mode 100644 translations/es/7-bank-project/1-template-route/README.md create mode 100644 translations/es/7-bank-project/1-template-route/assignment.md create mode 100644 translations/es/7-bank-project/2-forms/README.md create mode 100644 translations/es/7-bank-project/2-forms/assignment.md create mode 100644 translations/es/7-bank-project/3-data/README.md create mode 100644 translations/es/7-bank-project/3-data/assignment.md create mode 100644 translations/es/7-bank-project/4-state-management/README.md create mode 100644 translations/es/7-bank-project/4-state-management/assignment.md create mode 100644 translations/es/7-bank-project/README.md create mode 100644 translations/es/7-bank-project/api/README.md create mode 100644 translations/es/7-bank-project/solution/README.md create mode 100644 translations/es/8-code-editor/1-using-a-code-editor/README.md create mode 100644 translations/es/8-code-editor/1-using-a-code-editor/assignment.md create mode 100644 translations/es/CODE_OF_CONDUCT.md create mode 100644 translations/es/CONTRIBUTING.md create mode 100644 translations/es/README.md create mode 100644 translations/es/SECURITY.md create mode 100644 translations/es/SUPPORT.md create mode 100644 translations/es/_404.md create mode 100644 translations/es/docs/_navbar.md create mode 100644 translations/es/docs/_sidebar.md create mode 100644 translations/es/for-teachers.md create mode 100644 translations/es/lesson-template/README.md create mode 100644 translations/es/lesson-template/assignment.md create mode 100644 translations/es/quiz-app/README.md create mode 100644 translations/fa/1-getting-started-lessons/1-intro-to-programming-languages/README.md create mode 100644 translations/fa/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md create mode 100644 translations/fa/1-getting-started-lessons/2-github-basics/README.md create mode 100644 translations/fa/1-getting-started-lessons/3-accessibility/README.md create mode 100644 translations/fa/1-getting-started-lessons/3-accessibility/assignment.md create mode 100644 translations/fa/1-getting-started-lessons/README.md create mode 100644 translations/fa/2-js-basics/1-data-types/README.md create mode 100644 translations/fa/2-js-basics/1-data-types/assignment.md create mode 100644 translations/fa/2-js-basics/2-functions-methods/README.md create mode 100644 translations/fa/2-js-basics/2-functions-methods/assignment.md create mode 100644 translations/fa/2-js-basics/3-making-decisions/README.md create mode 100644 translations/fa/2-js-basics/3-making-decisions/assignment.md create mode 100644 translations/fa/2-js-basics/4-arrays-loops/README.md create mode 100644 translations/fa/2-js-basics/4-arrays-loops/assignment.md create mode 100644 translations/fa/2-js-basics/README.md create mode 100644 translations/fa/3-terrarium/1-intro-to-html/README.md create mode 100644 translations/fa/3-terrarium/1-intro-to-html/assignment.md create mode 100644 translations/fa/3-terrarium/2-intro-to-css/README.md create mode 100644 translations/fa/3-terrarium/2-intro-to-css/assignment.md create mode 100644 translations/fa/3-terrarium/3-intro-to-DOM-and-closures/README.md create mode 100644 translations/fa/3-terrarium/3-intro-to-DOM-and-closures/assignment.md create mode 100644 translations/fa/3-terrarium/README.md create mode 100644 translations/fa/3-terrarium/solution/README.md create mode 100644 translations/fa/4-typing-game/README.md create mode 100644 translations/fa/4-typing-game/solution/README.md create mode 100644 translations/fa/4-typing-game/typing-game/README.md create mode 100644 translations/fa/4-typing-game/typing-game/assignment.md create mode 100644 translations/fa/5-browser-extension/1-about-browsers/README.md create mode 100644 translations/fa/5-browser-extension/1-about-browsers/assignment.md create mode 100644 translations/fa/5-browser-extension/2-forms-browsers-local-storage/README.md create mode 100644 translations/fa/5-browser-extension/2-forms-browsers-local-storage/assignment.md create mode 100644 translations/fa/5-browser-extension/3-background-tasks-and-performance/README.md create mode 100644 translations/fa/5-browser-extension/3-background-tasks-and-performance/assignment.md create mode 100644 translations/fa/5-browser-extension/README.md create mode 100644 translations/fa/5-browser-extension/solution/README.md create mode 100644 translations/fa/5-browser-extension/solution/translation/README.es.md create mode 100644 translations/fa/5-browser-extension/solution/translation/README.fr.md create mode 100644 translations/fa/5-browser-extension/solution/translation/README.hi.md create mode 100644 translations/fa/5-browser-extension/solution/translation/README.it.md create mode 100644 translations/fa/5-browser-extension/solution/translation/README.ja.md create mode 100644 translations/fa/5-browser-extension/solution/translation/README.ms.md create mode 100644 translations/fa/5-browser-extension/start/README.md create mode 100644 translations/fa/6-space-game/1-introduction/README.md create mode 100644 translations/fa/6-space-game/1-introduction/assignment.md create mode 100644 translations/fa/6-space-game/2-drawing-to-canvas/README.md create mode 100644 translations/fa/6-space-game/2-drawing-to-canvas/assignment.md create mode 100644 translations/fa/6-space-game/3-moving-elements-around/README.md create mode 100644 translations/fa/6-space-game/3-moving-elements-around/assignment.md create mode 100644 translations/fa/6-space-game/4-collision-detection/README.md create mode 100644 translations/fa/6-space-game/4-collision-detection/assignment.md create mode 100644 translations/fa/6-space-game/4-collision-detection/solution/README.md create mode 100644 translations/fa/6-space-game/4-collision-detection/your-work/README.md create mode 100644 translations/fa/6-space-game/5-keeping-score/README.md create mode 100644 translations/fa/6-space-game/5-keeping-score/assignment.md create mode 100644 translations/fa/6-space-game/5-keeping-score/solution/README.md create mode 100644 translations/fa/6-space-game/5-keeping-score/your-work/README.md create mode 100644 translations/fa/6-space-game/6-end-condition/README.md create mode 100644 translations/fa/6-space-game/6-end-condition/assignment.md create mode 100644 translations/fa/6-space-game/6-end-condition/solution/README.md create mode 100644 translations/fa/6-space-game/6-end-condition/your-work/README.md create mode 100644 translations/fa/6-space-game/README.md create mode 100644 translations/fa/6-space-game/solution/README.md create mode 100644 translations/fa/7-bank-project/1-template-route/README.md create mode 100644 translations/fa/7-bank-project/1-template-route/assignment.md create mode 100644 translations/fa/7-bank-project/2-forms/README.md create mode 100644 translations/fa/7-bank-project/2-forms/assignment.md create mode 100644 translations/fa/7-bank-project/3-data/README.md create mode 100644 translations/fa/7-bank-project/3-data/assignment.md create mode 100644 translations/fa/7-bank-project/4-state-management/README.md create mode 100644 translations/fa/7-bank-project/4-state-management/assignment.md create mode 100644 translations/fa/7-bank-project/README.md create mode 100644 translations/fa/7-bank-project/api/README.md create mode 100644 translations/fa/7-bank-project/solution/README.md create mode 100644 translations/fa/8-code-editor/1-using-a-code-editor/README.md create mode 100644 translations/fa/8-code-editor/1-using-a-code-editor/assignment.md create mode 100644 translations/fa/CODE_OF_CONDUCT.md create mode 100644 translations/fa/CONTRIBUTING.md create mode 100644 translations/fa/README.md create mode 100644 translations/fa/SECURITY.md create mode 100644 translations/fa/SUPPORT.md create mode 100644 translations/fa/_404.md create mode 100644 translations/fa/docs/_navbar.md create mode 100644 translations/fa/docs/_sidebar.md create mode 100644 translations/fa/for-teachers.md create mode 100644 translations/fa/lesson-template/README.md create mode 100644 translations/fa/lesson-template/assignment.md create mode 100644 translations/fa/quiz-app/README.md create mode 100644 translations/hi/1-getting-started-lessons/1-intro-to-programming-languages/README.md create mode 100644 translations/hi/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md create mode 100644 translations/hi/1-getting-started-lessons/2-github-basics/README.md create mode 100644 translations/hi/1-getting-started-lessons/3-accessibility/README.md create mode 100644 translations/hi/1-getting-started-lessons/3-accessibility/assignment.md create mode 100644 translations/hi/1-getting-started-lessons/README.md create mode 100644 translations/hi/2-js-basics/1-data-types/README.md create mode 100644 translations/hi/2-js-basics/1-data-types/assignment.md create mode 100644 translations/hi/2-js-basics/2-functions-methods/README.md create mode 100644 translations/hi/2-js-basics/2-functions-methods/assignment.md create mode 100644 translations/hi/2-js-basics/3-making-decisions/README.md create mode 100644 translations/hi/2-js-basics/3-making-decisions/assignment.md create mode 100644 translations/hi/2-js-basics/4-arrays-loops/README.md create mode 100644 translations/hi/2-js-basics/4-arrays-loops/assignment.md create mode 100644 translations/hi/2-js-basics/README.md create mode 100644 translations/hi/3-terrarium/1-intro-to-html/README.md create mode 100644 translations/hi/3-terrarium/1-intro-to-html/assignment.md create mode 100644 translations/hi/3-terrarium/2-intro-to-css/README.md create mode 100644 translations/hi/3-terrarium/2-intro-to-css/assignment.md create mode 100644 translations/hi/3-terrarium/3-intro-to-DOM-and-closures/README.md create mode 100644 translations/hi/3-terrarium/3-intro-to-DOM-and-closures/assignment.md create mode 100644 translations/hi/3-terrarium/README.md create mode 100644 translations/hi/3-terrarium/solution/README.md create mode 100644 translations/hi/4-typing-game/README.md create mode 100644 translations/hi/4-typing-game/solution/README.md create mode 100644 translations/hi/4-typing-game/typing-game/README.md create mode 100644 translations/hi/4-typing-game/typing-game/assignment.md create mode 100644 translations/hi/5-browser-extension/1-about-browsers/README.md create mode 100644 translations/hi/5-browser-extension/1-about-browsers/assignment.md create mode 100644 translations/hi/5-browser-extension/2-forms-browsers-local-storage/README.md create mode 100644 translations/hi/5-browser-extension/2-forms-browsers-local-storage/assignment.md create mode 100644 translations/hi/5-browser-extension/3-background-tasks-and-performance/README.md create mode 100644 translations/hi/5-browser-extension/3-background-tasks-and-performance/assignment.md create mode 100644 translations/hi/5-browser-extension/README.md create mode 100644 translations/hi/5-browser-extension/solution/README.md create mode 100644 translations/hi/5-browser-extension/solution/translation/README.es.md create mode 100644 translations/hi/5-browser-extension/solution/translation/README.fr.md create mode 100644 translations/hi/5-browser-extension/solution/translation/README.hi.md create mode 100644 translations/hi/5-browser-extension/solution/translation/README.it.md create mode 100644 translations/hi/5-browser-extension/solution/translation/README.ja.md create mode 100644 translations/hi/5-browser-extension/solution/translation/README.ms.md create mode 100644 translations/hi/5-browser-extension/start/README.md create mode 100644 translations/hi/6-space-game/1-introduction/README.md create mode 100644 translations/hi/6-space-game/1-introduction/assignment.md create mode 100644 translations/hi/6-space-game/2-drawing-to-canvas/README.md create mode 100644 translations/hi/6-space-game/2-drawing-to-canvas/assignment.md create mode 100644 translations/hi/6-space-game/3-moving-elements-around/README.md create mode 100644 translations/hi/6-space-game/3-moving-elements-around/assignment.md create mode 100644 translations/hi/6-space-game/4-collision-detection/README.md create mode 100644 translations/hi/6-space-game/4-collision-detection/assignment.md create mode 100644 translations/hi/6-space-game/4-collision-detection/solution/README.md create mode 100644 translations/hi/6-space-game/4-collision-detection/your-work/README.md create mode 100644 translations/hi/6-space-game/5-keeping-score/README.md create mode 100644 translations/hi/6-space-game/5-keeping-score/assignment.md create mode 100644 translations/hi/6-space-game/5-keeping-score/solution/README.md create mode 100644 translations/hi/6-space-game/5-keeping-score/your-work/README.md create mode 100644 translations/hi/6-space-game/6-end-condition/README.md create mode 100644 translations/hi/6-space-game/6-end-condition/assignment.md create mode 100644 translations/hi/6-space-game/6-end-condition/solution/README.md create mode 100644 translations/hi/6-space-game/6-end-condition/your-work/README.md create mode 100644 translations/hi/6-space-game/README.md create mode 100644 translations/hi/6-space-game/solution/README.md create mode 100644 translations/hi/7-bank-project/1-template-route/README.md create mode 100644 translations/hi/7-bank-project/1-template-route/assignment.md create mode 100644 translations/hi/7-bank-project/2-forms/README.md create mode 100644 translations/hi/7-bank-project/2-forms/assignment.md create mode 100644 translations/hi/7-bank-project/3-data/README.md create mode 100644 translations/hi/7-bank-project/3-data/assignment.md create mode 100644 translations/hi/7-bank-project/4-state-management/README.md create mode 100644 translations/hi/7-bank-project/4-state-management/assignment.md create mode 100644 translations/hi/7-bank-project/README.md create mode 100644 translations/hi/7-bank-project/api/README.md create mode 100644 translations/hi/7-bank-project/solution/README.md create mode 100644 translations/hi/8-code-editor/1-using-a-code-editor/README.md create mode 100644 translations/hi/8-code-editor/1-using-a-code-editor/assignment.md create mode 100644 translations/hi/CODE_OF_CONDUCT.md create mode 100644 translations/hi/CONTRIBUTING.md create mode 100644 translations/hi/README.md create mode 100644 translations/hi/SECURITY.md create mode 100644 translations/hi/SUPPORT.md create mode 100644 translations/hi/_404.md create mode 100644 translations/hi/docs/_navbar.md create mode 100644 translations/hi/docs/_sidebar.md create mode 100644 translations/hi/for-teachers.md create mode 100644 translations/hi/lesson-template/README.md create mode 100644 translations/hi/lesson-template/assignment.md create mode 100644 translations/hi/quiz-app/README.md create mode 100644 translations/pl/1-getting-started-lessons/1-intro-to-programming-languages/README.md create mode 100644 translations/pl/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md create mode 100644 translations/pl/1-getting-started-lessons/2-github-basics/README.md create mode 100644 translations/pl/1-getting-started-lessons/3-accessibility/README.md create mode 100644 translations/pl/1-getting-started-lessons/3-accessibility/assignment.md create mode 100644 translations/pl/1-getting-started-lessons/README.md create mode 100644 translations/pl/2-js-basics/1-data-types/README.md create mode 100644 translations/pl/2-js-basics/1-data-types/assignment.md create mode 100644 translations/pl/2-js-basics/2-functions-methods/README.md create mode 100644 translations/pl/2-js-basics/2-functions-methods/assignment.md create mode 100644 translations/pl/2-js-basics/3-making-decisions/README.md create mode 100644 translations/pl/2-js-basics/3-making-decisions/assignment.md create mode 100644 translations/pl/2-js-basics/4-arrays-loops/README.md create mode 100644 translations/pl/2-js-basics/4-arrays-loops/assignment.md create mode 100644 translations/pl/2-js-basics/README.md create mode 100644 translations/pl/3-terrarium/1-intro-to-html/README.md create mode 100644 translations/pl/3-terrarium/1-intro-to-html/assignment.md create mode 100644 translations/pl/3-terrarium/2-intro-to-css/README.md create mode 100644 translations/pl/3-terrarium/2-intro-to-css/assignment.md create mode 100644 translations/pl/3-terrarium/3-intro-to-DOM-and-closures/README.md create mode 100644 translations/pl/3-terrarium/3-intro-to-DOM-and-closures/assignment.md create mode 100644 translations/pl/3-terrarium/README.md create mode 100644 translations/pl/3-terrarium/solution/README.md create mode 100644 translations/pl/4-typing-game/README.md create mode 100644 translations/pl/4-typing-game/solution/README.md create mode 100644 translations/pl/4-typing-game/typing-game/README.md create mode 100644 translations/pl/4-typing-game/typing-game/assignment.md create mode 100644 translations/pl/5-browser-extension/1-about-browsers/README.md create mode 100644 translations/pl/5-browser-extension/1-about-browsers/assignment.md create mode 100644 translations/pl/5-browser-extension/2-forms-browsers-local-storage/README.md create mode 100644 translations/pl/5-browser-extension/2-forms-browsers-local-storage/assignment.md create mode 100644 translations/pl/5-browser-extension/3-background-tasks-and-performance/README.md create mode 100644 translations/pl/5-browser-extension/3-background-tasks-and-performance/assignment.md create mode 100644 translations/pl/5-browser-extension/README.md create mode 100644 translations/pl/5-browser-extension/solution/README.md create mode 100644 translations/pl/5-browser-extension/solution/translation/README.es.md create mode 100644 translations/pl/5-browser-extension/solution/translation/README.fr.md create mode 100644 translations/pl/5-browser-extension/solution/translation/README.hi.md create mode 100644 translations/pl/5-browser-extension/solution/translation/README.it.md create mode 100644 translations/pl/5-browser-extension/solution/translation/README.ja.md create mode 100644 translations/pl/5-browser-extension/solution/translation/README.ms.md create mode 100644 translations/pl/5-browser-extension/start/README.md create mode 100644 translations/pl/6-space-game/1-introduction/README.md create mode 100644 translations/pl/6-space-game/1-introduction/assignment.md create mode 100644 translations/pl/6-space-game/2-drawing-to-canvas/README.md create mode 100644 translations/pl/6-space-game/2-drawing-to-canvas/assignment.md create mode 100644 translations/pl/6-space-game/3-moving-elements-around/README.md create mode 100644 translations/pl/6-space-game/3-moving-elements-around/assignment.md create mode 100644 translations/pl/6-space-game/4-collision-detection/README.md create mode 100644 translations/pl/6-space-game/4-collision-detection/assignment.md create mode 100644 translations/pl/6-space-game/4-collision-detection/solution/README.md create mode 100644 translations/pl/6-space-game/4-collision-detection/your-work/README.md create mode 100644 translations/pl/6-space-game/5-keeping-score/README.md create mode 100644 translations/pl/6-space-game/5-keeping-score/assignment.md create mode 100644 translations/pl/6-space-game/5-keeping-score/solution/README.md create mode 100644 translations/pl/6-space-game/5-keeping-score/your-work/README.md create mode 100644 translations/pl/6-space-game/6-end-condition/README.md create mode 100644 translations/pl/6-space-game/6-end-condition/assignment.md create mode 100644 translations/pl/6-space-game/6-end-condition/solution/README.md create mode 100644 translations/pl/6-space-game/6-end-condition/your-work/README.md create mode 100644 translations/pl/6-space-game/README.md create mode 100644 translations/pl/6-space-game/solution/README.md create mode 100644 translations/pl/7-bank-project/1-template-route/README.md create mode 100644 translations/pl/7-bank-project/1-template-route/assignment.md create mode 100644 translations/pl/7-bank-project/2-forms/README.md create mode 100644 translations/pl/7-bank-project/2-forms/assignment.md create mode 100644 translations/pl/7-bank-project/3-data/README.md create mode 100644 translations/pl/7-bank-project/3-data/assignment.md create mode 100644 translations/pl/7-bank-project/4-state-management/README.md create mode 100644 translations/pl/7-bank-project/4-state-management/assignment.md create mode 100644 translations/pl/7-bank-project/README.md create mode 100644 translations/pl/7-bank-project/api/README.md create mode 100644 translations/pl/7-bank-project/solution/README.md create mode 100644 translations/pl/8-code-editor/1-using-a-code-editor/README.md create mode 100644 translations/pl/8-code-editor/1-using-a-code-editor/assignment.md create mode 100644 translations/pl/CODE_OF_CONDUCT.md create mode 100644 translations/pl/CONTRIBUTING.md create mode 100644 translations/pl/README.md create mode 100644 translations/pl/SECURITY.md create mode 100644 translations/pl/SUPPORT.md create mode 100644 translations/pl/_404.md create mode 100644 translations/pl/docs/_navbar.md create mode 100644 translations/pl/docs/_sidebar.md create mode 100644 translations/pl/for-teachers.md create mode 100644 translations/pl/lesson-template/README.md create mode 100644 translations/pl/lesson-template/assignment.md create mode 100644 translations/pl/quiz-app/README.md create mode 100644 translations/pt/1-getting-started-lessons/1-intro-to-programming-languages/README.md create mode 100644 translations/pt/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md create mode 100644 translations/pt/1-getting-started-lessons/2-github-basics/README.md create mode 100644 translations/pt/1-getting-started-lessons/3-accessibility/README.md create mode 100644 translations/pt/1-getting-started-lessons/3-accessibility/assignment.md create mode 100644 translations/pt/1-getting-started-lessons/README.md create mode 100644 translations/pt/2-js-basics/1-data-types/README.md create mode 100644 translations/pt/2-js-basics/1-data-types/assignment.md create mode 100644 translations/pt/2-js-basics/2-functions-methods/README.md create mode 100644 translations/pt/2-js-basics/2-functions-methods/assignment.md create mode 100644 translations/pt/2-js-basics/3-making-decisions/README.md create mode 100644 translations/pt/2-js-basics/3-making-decisions/assignment.md create mode 100644 translations/pt/2-js-basics/4-arrays-loops/README.md create mode 100644 translations/pt/2-js-basics/4-arrays-loops/assignment.md create mode 100644 translations/pt/2-js-basics/README.md create mode 100644 translations/pt/3-terrarium/1-intro-to-html/README.md create mode 100644 translations/pt/3-terrarium/1-intro-to-html/assignment.md create mode 100644 translations/pt/3-terrarium/2-intro-to-css/README.md create mode 100644 translations/pt/3-terrarium/2-intro-to-css/assignment.md create mode 100644 translations/pt/3-terrarium/3-intro-to-DOM-and-closures/README.md create mode 100644 translations/pt/3-terrarium/3-intro-to-DOM-and-closures/assignment.md create mode 100644 translations/pt/3-terrarium/README.md create mode 100644 translations/pt/3-terrarium/solution/README.md create mode 100644 translations/pt/4-typing-game/README.md create mode 100644 translations/pt/4-typing-game/solution/README.md create mode 100644 translations/pt/4-typing-game/typing-game/README.md create mode 100644 translations/pt/4-typing-game/typing-game/assignment.md create mode 100644 translations/pt/5-browser-extension/1-about-browsers/README.md create mode 100644 translations/pt/5-browser-extension/1-about-browsers/assignment.md create mode 100644 translations/pt/5-browser-extension/2-forms-browsers-local-storage/README.md create mode 100644 translations/pt/5-browser-extension/2-forms-browsers-local-storage/assignment.md create mode 100644 translations/pt/5-browser-extension/3-background-tasks-and-performance/README.md create mode 100644 translations/pt/5-browser-extension/3-background-tasks-and-performance/assignment.md create mode 100644 translations/pt/5-browser-extension/README.md create mode 100644 translations/pt/5-browser-extension/solution/README.md create mode 100644 translations/pt/5-browser-extension/solution/translation/README.es.md create mode 100644 translations/pt/5-browser-extension/solution/translation/README.fr.md create mode 100644 translations/pt/5-browser-extension/solution/translation/README.hi.md create mode 100644 translations/pt/5-browser-extension/solution/translation/README.it.md create mode 100644 translations/pt/5-browser-extension/solution/translation/README.ja.md create mode 100644 translations/pt/5-browser-extension/solution/translation/README.ms.md create mode 100644 translations/pt/5-browser-extension/start/README.md create mode 100644 translations/pt/6-space-game/1-introduction/README.md create mode 100644 translations/pt/6-space-game/1-introduction/assignment.md create mode 100644 translations/pt/6-space-game/2-drawing-to-canvas/README.md create mode 100644 translations/pt/6-space-game/2-drawing-to-canvas/assignment.md create mode 100644 translations/pt/6-space-game/3-moving-elements-around/README.md create mode 100644 translations/pt/6-space-game/3-moving-elements-around/assignment.md create mode 100644 translations/pt/6-space-game/4-collision-detection/README.md create mode 100644 translations/pt/6-space-game/4-collision-detection/assignment.md create mode 100644 translations/pt/6-space-game/4-collision-detection/solution/README.md create mode 100644 translations/pt/6-space-game/4-collision-detection/your-work/README.md create mode 100644 translations/pt/6-space-game/5-keeping-score/README.md create mode 100644 translations/pt/6-space-game/5-keeping-score/assignment.md create mode 100644 translations/pt/6-space-game/5-keeping-score/solution/README.md create mode 100644 translations/pt/6-space-game/5-keeping-score/your-work/README.md create mode 100644 translations/pt/6-space-game/6-end-condition/README.md create mode 100644 translations/pt/6-space-game/6-end-condition/assignment.md create mode 100644 translations/pt/6-space-game/6-end-condition/solution/README.md create mode 100644 translations/pt/6-space-game/6-end-condition/your-work/README.md create mode 100644 translations/pt/6-space-game/README.md create mode 100644 translations/pt/6-space-game/solution/README.md create mode 100644 translations/pt/7-bank-project/1-template-route/README.md create mode 100644 translations/pt/7-bank-project/1-template-route/assignment.md create mode 100644 translations/pt/7-bank-project/2-forms/README.md create mode 100644 translations/pt/7-bank-project/2-forms/assignment.md create mode 100644 translations/pt/7-bank-project/3-data/README.md create mode 100644 translations/pt/7-bank-project/3-data/assignment.md create mode 100644 translations/pt/7-bank-project/4-state-management/README.md create mode 100644 translations/pt/7-bank-project/4-state-management/assignment.md create mode 100644 translations/pt/7-bank-project/README.md create mode 100644 translations/pt/7-bank-project/api/README.md create mode 100644 translations/pt/7-bank-project/solution/README.md create mode 100644 translations/pt/8-code-editor/1-using-a-code-editor/README.md create mode 100644 translations/pt/8-code-editor/1-using-a-code-editor/assignment.md create mode 100644 translations/pt/CODE_OF_CONDUCT.md create mode 100644 translations/pt/CONTRIBUTING.md create mode 100644 translations/pt/README.md create mode 100644 translations/pt/SECURITY.md create mode 100644 translations/pt/SUPPORT.md create mode 100644 translations/pt/_404.md create mode 100644 translations/pt/docs/_navbar.md create mode 100644 translations/pt/docs/_sidebar.md create mode 100644 translations/pt/for-teachers.md create mode 100644 translations/pt/lesson-template/README.md create mode 100644 translations/pt/lesson-template/assignment.md create mode 100644 translations/pt/quiz-app/README.md diff --git a/translations/de/1-getting-started-lessons/1-intro-to-programming-languages/README.md b/translations/de/1-getting-started-lessons/1-intro-to-programming-languages/README.md new file mode 100644 index 00000000..d8226a43 --- /dev/null +++ b/translations/de/1-getting-started-lessons/1-intro-to-programming-languages/README.md @@ -0,0 +1,215 @@ + +# Einführung in Programmiersprachen und Werkzeuge des Handwerks + +Diese Lektion behandelt die Grundlagen von Programmiersprachen. Die hier behandelten Themen gelten für die meisten modernen Programmiersprachen. Im Abschnitt "Werkzeuge des Handwerks" lernst du nützliche Software kennen, die dir als Entwickler:in hilft. + +![Intro Programmierung](../../../../sketchnotes/webdev101-programming.png) +> Sketchnote von [Tomomi Imura](https://twitter.com/girlie_mac) + +## Quiz vor der Vorlesung +[Quiz vor der Vorlesung](https://forms.office.com/r/dru4TE0U9n?origin=lprLink) + +## Einführung + +In dieser Lektion behandeln wir: + +- Was ist Programmieren? +- Arten von Programmiersprachen +- Grundelemente eines Programms +- Nützliche Software und Werkzeuge für professionelle Entwickler:innen + +> Du kannst diese Lektion auf [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming/?WT.mc_id=academic-77807-sagibbon) absolvieren! + +## Was ist Programmieren? + +Programmieren (auch bekannt als Codieren) ist der Prozess, Anweisungen für ein Gerät wie einen Computer oder ein mobiles Gerät zu schreiben. Wir schreiben diese Anweisungen mit einer Programmiersprache, die dann vom Gerät interpretiert wird. Diese Anweisungen können verschiedene Namen haben, aber *Programm*, *Computerprogramm*, *Anwendung (App)* und *ausführbare Datei* sind einige gängige Bezeichnungen. + +Ein *Programm* kann alles sein, was mit Code geschrieben wurde; Websites, Spiele und Handy-Apps sind Programme. Auch wenn es möglich ist, ein Programm ohne Code zu erstellen, wird die zugrunde liegende Logik vom Gerät interpretiert, und diese Logik wurde höchstwahrscheinlich mit Code geschrieben. Ein Programm, das *läuft* oder *ausgeführt* wird, führt Anweisungen aus. Das Gerät, mit dem du diese Lektion liest, führt ein Programm aus, um sie auf deinem Bildschirm anzuzeigen. + +✅ Recherchiere ein wenig: Wer gilt als der/die erste Computerprogrammierer:in der Welt? + +## Programmiersprachen + +Programmiersprachen ermöglichen es Entwickler:innen, Anweisungen für ein Gerät zu schreiben. Geräte können nur Binärcode (1en und 0en) verstehen, und für *die meisten* Entwickler:innen ist das keine sehr effiziente Art der Kommunikation. Programmiersprachen sind das Mittel zur Kommunikation zwischen Menschen und Computern. + +Programmiersprachen gibt es in verschiedenen Formaten und sie können unterschiedlichen Zwecken dienen. Zum Beispiel wird JavaScript hauptsächlich für Webanwendungen verwendet, während Bash hauptsächlich für Betriebssysteme genutzt wird. + +*Low-Level-Sprachen* erfordern in der Regel weniger Schritte als *High-Level-Sprachen*, damit ein Gerät Anweisungen interpretieren kann. Was High-Level-Sprachen jedoch beliebt macht, ist ihre Lesbarkeit und Unterstützung. JavaScript gilt als High-Level-Sprache. + +Der folgende Code zeigt den Unterschied zwischen einer High-Level-Sprache wie JavaScript und einer Low-Level-Sprache wie ARM-Assemblercode. + +```javascript +let number = 10 +let n1 = 0, n2 = 1, nextTerm; + +for (let i = 1; i <= number; i++) { + console.log(n1); + nextTerm = n1 + n2; + n1 = n2; + n2 = nextTerm; +} +``` + +```c + area ascen,code,readonly + entry + code32 + adr r0,thumb+1 + bx r0 + code16 +thumb + mov r0,#00 + sub r0,r0,#01 + mov r1,#01 + mov r4,#10 + ldr r2,=0x40000000 +back add r0,r1 + str r0,[r2] + add r2,#04 + mov r3,r0 + mov r0,r1 + mov r1,r3 + sub r4,#01 + cmp r4,#00 + bne back + end +``` + +Glaub es oder nicht, *sie tun beide dasselbe*: Sie geben eine Fibonacci-Sequenz bis 10 aus. + +✅ Eine Fibonacci-Sequenz wird [definiert](https://en.wikipedia.org/wiki/Fibonacci_number) als eine Reihe von Zahlen, bei der jede Zahl die Summe der beiden vorhergehenden ist, beginnend mit 0 und 1. Die ersten 10 Zahlen der Fibonacci-Sequenz sind 0, 1, 1, 2, 3, 5, 8, 13, 21 und 34. + +## Elemente eines Programms + +Eine einzelne Anweisung in einem Programm wird als *Statement* bezeichnet und hat normalerweise ein Zeichen oder einen Zeilenabstand, der markiert, wo die Anweisung endet oder *terminiert*. Wie ein Programm terminiert, variiert je nach Sprache. + +Anweisungen in einem Programm können von Daten abhängen, die von einem Benutzer oder einer anderen Quelle bereitgestellt werden, um Anweisungen auszuführen. Daten können beeinflussen, wie sich ein Programm verhält, daher bieten Programmiersprachen eine Möglichkeit, Daten vorübergehend zu speichern, damit sie später verwendet werden können. Diese werden als *Variablen* bezeichnet. Variablen sind Anweisungen, die ein Gerät anweisen, Daten im Speicher zu speichern. Variablen in Programmen ähneln Variablen in der Algebra, da sie einen eindeutigen Namen haben und sich ihr Wert im Laufe der Zeit ändern kann. + +Es besteht die Möglichkeit, dass einige Anweisungen von einem Gerät nicht ausgeführt werden. Dies geschieht in der Regel absichtlich, wenn es vom Entwickler so geschrieben wurde, oder versehentlich, wenn ein unerwarteter Fehler auftritt. Diese Art der Kontrolle über eine Anwendung macht sie robuster und wartbarer. Typischerweise treten diese Kontrolländerungen auf, wenn bestimmte Bedingungen erfüllt sind. Eine gängige Anweisung in modernen Programmiersprachen, um zu steuern, wie ein Programm ausgeführt wird, ist die `if..else`-Anweisung. + +✅ Du wirst mehr über diese Art von Anweisungen in späteren Lektionen lernen. + +## Werkzeuge des Handwerks + +[![Werkzeuge des Handwerks](https://img.youtube.com/vi/69WJeXGBdxg/0.jpg)](https://youtube.com/watch?v=69WJeXGBdxg "Werkzeuge des Handwerks") + +> 🎥 Klicke auf das Bild oben, um ein Video über Werkzeuge anzusehen + +In diesem Abschnitt lernst du einige Software kennen, die du als nützlich empfinden könntest, wenn du deine Reise als professionelle:r Entwickler:in beginnst. + +Eine **Entwicklungsumgebung** ist eine einzigartige Sammlung von Werkzeugen und Funktionen, die ein:e Entwickler:in häufig beim Schreiben von Software verwendet. Einige dieser Werkzeuge wurden speziell auf die Bedürfnisse eines:einer Entwickler:in zugeschnitten und können sich im Laufe der Zeit ändern, wenn sich die Prioritäten in der Arbeit, bei persönlichen Projekten oder bei der Verwendung einer anderen Programmiersprache ändern. Entwicklungsumgebungen sind so einzigartig wie die Entwickler:innen, die sie nutzen. + +### Editoren + +Eines der wichtigsten Werkzeuge für die Softwareentwicklung ist der Editor. Editoren sind der Ort, an dem du deinen Code schreibst und manchmal auch ausführst. + +Entwickler:innen verlassen sich aus mehreren Gründen auf Editoren: + +- *Debugging* hilft, Fehler und Probleme aufzudecken, indem der Code Zeile für Zeile durchgegangen wird. Einige Editoren verfügen über Debugging-Funktionen, die für bestimmte Programmiersprachen angepasst und hinzugefügt werden können. +- *Syntaxhervorhebung* fügt Farben und Textformatierungen zum Code hinzu, was ihn leichter lesbar macht. Die meisten Editoren erlauben eine angepasste Syntaxhervorhebung. +- *Erweiterungen und Integrationen* sind spezialisierte Werkzeuge für Entwickler:innen, die von anderen Entwickler:innen erstellt wurden. Diese Werkzeuge sind nicht im Basis-Editor enthalten. Zum Beispiel dokumentieren viele Entwickler:innen ihren Code, um zu erklären, wie er funktioniert. Sie könnten eine Rechtschreibprüfungserweiterung installieren, um Tippfehler in der Dokumentation zu finden. Die meisten Erweiterungen sind für die Verwendung in einem bestimmten Editor gedacht, und die meisten Editoren bieten eine Möglichkeit, nach verfügbaren Erweiterungen zu suchen. +- *Anpassung* ermöglicht es Entwickler:innen, eine einzigartige Entwicklungsumgebung zu schaffen, die ihren Bedürfnissen entspricht. Die meisten Editoren sind extrem anpassbar und erlauben es Entwickler:innen, eigene Erweiterungen zu erstellen. + +#### Beliebte Editoren und Webentwicklungs-Erweiterungen + +- [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) + - [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) + - [Live Share](https://marketplace.visualstudio.com/items?itemName=MS-vsliveshare.vsliveshare) + - [Prettier - Code formatter](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) +- [Atom](https://atom.io/) + - [spell-check](https://atom.io/packages/spell-check) + - [teletype](https://atom.io/packages/teletype) + - [atom-beautify](https://atom.io/packages/atom-beautify) + +- [Sublimetext](https://www.sublimetext.com/) + - [emmet](https://emmet.io/) + - [SublimeLinter](http://www.sublimelinter.com/en/stable/) + +### Browser + +Ein weiteres wichtiges Werkzeug ist der Browser. Webentwickler:innen verlassen sich auf den Browser, um zu sehen, wie ihr Code im Web ausgeführt wird. Er wird auch verwendet, um die visuellen Elemente einer Webseite anzuzeigen, die im Editor geschrieben wurden, wie HTML. + +Viele Browser verfügen über *Entwicklerwerkzeuge* (DevTools), die eine Reihe hilfreicher Funktionen und Informationen enthalten, um Entwickler:innen dabei zu helfen, wichtige Informationen über ihre Anwendung zu sammeln und zu erfassen. Zum Beispiel: Wenn eine Webseite Fehler hat, ist es manchmal hilfreich zu wissen, wann sie aufgetreten sind. DevTools in einem Browser können so konfiguriert werden, dass diese Informationen erfasst werden. + +#### Beliebte Browser und DevTools + +- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon) +- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) +- [Firefox](https://developer.mozilla.org/docs/Tools) + +### Kommandozeilenwerkzeuge + +Einige Entwickler:innen bevorzugen eine weniger grafische Ansicht für ihre täglichen Aufgaben und verlassen sich auf die Kommandozeile, um dies zu erreichen. Das Schreiben von Code erfordert eine erhebliche Menge an Tippen, und einige Entwickler:innen bevorzugen es, ihren Arbeitsfluss auf der Tastatur nicht zu unterbrechen. Sie verwenden Tastenkombinationen, um zwischen Desktop-Fenstern zu wechseln, an verschiedenen Dateien zu arbeiten und Werkzeuge zu nutzen. Die meisten Aufgaben können mit einer Maus erledigt werden, aber ein Vorteil der Kommandozeile ist, dass vieles mit Kommandozeilenwerkzeugen erledigt werden kann, ohne zwischen Maus und Tastatur wechseln zu müssen. Ein weiterer Vorteil der Kommandozeile ist, dass sie konfigurierbar ist und du eine benutzerdefinierte Konfiguration speichern, später ändern und auf andere Entwicklungsmaschinen importieren kannst. Da Entwicklungsumgebungen so einzigartig für jede:n Entwickler:in sind, vermeiden einige die Kommandozeile, andere verlassen sich vollständig darauf, und wieder andere bevorzugen eine Mischung aus beidem. + +### Beliebte Kommandozeilenoptionen + +Die Optionen für die Kommandozeile unterscheiden sich je nach Betriebssystem. + +*💻 = ist standardmäßig auf dem Betriebssystem vorinstalliert.* + +#### Windows + +- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻 +- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (auch bekannt als CMD) 💻 +- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) +- [mintty](https://mintty.github.io/) + +#### MacOS + +- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 +- [iTerm](https://iterm2.com/) +- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) + +#### Linux + +- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 +- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) +- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) + +#### Beliebte Kommandozeilenwerkzeuge + +- [Git](https://git-scm.com/) (💻 auf den meisten Betriebssystemen) +- [NPM](https://www.npmjs.com/) +- [Yarn](https://classic.yarnpkg.com/en/docs/cli/) + +### Dokumentation + +Wenn ein:e Entwickler:in etwas Neues lernen möchte, wird er:sie sich höchstwahrscheinlich an die Dokumentation wenden, um zu erfahren, wie man es benutzt. Entwickler:innen verlassen sich oft auf Dokumentationen, um sich darüber zu informieren, wie Werkzeuge und Sprachen richtig verwendet werden, und um ein tieferes Verständnis dafür zu erlangen, wie sie funktionieren. + +#### Beliebte Dokumentationen zur Webentwicklung + +- [Mozilla Developer Network (MDN)](https://developer.mozilla.org/docs/Web), von Mozilla, den Herausgebern des [Firefox](https://www.mozilla.org/firefox/)-Browsers +- [Frontend Masters](https://frontendmasters.com/learn/) +- [Web.dev](https://web.dev), von Google, den Herausgebern von [Chrome](https://www.google.com/chrome/) +- [Microsofts eigene Entwicklerdokumentation](https://docs.microsoft.com/microsoft-edge/#microsoft-edge-for-developers), für [Microsoft Edge](https://www.microsoft.com/edge) +- [W3 Schools](https://www.w3schools.com/where_to_start.asp) + +✅ Recherchiere: Jetzt, da du die Grundlagen der Umgebung eines Webentwicklers kennst, vergleiche sie mit der Umgebung eines Webdesigners. + +--- + +## 🚀 Herausforderung + +Vergleiche einige Programmiersprachen. Was sind einige der einzigartigen Merkmale von JavaScript im Vergleich zu Java? Wie sieht es mit COBOL im Vergleich zu Go aus? + +## Quiz nach der Vorlesung +[Quiz nach der Vorlesung](https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/2) + +## Wiederholung & Selbststudium + +Lerne ein wenig über die verschiedenen Programmiersprachen, die einem Programmierer zur Verfügung stehen. Versuche, eine Zeile in einer Sprache zu schreiben, und schreibe sie dann in zwei anderen Sprachen um. Was hast du dabei gelernt? + +## Aufgabe + +[Die Dokumentation lesen](assignment.md) + +**Haftungsausschluss**: +Dieses Dokument wurde mit dem KI-Übersetzungsdienst [Co-op Translator](https://github.com/Azure/co-op-translator) übersetzt. Obwohl wir uns um Genauigkeit bemühen, beachten Sie bitte, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner ursprünglichen Sprache sollte als maßgebliche Quelle betrachtet werden. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die sich aus der Nutzung dieser Übersetzung ergeben. \ No newline at end of file diff --git a/translations/de/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md b/translations/de/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md new file mode 100644 index 00000000..3c4ebb80 --- /dev/null +++ b/translations/de/1-getting-started-lessons/1-intro-to-programming-languages/assignment.md @@ -0,0 +1,23 @@ + +# Lesen der Dokumentation + +## Anweisungen + +Es gibt viele Werkzeuge, die ein Webentwickler benötigen könnte, die in der [MDN-Dokumentation für clientseitige Tools](https://developer.mozilla.org/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Overview) aufgeführt sind. Wähle 3 Werkzeuge aus, die im Unterricht nicht behandelt wurden, erkläre, warum ein Webentwickler sie verwenden würde, und suche ein Werkzeug, das in diese Kategorie fällt, und teile dessen Dokumentation. Verwende nicht dasselbe Werkzeugbeispiel aus den MDN-Dokumenten. + +## Bewertungskriterien + +Vorbildlich | Angemessen | Verbesserungswürdig +--- | --- | -- | +| Erklärt, warum ein Webentwickler das Werkzeug verwenden würde | Erklärt, wie, aber nicht warum ein Entwickler das Werkzeug verwenden würde | Hat nicht erwähnt, wie oder warum ein Entwickler das Werkzeug verwenden würde | + +**Haftungsausschluss**: +Dieses Dokument wurde mit dem KI-Übersetzungsdienst [Co-op Translator](https://github.com/Azure/co-op-translator) übersetzt. Obwohl wir uns um Genauigkeit bemühen, weisen wir darauf hin, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner ursprünglichen Sprache sollte als maßgebliche Quelle betrachtet werden. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die aus der Nutzung dieser Übersetzung entstehen. \ No newline at end of file diff --git a/translations/de/1-getting-started-lessons/2-github-basics/README.md b/translations/de/1-getting-started-lessons/2-github-basics/README.md new file mode 100644 index 00000000..5b27e021 --- /dev/null +++ b/translations/de/1-getting-started-lessons/2-github-basics/README.md @@ -0,0 +1,337 @@ + +# Einführung in GitHub + +Diese Lektion behandelt die Grundlagen von GitHub, einer Plattform zum Hosten und Verwalten von Änderungen an deinem Code. + +![Einführung in GitHub](../../../../sketchnotes/webdev101-github.png) +> Sketchnote von [Tomomi Imura](https://twitter.com/girlie_mac) + +## Quiz vor der Vorlesung +[Quiz vor der Vorlesung](https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/3) + +## Einführung + +In dieser Lektion behandeln wir: + +- das Nachverfolgen der Arbeit, die du auf deinem Rechner erledigst +- das Arbeiten an Projekten mit anderen +- wie man zu Open-Source-Software beiträgt + +### Voraussetzungen + +Bevor du beginnst, überprüfe, ob Git installiert ist. Gib im Terminal ein: +`git --version` + +Falls Git nicht installiert ist, [lade Git herunter](https://git-scm.com/downloads). Richte anschließend dein lokales Git-Profil im Terminal ein: +* `git config --global user.name "dein-name"` +* `git config --global user.email "deine-email"` + +Um zu überprüfen, ob Git bereits konfiguriert ist, kannst du eingeben: +`git config --list` + +Du benötigst außerdem ein GitHub-Konto, einen Code-Editor (wie Visual Studio Code) und musst dein Terminal (oder die Eingabeaufforderung) öffnen. + +Gehe zu [github.com](https://github.com/) und erstelle ein Konto, falls du noch keines hast, oder melde dich an und vervollständige dein Profil. + +✅ GitHub ist nicht das einzige Code-Repository der Welt; es gibt auch andere, aber GitHub ist das bekannteste. + +### Vorbereitung + +Du benötigst sowohl einen Ordner mit einem Code-Projekt auf deinem lokalen Rechner (Laptop oder PC) als auch ein öffentliches Repository auf GitHub, das als Beispiel dafür dient, wie man zu den Projekten anderer beiträgt. + +--- + +## Code-Verwaltung + +Angenommen, du hast lokal einen Ordner mit einem Code-Projekt und möchtest deinen Fortschritt mit Git, dem Versionskontrollsystem, nachverfolgen. Manche Leute vergleichen die Nutzung von Git mit dem Schreiben eines Liebesbriefs an dein zukünftiges Ich. Wenn du deine Commit-Nachrichten Tage, Wochen oder Monate später liest, kannst du dich daran erinnern, warum du eine Entscheidung getroffen hast, oder eine Änderung "rückgängig machen" – vorausgesetzt, du schreibst gute "Commit-Nachrichten". + +### Aufgabe: Ein Repository erstellen und Code committen + +> Schau dir das Video an +> +> [![Git- und GitHub-Grundlagen-Video](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) + +1. **Repository auf GitHub erstellen**. Auf GitHub.com findest du im Reiter "Repositories" oder in der Navigationsleiste oben rechts den Button **new repo**. + + 1. Gib deinem Repository (Ordner) einen Namen. + 1. Wähle **create repository**. + +1. **Zu deinem Arbeitsordner navigieren**. Wechsle im Terminal zu dem Ordner (auch Verzeichnis genannt), den du nachverfolgen möchtest. Gib ein: + + ```bash + cd [name of your folder] + ``` + +1. **Ein Git-Repository initialisieren**. Gib in deinem Projekt ein: + + ```bash + git init + ``` + +1. **Status überprüfen**. Um den Status deines Repositories zu überprüfen, gib ein: + + ```bash + git status + ``` + + Die Ausgabe könnte etwa so aussehen: + + ```output + Changes not staged for commit: + (use "git add ..." to update what will be committed) + (use "git checkout -- ..." to discard changes in working directory) + + modified: file.txt + modified: file2.txt + ``` + + Normalerweise zeigt dir der Befehl `git status` Dinge wie Dateien, die bereit sind, im Repository _gespeichert_ zu werden, oder Änderungen, die du möglicherweise beibehalten möchtest. + +1. **Alle Dateien zum Nachverfolgen hinzufügen** + Dies wird auch als Staging von Dateien oder Hinzufügen von Dateien zum Staging-Bereich bezeichnet. + + ```bash + git add . + ``` + + Das Argument `git add` plus `.` bedeutet, dass alle deine Dateien und Änderungen nachverfolgt werden. + +1. **Ausgewählte Dateien zum Nachverfolgen hinzufügen** + + ```bash + git add [file or folder name] + ``` + + Dies hilft uns, nur ausgewählte Dateien zum Staging-Bereich hinzuzufügen, wenn wir nicht alle Dateien auf einmal committen möchten. + +1. **Alle Dateien aus dem Staging-Bereich entfernen** + + ```bash + git reset + ``` + + Dieser Befehl hilft uns, alle Dateien auf einmal aus dem Staging-Bereich zu entfernen. + +1. **Eine bestimmte Datei aus dem Staging-Bereich entfernen** + + ```bash + git reset [file or folder name] + ``` + + Dieser Befehl hilft uns, nur eine bestimmte Datei aus dem Staging-Bereich zu entfernen, die wir nicht in den nächsten Commit aufnehmen möchten. + +1. **Deine Arbeit speichern**. An diesem Punkt hast du die Dateien in einen sogenannten _Staging-Bereich_ hinzugefügt. Ein Ort, an dem Git deine Dateien nachverfolgt. Um die Änderung dauerhaft zu machen, musst du die Dateien _committen_. Dazu erstellst du einen _Commit_ mit dem Befehl `git commit`. Ein _Commit_ stellt einen Speicherpunkt in der Historie deines Repositories dar. Gib Folgendes ein, um einen _Commit_ zu erstellen: + + ```bash + git commit -m "first commit" + ``` + + Dies commitet alle deine Dateien und fügt die Nachricht "first commit" hinzu. Für zukünftige Commit-Nachrichten solltest du eine detailliertere Beschreibung verwenden, um zu vermitteln, welche Art von Änderung du vorgenommen hast. + +1. **Dein lokales Git-Repository mit GitHub verbinden**. Ein Git-Repository ist auf deinem Rechner nützlich, aber irgendwann möchtest du ein Backup deiner Dateien an einem anderen Ort haben und auch andere Leute einladen, mit dir an deinem Repository zu arbeiten. Ein großartiger Ort dafür ist GitHub. Wir haben bereits ein Repository auf GitHub erstellt, daher müssen wir nur noch unser lokales Git-Repository mit GitHub verbinden. Der Befehl `git remote add` erledigt genau das. Gib den folgenden Befehl ein: + + > Hinweis: Bevor du den Befehl eingibst, gehe zu deiner GitHub-Repository-Seite, um die Repository-URL zu finden. Du wirst sie im folgenden Befehl verwenden. Ersetze ```https://github.com/username/repository_name.git``` durch deine GitHub-URL. + + ```bash + git remote add origin https://github.com/username/repository_name.git + ``` + + Dies erstellt eine _Remote-Verbindung_, die "origin" genannt wird und auf das GitHub-Repository zeigt, das du zuvor erstellt hast. + +1. **Lokale Dateien zu GitHub senden**. Bisher hast du eine _Verbindung_ zwischen dem lokalen Repository und dem GitHub-Repository erstellt. Lass uns diese Dateien mit dem folgenden Befehl `git push` zu GitHub senden: + + > Hinweis: Dein Branch-Name könnte standardmäßig anders sein als ```main```. + + ```bash + git push -u origin main + ``` + + Dies sendet deine Commits in deinem "main"-Branch zu GitHub. + +2. **Weitere Änderungen hinzufügen**. Wenn du weiterhin Änderungen vornehmen und sie zu GitHub pushen möchtest, musst du nur die folgenden drei Befehle verwenden: + + ```bash + git add . + git commit -m "type your commit message here" + git push + ``` + + > Tipp: Du möchtest vielleicht auch eine `.gitignore`-Datei verwenden, um zu verhindern, dass Dateien, die du nicht nachverfolgen möchtest, auf GitHub erscheinen – wie z. B. eine Notizdatei, die du im selben Ordner speicherst, die aber nichts in einem öffentlichen Repository zu suchen hat. Vorlagen für `.gitignore`-Dateien findest du unter [.gitignore templates](https://github.com/github/gitignore). + +#### Commit-Nachrichten + +Eine großartige Git-Commit-Betreffzeile vervollständigt den folgenden Satz: +Wenn angewendet, wird dieser Commit . + +Für den Betreff verwende die Befehlsform im Präsens: "ändern" statt "geändert" oder "ändert". +Wie im Betreff solltest du auch im optionalen Textkörper die Befehlsform im Präsens verwenden. Der Textkörper sollte die Motivation für die Änderung enthalten und diese mit dem vorherigen Verhalten kontrastieren. Du erklärst das `Warum`, nicht das `Wie`. + +✅ Nimm dir ein paar Minuten Zeit, um auf GitHub zu stöbern. Kannst du eine wirklich großartige Commit-Nachricht finden? Kannst du eine sehr minimale finden? Welche Informationen denkst du, sind am wichtigsten und nützlichsten, um sie in einer Commit-Nachricht zu vermitteln? + +### Aufgabe: Zusammenarbeit + +Der Hauptgrund, Dinge auf GitHub zu stellen, ist die Möglichkeit, mit anderen Entwicklern zusammenzuarbeiten. + +## Zusammenarbeit an Projekten mit anderen + +> Schau dir das Video an +> +> [![Git- und GitHub-Grundlagen-Video](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) + +Navigiere in deinem Repository zu `Insights > Community`, um zu sehen, wie dein Projekt im Vergleich zu den empfohlenen Community-Standards abschneidet. + + Hier sind einige Dinge, die dein GitHub-Repository verbessern können: + - **Beschreibung**. Hast du eine Beschreibung für dein Projekt hinzugefügt? + - **README**. Hast du ein README hinzugefügt? GitHub bietet Anleitungen zum Schreiben eines [README](https://docs.github.com/articles/about-readmes/?WT.mc_id=academic-77807-sagibbon). + - **Beitragsrichtlinien**. Hat dein Projekt [Beitragsrichtlinien](https://docs.github.com/articles/setting-guidelines-for-repository-contributors/?WT.mc_id=academic-77807-sagibbon)? + - **Verhaltenskodex**. Einen [Verhaltenskodex](https://docs.github.com/articles/adding-a-code-of-conduct-to-your-project/)? + - **Lizenz**. Vielleicht am wichtigsten: eine [Lizenz](https://docs.github.com/articles/adding-a-license-to-a-repository/)? + +All diese Ressourcen helfen dabei, neue Teammitglieder einzuarbeiten. Und genau das sind in der Regel die Dinge, die neue Mitwirkende sich ansehen, bevor sie überhaupt deinen Code betrachten, um herauszufinden, ob dein Projekt der richtige Ort für sie ist, um ihre Zeit zu investieren. + +✅ README-Dateien werden oft von beschäftigten Maintainer:innen vernachlässigt, obwohl sie Zeit in Anspruch nehmen, um sie vorzubereiten. Kannst du ein Beispiel für ein besonders aussagekräftiges README finden? Hinweis: Es gibt einige [Tools, um gute READMEs zu erstellen](https://www.makeareadme.com/), die du ausprobieren könntest. + +### Aufgabe: Code zusammenführen + +Beitragsdokumente helfen Menschen, zum Projekt beizutragen. Sie erklären, welche Arten von Beiträgen du suchst und wie der Prozess funktioniert. Mitwirkende müssen eine Reihe von Schritten durchlaufen, um zu deinem Repository auf GitHub beitragen zu können: + +1. **Dein Repository forken**. Du wirst wahrscheinlich möchten, dass Leute dein Projekt _forken_. Forken bedeutet, eine Kopie deines Repositories in ihrem GitHub-Profil zu erstellen. +1. **Klonen**. Von dort aus klonen sie das Projekt auf ihren lokalen Rechner. +1. **Einen Branch erstellen**. Du wirst sie bitten, einen _Branch_ für ihre Arbeit zu erstellen. +1. **Änderungen auf einen Bereich konzentrieren**. Bitte Mitwirkende, ihre Beiträge auf eine Sache gleichzeitig zu konzentrieren – so ist die Wahrscheinlichkeit höher, dass du ihre Arbeit _zusammenführen_ kannst. Stell dir vor, sie schreiben einen Bugfix, fügen ein neues Feature hinzu und aktualisieren mehrere Tests – was, wenn du nur 2 von 3 oder 1 von 3 Änderungen implementieren möchtest oder kannst? + +✅ Stell dir eine Situation vor, in der Branches besonders wichtig sind, um guten Code zu schreiben und zu veröffentlichen. Welche Anwendungsfälle fallen dir ein? + +> Hinweis: Sei die Veränderung, die du in der Welt sehen möchtest, und erstelle auch für deine eigene Arbeit Branches. Alle Commits, die du machst, werden auf dem Branch gemacht, auf dem du dich gerade "befindest". Verwende `git status`, um zu sehen, auf welchem Branch du dich befindest. + +Lass uns einen Workflow für Mitwirkende durchgehen. Angenommen, der Mitwirkende hat das Repository bereits _geforkt_ und _geklont_, sodass er ein Git-Repository hat, das auf seinem lokalen Rechner bereit ist: + +1. **Einen Branch erstellen**. Verwende den Befehl `git branch`, um einen Branch zu erstellen, der die Änderungen enthält, die sie beitragen möchten: + + ```bash + git branch [branch-name] + ``` + +1. **Zum Arbeits-Branch wechseln**. Wechsle zum angegebenen Branch und aktualisiere das Arbeitsverzeichnis mit `git switch`: + + ```bash + git switch [branch-name] + ``` + +1. **Arbeiten durchführen**. An diesem Punkt möchtest du deine Änderungen hinzufügen. Vergiss nicht, Git darüber zu informieren, mit den folgenden Befehlen: + + ```bash + git add . + git commit -m "my changes" + ``` + + Stelle sicher, dass du deinem Commit einen guten Namen gibst – für dich selbst und für den Maintainer des Repositories, dem du hilfst. + +1. **Deine Arbeit mit dem `main`-Branch kombinieren**. Irgendwann bist du mit deiner Arbeit fertig und möchtest sie mit der des `main`-Branches kombinieren. Der `main`-Branch könnte sich inzwischen geändert haben, also stelle sicher, dass du ihn zuerst mit den neuesten Änderungen aktualisierst, indem du die folgenden Befehle ausführst: + + ```bash + git switch main + git pull + ``` + + An diesem Punkt möchtest du sicherstellen, dass alle _Konflikte_, Situationen, in denen Git die Änderungen nicht einfach _kombinieren_ kann, in deinem Arbeits-Branch auftreten. Führe daher die folgenden Befehle aus: + + ```bash + git switch [branch_name] + git merge main + ``` + + Dies bringt alle Änderungen von `main` in deinen Branch, und hoffentlich kannst du einfach weitermachen. Falls nicht, zeigt dir VS Code, wo Git _verwirrt_ ist, und du änderst die betroffenen Dateien, um anzugeben, welcher Inhalt am genauesten ist. + +1. **Deine Arbeit zu GitHub senden**. Deine Arbeit zu GitHub zu senden bedeutet zwei Dinge: Deinen Branch in dein Repository pushen und dann einen PR (Pull Request) öffnen. + + ```bash + git push --set-upstream origin [branch-name] + ``` + + Der obige Befehl erstellt den Branch in deinem geforkten Repository. + +1. **Einen PR öffnen**. Als Nächstes möchtest du einen PR öffnen. Das machst du, indem du zu deinem geforkten Repository auf GitHub navigierst. Du wirst auf GitHub eine Anzeige sehen, die fragt, ob du einen neuen PR erstellen möchtest. Klicke darauf, und du wirst zu einer Oberfläche weitergeleitet, in der du den Commit-Nachrichtentitel ändern und eine passendere Beschreibung hinzufügen kannst. Jetzt sieht der Maintainer des Repositories, das du geforkt hast, diesen PR, und _Daumen drücken_, sie werden ihn schätzen und _zusammenführen_. Du bist jetzt ein Mitwirkender, yay :) + +1. **Aufräumen**. Es gilt als gute Praxis, nach einem erfolgreich zusammengeführten PR aufzuräumen. Du möchtest sowohl deinen lokalen Branch als auch den Branch, den du zu GitHub gepusht hast, bereinigen. Lösche ihn zuerst lokal mit dem folgenden Befehl: + + ```bash + git branch -d [branch-name] + ``` +Stellen Sie sicher, dass Sie als Nächstes zur GitHub-Seite des geforkten Repos gehen und den Remote-Branch entfernen, den Sie gerade dorthin gepusht haben. + +`Pull request` scheint ein seltsamer Begriff zu sein, da Sie eigentlich Ihre Änderungen in das Projekt pushen möchten. Aber der Maintainer (Projektbesitzer) oder das Kernteam muss Ihre Änderungen prüfen, bevor sie mit dem "main"-Branch des Projekts zusammengeführt werden. Sie bitten also im Grunde um eine Entscheidungsfindung des Maintainers. + +Ein Pull Request ist der Ort, an dem die Unterschiede, die auf einem Branch eingeführt wurden, verglichen und diskutiert werden können – mit Reviews, Kommentaren, integrierten Tests und mehr. Ein guter Pull Request folgt in etwa denselben Regeln wie eine Commit-Nachricht. Sie können einen Verweis auf ein Issue im Issue-Tracker hinzufügen, wenn Ihre Arbeit beispielsweise ein Problem löst. Dies geschieht mit einem `#`, gefolgt von der Nummer des Issues. Zum Beispiel `#97`. + +🤞Daumen drücken, dass alle Prüfungen bestanden werden und die Projektverantwortlichen Ihre Änderungen in das Projekt übernehmen🤞 + +Aktualisieren Sie Ihren aktuellen lokalen Arbeits-Branch mit allen neuen Commits vom entsprechenden Remote-Branch auf GitHub: + +`git pull` + +## Wie man zu Open Source beiträgt + +Zuerst suchen wir ein Repository (oder **Repo**) auf GitHub, das Sie interessiert und zu dem Sie eine Änderung beitragen möchten. Sie sollten dessen Inhalte auf Ihren Rechner kopieren. + +✅ Eine gute Möglichkeit, 'anfängerfreundliche' Repos zu finden, ist die [Suche nach dem Tag 'good-first-issue'](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/). + +![Ein Repo lokal kopieren](../../../../1-getting-started-lessons/2-github-basics/images/clone_repo.png) + +Es gibt mehrere Möglichkeiten, Code zu kopieren. Eine Möglichkeit ist, die Inhalte des Repositories zu "klonen", entweder über HTTPS, SSH oder die GitHub CLI (Command Line Interface). + +Öffnen Sie Ihr Terminal und klonen Sie das Repository wie folgt: +`git clone https://github.com/ProjectURL` + +Um am Projekt zu arbeiten, wechseln Sie in den richtigen Ordner: +`cd ProjectURL` + +Sie können das gesamte Projekt auch mit [Codespaces](https://github.com/features/codespaces), dem eingebetteten Code-Editor / Cloud-Entwicklungsumgebung von GitHub, oder [GitHub Desktop](https://desktop.github.com/) öffnen. + +Alternativ können Sie den Code in einem gezippten Ordner herunterladen. + +### Ein paar weitere interessante Dinge über GitHub + +Sie können jedes öffentliche Repository auf GitHub mit einem Stern markieren, beobachten oder "forken". Ihre mit einem Stern markierten Repositories finden Sie im Dropdown-Menü oben rechts. Es ist wie ein Lesezeichen, aber für Code. + +Projekte haben einen Issue-Tracker, meistens auf GitHub im Tab "Issues", es sei denn, es wird anders angegeben. Dort diskutieren Menschen über Probleme, die mit dem Projekt zusammenhängen. Im Tab "Pull Requests" werden Änderungen, die in Bearbeitung sind, diskutiert und überprüft. + +Projekte können auch Diskussionen in Foren, Mailinglisten oder Chat-Kanälen wie Slack, Discord oder IRC haben. + +✅ Schauen Sie sich Ihr neues GitHub-Repo an und probieren Sie ein paar Dinge aus, wie das Bearbeiten von Einstellungen, das Hinzufügen von Informationen zu Ihrem Repo und das Erstellen eines Projekts (wie ein Kanban-Board). Es gibt viel zu entdecken! + +--- + +## 🚀 Herausforderung + +Arbeiten Sie mit einem Freund zusammen an den Codes des jeweils anderen. Erstellen Sie gemeinsam ein Projekt, forken Sie Code, erstellen Sie Branches und führen Sie Änderungen zusammen. + +## Quiz nach der Vorlesung +[Quiz nach der Vorlesung](https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/4) + +## Überprüfung & Selbststudium + +Lesen Sie mehr über [Beiträge zu Open Source Software](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution). + +[Git-Spickzettel](https://training.github.com/downloads/github-git-cheat-sheet/). + +Üben, üben, üben. GitHub bietet großartige Lernpfade über [skills.github.com](https://skills.github.com): + +- [Erste Woche auf GitHub](https://skills.github.com/#first-week-on-github) + +Dort finden Sie auch fortgeschrittene Kurse. + +## Aufgabe + +Absolvieren Sie [den Kurs "Erste Woche auf GitHub"](https://skills.github.com/#first-week-on-github). + +**Haftungsausschluss**: +Dieses Dokument wurde mit dem KI-Übersetzungsdienst [Co-op Translator](https://github.com/Azure/co-op-translator) übersetzt. Obwohl wir uns um Genauigkeit bemühen, weisen wir darauf hin, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner ursprünglichen Sprache sollte als maßgebliche Quelle betrachtet werden. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die aus der Nutzung dieser Übersetzung entstehen. \ No newline at end of file diff --git a/translations/de/1-getting-started-lessons/3-accessibility/README.md b/translations/de/1-getting-started-lessons/3-accessibility/README.md new file mode 100644 index 00000000..cf1cdd51 --- /dev/null +++ b/translations/de/1-getting-started-lessons/3-accessibility/README.md @@ -0,0 +1,241 @@ + +# Erstellen barrierefreier Webseiten + +![Alles über Barrierefreiheit](../../../../sketchnotes/webdev101-a11y.png) +> Sketchnote von [Tomomi Imura](https://twitter.com/girlie_mac) + +## Quiz vor der Vorlesung +[Quiz vor der Vorlesung](https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/5) + +> Die Stärke des Webs liegt in seiner Universalität. Der Zugang für alle, unabhängig von Behinderung, ist ein wesentlicher Aspekt. +> +> \- Sir Timothy Berners-Lee, W3C-Direktor und Erfinder des World Wide Web + +Dieses Zitat unterstreicht perfekt die Bedeutung der Erstellung barrierefreier Websites. Eine Anwendung, die nicht von allen genutzt werden kann, ist per Definition ausschließend. Als Webentwickler sollten wir Barrierefreiheit immer im Blick haben. Wenn Sie diesen Fokus von Anfang an haben, sind Sie auf dem besten Weg, sicherzustellen, dass jeder Zugang zu den von Ihnen erstellten Seiten hat. In dieser Lektion lernen Sie die Werkzeuge kennen, die Ihnen helfen, sicherzustellen, dass Ihre Webinhalte barrierefrei sind, und wie Sie mit Barrierefreiheit im Hinterkopf entwickeln können. + +> Sie können diese Lektion auf [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/accessibility/?WT.mc_id=academic-77807-sagibbon) absolvieren! + +## Zu verwendende Werkzeuge + +### Screenreader + +Eines der bekanntesten Barrierefreiheitswerkzeuge sind Screenreader. + +[Screenreader](https://en.wikipedia.org/wiki/Screen_reader) sind häufig genutzte Clients für Menschen mit Sehbehinderungen. Während wir Zeit darauf verwenden, sicherzustellen, dass ein Browser die Informationen, die wir teilen möchten, korrekt darstellt, müssen wir auch sicherstellen, dass ein Screenreader dies tut. + +Ein Screenreader liest eine Seite von oben nach unten hörbar vor. Wenn Ihre Seite nur aus Text besteht, wird der Reader die Informationen ähnlich wie ein Browser vermitteln. Natürlich sind Webseiten selten rein textbasiert; sie enthalten Links, Grafiken, Farben und andere visuelle Komponenten. Es muss darauf geachtet werden, dass diese Informationen korrekt von einem Screenreader gelesen werden. + +Jeder Webentwickler sollte sich mit einem Screenreader vertraut machen. Wie oben hervorgehoben, ist es der Client, den Ihre Nutzer verwenden werden. Genauso wie Sie wissen, wie ein Browser funktioniert, sollten Sie lernen, wie ein Screenreader funktioniert. Glücklicherweise sind Screenreader in den meisten Betriebssystemen integriert. + +Einige Browser haben auch integrierte Tools und Erweiterungen, die Text laut vorlesen oder sogar grundlegende Navigationsfunktionen bieten, wie [diese barrierefreiheitsorientierten Edge-Browser-Tools](https://support.microsoft.com/help/4000734/microsoft-edge-accessibility-features). Diese sind ebenfalls wichtige Barrierefreiheitswerkzeuge, funktionieren jedoch ganz anders als Screenreader und sollten nicht mit Screenreader-Testtools verwechselt werden. + +✅ Probieren Sie einen Screenreader und einen Browser-Textleser aus. Unter Windows ist [Narrator](https://support.microsoft.com/windows/complete-guide-to-narrator-e4397a0d-ef4f-b386-d8ae-c172f109bdb1/?WT.mc_id=academic-77807-sagibbon) standardmäßig enthalten, und [JAWS](https://webaim.org/articles/jaws/) und [NVDA](https://www.nvaccess.org/about-nvda/) können ebenfalls installiert werden. Unter macOS und iOS ist [VoiceOver](https://support.apple.com/guide/voiceover/welcome/10) standardmäßig installiert. + +### Zoom + +Ein weiteres Werkzeug, das häufig von Menschen mit Sehbehinderungen verwendet wird, ist das Zoomen. Die einfachste Art des Zoomens ist statisches Zoomen, gesteuert durch `Control + Pluszeichen (+)` oder durch das Verringern der Bildschirmauflösung. Diese Art des Zoomens bewirkt, dass die gesamte Seite vergrößert wird. Daher ist es wichtig, [responsives Design](https://developer.mozilla.org/docs/Learn/CSS/CSS_layout/Responsive_Design) zu verwenden, um eine gute Benutzererfahrung bei erhöhten Zoomstufen zu gewährleisten. + +Eine andere Art des Zoomens basiert auf spezieller Software, die einen Bereich des Bildschirms vergrößert und schwenkt, ähnlich wie bei der Verwendung einer echten Lupe. Unter Windows ist [Magnifier](https://support.microsoft.com/windows/use-magnifier-to-make-things-on-the-screen-easier-to-see-414948ba-8b1c-d3bd-8615-0e5e32204198) integriert, und [ZoomText](https://www.freedomscientific.com/training/zoomtext/getting-started/) ist eine Drittanbieter-Vergrößerungssoftware mit mehr Funktionen und einer größeren Nutzerbasis. Sowohl macOS als auch iOS verfügen über eine integrierte Vergrößerungssoftware namens [Zoom](https://www.apple.com/accessibility/mac/vision/). + +### Kontrastprüfer + +Farben auf Websites müssen sorgfältig ausgewählt werden, um den Bedürfnissen von farbenblinden Nutzern oder Menschen, die Schwierigkeiten haben, Farben mit geringem Kontrast zu sehen, gerecht zu werden. + +✅ Testen Sie eine Website, die Sie gerne nutzen, auf Farbverwendung mit einer Browser-Erweiterung wie [WCAGs Farbprüfer](https://microsoftedge.microsoft.com/addons/detail/wcag-color-contrast-check/idahaggnlnekelhgplklhfpchbfdmkjp?hl=en-US&WT.mc_id=academic-77807-sagibbon). Was lernen Sie? + +### Lighthouse + +Im Entwicklerbereich Ihres Browsers finden Sie das Lighthouse-Tool. Dieses Tool ist wichtig, um einen ersten Überblick über die Barrierefreiheit (sowie andere Analysen) einer Website zu erhalten. Während es wichtig ist, sich nicht ausschließlich auf Lighthouse zu verlassen, ist eine 100%-Bewertung als Ausgangspunkt sehr hilfreich. + +✅ Finden Sie Lighthouse im Entwicklerbereich Ihres Browsers und führen Sie eine Analyse auf einer beliebigen Website durch. Was entdecken Sie? + +## Gestaltung für Barrierefreiheit + +Barrierefreiheit ist ein relativ großes Thema. Um Ihnen zu helfen, stehen zahlreiche Ressourcen zur Verfügung. + +- [Accessible U - University of Minnesota](https://accessibility.umn.edu/your-role/web-developers) + +Während wir nicht jeden Aspekt der Erstellung barrierefreier Websites abdecken können, finden Sie unten einige der Kernprinzipien, die Sie umsetzen sollten. Eine barrierefreie Seite von Anfang an zu gestalten ist **immer** einfacher, als eine bestehende Seite nachträglich barrierefrei zu machen. + +## Gute Anzeigeprinzipien + +### Farbpaletten, die sicher sind + +Menschen sehen die Welt auf unterschiedliche Weise, und dazu gehören auch Farben. Wenn Sie ein Farbschema für Ihre Website auswählen, sollten Sie sicherstellen, dass es für alle zugänglich ist. Ein großartiges [Tool zur Erstellung von Farbpaletten ist Color Safe](http://colorsafe.co/). + +✅ Identifizieren Sie eine Website, die in ihrer Farbverwendung sehr problematisch ist. Warum? + +### Verwenden Sie das richtige HTML + +Mit CSS und JavaScript ist es möglich, jedes Element wie jede Art von Steuerung aussehen zu lassen. `` könnte verwendet werden, um einen `