` and `
`:
In your solution, you can use variable someVariable
.
```
-In Markdown, wrap your code with backticks (\`):
+In Markdown, wrap your code with backticks (\`). You can even add the programming language's syntax highlighting with `{:.language-python}` for example.
```markdown
-In your solution, use can use variable `someVariable`.
+In your solution, use can use variable `someVariable`. Use the abbreviated notation `result += 1`{:.language-python}.
```
### Code blocks
@@ -301,6 +301,14 @@ Using Markdown, Dodona can automatically add syntax highlighting if you provide
let a = 5;
let b = 42;
```
+Syntax highlighting for the Python doctest format can be obtained this way:
+
+ ```console?lang=python&prompt=>>>
+ >>> echo("Hello world!")
+ "Hello world!"
+ >>> echo(5)
+ 5
+ ```
## Callouts
diff --git a/nl/references/exercise-description/index.md b/nl/references/exercise-description/index.md
index da83adf2b..7de0a5c0e 100644
--- a/nl/references/exercise-description/index.md
+++ b/nl/references/exercise-description/index.md
@@ -257,10 +257,10 @@ Als je HTML gebruikt, plaats dan `` en `
` rond je code.
Gebruik de variabele someVariable
in je oplossing.
```
-Als je Markdown gebruikt, plaats dan *backticks* (\`) rond je code.
+Als je Markdown gebruikt, plaats dan *backticks* (\`) rond je code. Je kan zelfs ook de de syntax highlighting van de programmeertaal toevoegen met `{:.language-python}` bijvoorbeeld.
```markdown
-Gebruik de variabele `someVariable` in je oplossing.
+Gebruik de variabele `someVariable` in je oplossing. Gebruik de verkorte notatie `result += 1`{:.language-python}.
```
### Blokken code
@@ -307,6 +307,15 @@ Als je Markdown gebruikt, dan kan Dodona automatisch de code opmaken als je aang
let b = 42;
```
+Syntax highlighting voor het Python doctest formaat kan je op deze manier bekomen:
+
+ ```console?lang=python&prompt=>>>
+ >>> echo("Hello world!")
+ "Hello world!"
+ >>> echo(5)
+ 5
+ ```
+
## Callouts
Om de aandacht te vestigen op een stukje uit je opgave, kan je gebruik maken van *callouts*. Dit zorgt voor een opmaak zoals hier wordt getoond:
From a0fc134e3137bdb7c3aeba65addfaa068fba96f9 Mon Sep 17 00:00:00 2001
From: BrechtW <56451049+BTWS2@users.noreply.github.com>
Date: Fri, 17 Nov 2023 16:27:30 +0100
Subject: [PATCH 04/51] testsuites
---
nl/guides/exercises/testsuites/index.md | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/nl/guides/exercises/testsuites/index.md b/nl/guides/exercises/testsuites/index.md
index ea4203206..709f49bb0 100644
--- a/nl/guides/exercises/testsuites/index.md
+++ b/nl/guides/exercises/testsuites/index.md
@@ -27,9 +27,9 @@ In de [referentiegids](/nl/references/tested/dsl) staat het volledige formaat vo
Een testplan bestaat uit een hiërarchie van drie niveaus:
-1. _Tabbladen_, die ook als apart tabblad getoond worden op Dodona.
-2. _Contexten_, die een onafhankelijke eenheid van testgevallen voorstellen.
-3. _Testgevallen_, die één test en zijn resultaten bevatten.
+1. **Tabbladen** (_tab_), die ook als apart tabblad getoond worden op Dodona.
+2. **Contexten** (_contexts_), die een onafhankelijke eenheid van testgevallen voorstellen.
+3. **Testgevallen** (_testcases_), die één test en zijn resultaten bevatten.
Een voorbeeld van een testplan met alle niveaus is:
@@ -52,9 +52,9 @@ Een voorbeeld van een testplan met alle niveaus is:
return: !v "2"
```
-In dit testplan zijn twee analoge tabbladen.
+In dit testplan zijn er twee gelijkaardige tabbladen.
Elk tabblad bevat twee contexten, die elk één testgeval hebben.
-Elk testgeval roept de functie `echo` op met een andere parameter en bepaalt ook de verwachte returnwaarde.
+Elk testgeval roept de functie `echo` op met een andere parameter en bepaalt ook de verwachte returnwaarde (_return_).
Elk testgeval zit in een eigen context omdat elke functieoproep onafhankelijk van elkaar is.
Een context met één testgeval komt veel voor.
@@ -149,7 +149,7 @@ Hoewel de Python-syntaxis gebruikt wordt, wijken de conventies in een testplan s
Een testplan gebruikt de Python-syntaxis, maar is geen Python.
De gebruikte conventies zijn:
-- Functieoproepen wier naam begint met een hoofdletters worden beschouwd als
+- Functieoproepen waarvan de naam begint met een hoofdletter worden beschouwd als
_constructors_, bijvoorbeeld `Constructor(56)`.
- Identifiers die volledig in hoofdletters geschreven zijn worden beschouwd als globale constanten, bijvoorbeeld `VERY_LONG_NAME`.
- Het casten van waarden gebeurt op de gebruikelijke manier van Python. Het casten van een getal naar `int64` wordt bijvoorbeeld `int64(56)`. Er is wel geen ondersteuning voor Python-constructors. Een verzameling moet je noteren als `set([1, 2, 3, 5])`, niet als `set(1, 2, 3, 5)`.
@@ -227,10 +227,10 @@ def evaluate_test(expected, actual, five, six):
Wat we doen in deze functie is de datum van vandaag berekenen.
We geven vervolgens een `EvaluationResult` terug met vier parameters:
-1. Een eerste boolean die aangeeft of de waarde uit de oplossing juist is of niet. In dit geval vergelijken we die gewoon met de datum van vandaag.
-2. De verwachte waarde om te tonen op Dodona. We overschijven hier de verwachte waarde uit het testplan met de datum van vandaag.
-3. De eigenlijke waarde om te tonen op Dodona. We geven hier de eigenlijke waarde gewoon door.
-4. Een optionele lijst van berichten. Deze berichten worden ook getoond op Dodona en kunnen gebruikt worden om bijkomende feedback of uitleg aan de studenten te geven.
+1. `result`: Een eerste boolean die aangeeft of de waarde uit de oplossing juist is of niet. In dit geval vergelijken we die gewoon met de datum van vandaag.
+2. `dsl_expected`: De verwachte waarde om te tonen op Dodona. We overschijven hier de verwachte waarde uit het testplan met de datum van vandaag.
+3. `dsl_actual`: De eigenlijke waarde om te tonen op Dodona. We geven hier de eigenlijke waarde gewoon door.
+4. `messages`: Een optionele lijst van berichten. Deze berichten worden ook getoond op Dodona en kunnen gebruikt worden om bijkomende feedback of uitleg aan de studenten te geven.
Ook `stderr` en `stdout` kunnen een eigen checkfunctie gebruiken.
Hiervoor wordt dezelfde notatie gebruikt, maar met `data` in plaats van `value`:
From 4695c46e216e800db264d57d54e5d385b3f6c149 Mon Sep 17 00:00:00 2001
From: BrechtW <56451049+BTWS2@users.noreply.github.com>
Date: Fri, 17 Nov 2023 16:48:50 +0100
Subject: [PATCH 05/51] syntax
---
en/references/exercise-description/index.md | 4 ++--
nl/guides/exercises/examples/_common.md | 6 +++---
nl/guides/exercises/examples/class/index.md | 6 +++---
nl/guides/exercises/examples/command-line/index.md | 6 +++---
nl/guides/exercises/examples/input-output/index.md | 6 +++---
nl/guides/exercises/testsuites/index.md | 6 +++---
nl/references/exercise-description/index.md | 4 ++--
7 files changed, 19 insertions(+), 19 deletions(-)
diff --git a/en/references/exercise-description/index.md b/en/references/exercise-description/index.md
index 5bf4387d0..3ab9a19e1 100644
--- a/en/references/exercise-description/index.md
+++ b/en/references/exercise-description/index.md
@@ -249,13 +249,13 @@ You can easily render code fragments in a monospaced font with syntax highlighti
When using HTML, wrap your code with `` and `
`:
```html
-In your solution, you can use variable someVariable
.
+In your solution, you can use variable some_variable
.
```
In Markdown, wrap your code with backticks (\`). You can even add the programming language's syntax highlighting with `{:.language-python}` for example.
```markdown
-In your solution, use can use variable `someVariable`. Use the abbreviated notation `result += 1`{:.language-python}.
+In your solution, use can use variable `some_variable`. Use the abbreviated notation `result += 1`{:.language-python}.
```
### Code blocks
diff --git a/nl/guides/exercises/examples/_common.md b/nl/guides/exercises/examples/_common.md
index c82739949..ce6909c0a 100644
--- a/nl/guides/exercises/examples/_common.md
+++ b/nl/guides/exercises/examples/_common.md
@@ -43,9 +43,9 @@ Maak het bestand `config.json` in de map `minimum` met de volgende inhoud:
In dit bestand worden drie dingen gespecifieerd:
-- De **namen** (_names_) van de oefening zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_) (in dit geval zijn beide namen hetzelfde).
-- De **programmeertaal** (_programming_language_) van de oefening: hier kies je in welke programmeertaal je de oplossingen wilt. In dit geval is dat Python.
-- Het **toegangsniveau** (_access_): hier _private_. We kiezen voor een private oefening omdat dit maar een handleiding is, maar we moedigen aan om je oefeningen publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit duizenden publieke oefeningen op Dodona).
+- `names`: De **namen** van de oefening zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_) (in dit geval zijn beide namen hetzelfde).
+- `programming_language`: De **programmeertaal** van de oefening: hier kies je in welke programmeertaal je de oplossingen wilt. In dit geval is dat Python.
+- `acces`: Het **toegangsniveau** is hier _private_. We kiezen voor een private oefening omdat dit maar een handleiding is, maar we moedigen aan om je oefeningen publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit duizenden publieke oefeningen op Dodona).
Nadat je dit bestand gemaakt hebt, zal je repository er zo uitzien:
diff --git a/nl/guides/exercises/examples/class/index.md b/nl/guides/exercises/examples/class/index.md
index 054eadabe..939706e6d 100644
--- a/nl/guides/exercises/examples/class/index.md
+++ b/nl/guides/exercises/examples/class/index.md
@@ -58,9 +58,9 @@ Maak het bestand `config.json` in de map `counter` met de volgende inhoud:
In dit bestand worden drie dingen gespecifieerd:
-- De **namen** (_names_) van de oefening zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_).
-- De **programmeertaal** (_programming_language_) van de oefening: hier kies je in welke programmeertaal je de oplossingen wilt. In dit geval is dat Python.
-- Het **toegangsniveau** (_access_): hier _private_. We kiezen voor een private oefening omdat dit maar een handleiding is, maar we moedigen aan om je oefeningen publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit duizenden publieke oefeningen op Dodona).
+- `names`: De **namen** van de oefening zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_).
+- `programming_language`: De **programmeertaal** van de oefening: hier kies je in welke programmeertaal je de oplossingen wilt. In dit geval is dat Python.
+- `acces`: Het **toegangsniveau** is hier _private_. We kiezen voor een private oefening omdat dit maar een handleiding is, maar we moedigen aan om je oefeningen publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit duizenden publieke oefeningen op Dodona).
Nadat je dit bestand gemaakt hebt, zal je repository er zo uitzien:
diff --git a/nl/guides/exercises/examples/command-line/index.md b/nl/guides/exercises/examples/command-line/index.md
index 53e8fc7f0..26067c191 100644
--- a/nl/guides/exercises/examples/command-line/index.md
+++ b/nl/guides/exercises/examples/command-line/index.md
@@ -59,9 +59,9 @@ Maak het bestand `config.json` in de map `sum` met de volgende inhoud:
In dit bestand worden drie dingen gespecifieerd:
-- De **namen** (_names_) van de oefening zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_).
-- De **programmeertaal** (_programming_language_) van de oefening: hier kies je in welke programmeertaal je de oplossingen wilt. In dit geval is dat Python.
-- Het **toegangsniveau** (_access_): hier _private_. We kiezen voor een private oefening omdat dit maar een handleiding is, maar we moedigen aan om je oefeningen publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit duizenden publieke oefeningen op Dodona).
+- `names`: De **namen** van de oefening zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_).
+- `programming_language`: De **programmeertaal** van de oefening: hier kies je in welke programmeertaal je de oplossingen wilt. In dit geval is dat Python.
+- `acces`: Het **toegangsniveau** is hier _private_. We kiezen voor een private oefening omdat dit maar een handleiding is, maar we moedigen aan om je oefeningen publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit duizenden publieke oefeningen op Dodona).
Nadat je dit bestand gemaakt hebt, zal je repository er zo uitzien:
diff --git a/nl/guides/exercises/examples/input-output/index.md b/nl/guides/exercises/examples/input-output/index.md
index 9f5db04f0..12ca625de 100644
--- a/nl/guides/exercises/examples/input-output/index.md
+++ b/nl/guides/exercises/examples/input-output/index.md
@@ -59,9 +59,9 @@ Maak het bestand `config.json` in de map `hello-world` met de volgende inhoud:
In dit bestand worden drie dingen gespecifieerd:
-- De **namen** (_names_) van de oefening zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_) (in dit geval zijn beide namen hetzelfde).
-- De **programmeertaal** (_programming_language_) van de oefening: hier kies je in welke programmeertaal je de oplossingen wilt. In dit geval is dat Python.
-- Het **toegangsniveau** (_access_): hier _private_. We kiezen voor een private oefening omdat dit maar een handleiding is, maar we moedigen aan om je oefeningen publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit duizenden publieke oefeningen op Dodona).
+- `names`: De **namen** van de oefening zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_) (in dit geval zijn beide namen hetzelfde).
+- `programming_language`: De **programmeertaal** van de oefening: hier kies je in welke programmeertaal je de oplossingen wilt. In dit geval is dat Python.
+- `acces`: Het **toegangsniveau** is hier _private_. We kiezen voor een private oefening omdat dit maar een handleiding is, maar we moedigen aan om je oefeningen publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit duizenden publieke oefeningen op Dodona).
Nadat je dit bestand gemaakt hebt, zal je repository er zo uitzien:
diff --git a/nl/guides/exercises/testsuites/index.md b/nl/guides/exercises/testsuites/index.md
index 709f49bb0..26c16e45b 100644
--- a/nl/guides/exercises/testsuites/index.md
+++ b/nl/guides/exercises/testsuites/index.md
@@ -27,9 +27,9 @@ In de [referentiegids](/nl/references/tested/dsl) staat het volledige formaat vo
Een testplan bestaat uit een hiërarchie van drie niveaus:
-1. **Tabbladen** (_tab_), die ook als apart tabblad getoond worden op Dodona.
-2. **Contexten** (_contexts_), die een onafhankelijke eenheid van testgevallen voorstellen.
-3. **Testgevallen** (_testcases_), die één test en zijn resultaten bevatten.
+1. `tab`: **Tabbladen**, die ook als apart tabblad getoond worden op Dodona.
+2. `contexts`: **Contexten**, die een onafhankelijke eenheid van testgevallen voorstellen.
+3. `testcases`: **Testgevallen**, die één test en zijn resultaten bevatten.
Een voorbeeld van een testplan met alle niveaus is:
diff --git a/nl/references/exercise-description/index.md b/nl/references/exercise-description/index.md
index 7de0a5c0e..f81537330 100644
--- a/nl/references/exercise-description/index.md
+++ b/nl/references/exercise-description/index.md
@@ -254,13 +254,13 @@ Je kan op Dodona heel eenvoudig codefragmenten tonen in een *monospaced* lettert
Als je HTML gebruikt, plaats dan `` en `
` rond je code.
```html
-Gebruik de variabele someVariable
in je oplossing.
+Gebruik de variabele some_variable
in je oplossing.
```
Als je Markdown gebruikt, plaats dan *backticks* (\`) rond je code. Je kan zelfs ook de de syntax highlighting van de programmeertaal toevoegen met `{:.language-python}` bijvoorbeeld.
```markdown
-Gebruik de variabele `someVariable` in je oplossing. Gebruik de verkorte notatie `result += 1`{:.language-python}.
+Gebruik de variabele `some_variable` in je oplossing. Gebruik de verkorte notatie `result += 1`{:.language-python}.
```
### Blokken code
From 881809976668204cdf2151384a522a262c9b54dd Mon Sep 17 00:00:00 2001
From: BrechtW <56451049+BTWS2@users.noreply.github.com>
Date: Fri, 17 Nov 2023 18:44:28 +0100
Subject: [PATCH 06/51] reading activity draft
---
.../content/dodona_icon.png | Bin 0 -> 7004 bytes
.../creating-exercises/content/index.md | 176 ++++++++++++++++++
.../creating-exercises/content/logo_UGent.png | Bin 0 -> 14054 bytes
.../creating-exercises/management/index.md | 2 +-
nl/guides/exercises/examples/class/index.md | 2 +-
.../exercises/examples/command-line/index.md | 2 +-
.../exercises/examples/function/index.md | 2 +-
.../exercises/examples/input-output/index.md | 2 +-
8 files changed, 181 insertions(+), 5 deletions(-)
create mode 100644 nl/guides/exercises/creating-exercises/content/dodona_icon.png
create mode 100644 nl/guides/exercises/creating-exercises/content/index.md
create mode 100644 nl/guides/exercises/creating-exercises/content/logo_UGent.png
diff --git a/nl/guides/exercises/creating-exercises/content/dodona_icon.png b/nl/guides/exercises/creating-exercises/content/dodona_icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..09bfea3faf17913efa5c031a54ec81d6b69af138
GIT binary patch
literal 7004
zcmeG>Wn5I>wll-P3L?jcTH@5U z?QpqE`{>CXeZqV9XfU6s^z@=r;sTFR1}Uc)K!LhGnndq{fLPy@I(#=peMS}>15RCh zudy`l(%yI9=kl8<^VDAb@3#vV$8s0vfvdAYr@zBif0(#Ut@-pxRgBHLh0V>neeZRd zyiDZ1W7~8;`ys(k%>$1KaWY9VIv^?ZlbAJF&m+92o)RaNZAzd97+J0Q!3ZQJ_`f|7 z`q_xa{z^ZZvnZ}NsBwf6jq_?6eJ9M?lcF)PG``oF*aYYO&U2BFmH{jJZB7G(ibqC3 zxjMR;gNK?D`yK?$Ejjp_8{T-*8(yB%`w;-2h1;%6RRuJqBcfgj!SK zy`}EX=mb{EF&vIEJBYMHOPO`Y>TYKIW3FY{!AdyREo5&pI*V=bZ`QeYVUv-+YzaRL zfMq#jy8nvlDu(KnK2`=yrg}o+2RQBmhN*IS>q^T*f=$?VLx|?zShPG{9IVb_qRXrj zOz7F9?N|wkLdwP{D)FIyKG8BO*hlCZ=ao4Mi99Ho3l4Zh2{86izn8<&?biXx=5i#P zr`fT;fXgm|R)Qz)TCbsMeSj(x<+TRWnJM3za(tx7l$fL>1WMlV^(bI@dKfeJIuOe6 zn0gYJ{WN^h#L6YVZT#$zK~EL%fdoX(HBC2&_+lPgakBrZjEfd(N$b7XThk&p>q*!d zGC()~bWHk1-}bANITerH bAw*S4qUKn=(*NDpDWabwuV;4T9CHt z;X@kwZ`fR57#JV~)AX)1Of}AQ-wI?eHIZ@u>vQXNPTkb<%RG*=DFVCwAM_MChW1?N zrX} ^Z4b`uZEw8X>y!cCXA0HAyj58{bft6Y+ z4_EJk!FF!stg@pb90;@CP)KVs;q4dPS22G6qOn7MibGI-`d%GOtZTE7Op>U%u>j;4 z!Flu`#0m~%GOp$|vQDZGQ5lQ*e&X(y7V(FBh?(i~6Vh`2c2%7gYY*$3KbBiJZb;Hf z-f#I-oQQTW7Y|&_5jZ>Vm|E5*WeY&eWhL9Q7Xpx6KoZh$tk|5j0KrDQaPXxJxqo++ z{D=T#;da?3c|(C3XkGCh&^nAGhY )frcNMhqB9se z&%d2?-SLBjr}>V5tUBnK;P&qnuivhIV!%4}N{Ad!zv22=tN&|oa`-3ZYYI_YDWm@Q zVwPT`5r#twgojOm{Vw~uyGv?G=zC>m%Nf2Bn_d-ijg-;kT)(&Ae)GkqMgQkUw$i8A zNbr_S1L>h(cwonN$spGvcat zoJI_t3|$PEUH9?`g=xGQ*M582Jn0xjFvK~|eLPm7*%R6`pn+B|xZ5Nf_tK*Bn=rzS zw3vvthGG-Ug7Umt=Z^?6ux}#lb_fp9JG}WV;2&2`iJqGT ``xu zxpJ+fMdT)wH8%0Z%Qs1eaG)%}%hciMCMA0&F;@HoF!#}`1ck^Y`(3Js)741qydC)u z%P(g$Jv0_xNnKIAZ&otDRdz?g-IRao`KX_of0@KZg?6;Vf=JU=jc;w?NCy?!QObqR z#>zUPooqFKiESZp(PsHc#IHOb!5%xFCAvK&7Wm>wU4Pm{xvVn`!WvJqPc4Mkqu(Sq z%JL*%_J{?o{?vc`IWR&_4Q9@d_AiB z=)Jubtfp6n7J9u0wS61AA~J`dH2 zWFi0$2MvCoI**UHdmzHCL`#iM0V=2L44rd9-}#aiWcX-zVKv6TQ`Sa`&5(ev!1Y|8 zy$1tP@}T~~*~zjmjEL}Lxq67!? @ uhO s+beD&-1TCgXRkBL&~;-la)q6=}W{ zTKvVI&*h?^vwWZ0Dxeyqx<7WVwSU{}BUI51!@gnRd=(Cw$!P@Y*{4uTdEG{c z1>E|oz7zlyiZap3g$16`eJ|CgXSx0I?jkm?mvrj%nd{{mj#&jJj^D;vO48Em Hndf;QkY`s|`e)I)$J 3p9Y!SVXH~VWv3VGL=B`Mb7kGcTNparX@l0$z$5hYgBl*zxau(! z0OSCqb-GVyaWk_1F^Fi6LZ;8 X4r z90j~`5|YFvZxE7e0LwtzXtDLD4#~V@g4Dw6YydL)saG$SxFYT%fIkAH>;$|sLiZo% z(#DiLR*2_8TjboTpY{%ZT|b0EM;Z@^Md;sRY6e+4c8Nt3tQC=Y8o`}fF?Ook#Dgew zmnt%04udh~jrGKlfF&`6;E`wEMG(g7QDRVNI@Yu872_D>RI!{W_s0zO7dw&&km%x4 z%l!o?jYPw3=_erOvS Cl$xQ(S>i|&%y`Gs ^T8OVu2gLY@ zMc#Rs{Z<}C4Y+KDv-JJ7DJ%7+8X3+&up_}x|GJt8^MgSxx|huL{$kcu1AgxSz`Y=H za3KM^PO+~&pMi1fs33TtheUdX)gX9{p-2bR+M=a;Lr;-l;>{tiqZuyUYF?xezxJj} z w^c&K|(3TIq{lkqV=|XIUlRKr9V(gmuw@@z4y`RToD#2vOG$5S#phD}Vxh zl}@Py(Y&b~zjXFyx<^SR-@}d1*aZ )!aoQ^8lIaH5A%LsE@ zgxuy+ zi6LS;tc8aAvBuGT5-C8eEm}8 zNxh-ZR`R~O+b(9aS-pr0c@%uq)vlukxV{xiFUGpc^R<6ZBBQqb#uN@LtSB@}U 3Vr(l+&TO5CZB z6Yy@5yH2zFLK+A2rveaJtYh*jE`8ZAxF7TDKq*)Z38*7!gu4>fp;W69n)o`=Idl)E zdNNTOZ$bwa^4e6{nAR7zD|DBl;do)uLc3%_P?{ r;xXNs=Gwe80HIJm;|Ykzs|m$do95Zy zKV0{WXg8-v4>rDPl~7qaFX!j_gv#2nVfmWaN%E^^)v+zBdF17;9pIExcvfB;MD0WU zN=+ODeja@JtH5+{$^L*uT3I90IlKOp$-Mb-Ie89cJ@p9LGY|>=AqCD%td<_r&7-sg zUHbYwek)C7ZaFx#M >nH6goUBIfOLr@>JzY=^q0 zN_m;EX66m}@<33)D^*O3my`5w96OqCTgIGDmBtK5&fJyTgc7O358y*j$0H%_*#CN59Pb%9fVI8H@Nl$2Q=Ct*p zs#_`&ExSQU`?u05C@mcBAsxd$B?E@Nxl4z?8r65kUZ|Fi0}nN3zt@|53u9+N{`8-o zR#kYr$Qm4B2?D
UBEdsMKz3>m_O@CwsRJqH66idH6Gi3Z{`rWU&x^F-g}vem1yAfg}M%u z-?blw=HsIW3MHh9GAHGk?SFprdL^ln1{4ia7+IW#cg`!FKGuzL;lAqPueJP>OehM! z{$QYpmT50w;*Rh^)qQR9H7BP?1<30<4P4dGiXpi!`6URO=eXzf$$_CCw~_}E=q&+| zoM3$hxKhiZU{zI@9Any`f;V&Mg!kzKlO*fg{oAhyey#wngROmPVsyxXgGLXq5DDe+ zPU7nk+=cuDjX-DZicpuwby_~_gL44|BC}y!^VbN*Ebk6Z)Qc!)P#`ZAR%l-d%6wUp zh-l(Y#9q2T|Dy6a9dVR6qIb5-BlX0^yz#)&Bv^XaMz-2q6{0?HAVCBF>OZa&{3(H` z 2(#{Lu<*vp0X2jLOTi?0&adUm_&xs1SXiyPYnK;Xc7@pcq zWjPV^G1rxVy%QB(XR!7lg9SAa`LFJh&5JJdTCkap_foY$h{bWmFa&gST5NQ7g#DFL z+4K7It=Tor;!T51Y!K)W{}Mb`Z =1~80|(dRvz^76GOd@=SH6K& z!2H*BI5w<}VMe&@2YT<31;r$BoB3Gs@F3;*%WgT3@(?XE2TsnVrYD!=%+T;gV_Ha1 zBb*p_Q?Pq8Kpn#>7)ZpBpoh `RJRMa~mU;H#T8lUOV;IZE9VO=lw@#5L9 IE2Si7M_ zg!1HYv7+3n7x!9w6!(5Uenq|nTN~Z_?Vd4J`#Qg*PQ!ECBg5?Rw@x*t$4zr5)9kxJ z%(YbzeWNJeE0*Z4&{f1N`qtB9evi}x1lNo(8NSw% VBJXule ze1%hZR|U|go&l*;MUiSPI0a; sR+1%NH~PW(FfA&LPxB(!<-8A`+=Yen_ssBJy~JRp2Mh`FDfLvX&TW_0 z5=QHk6FXpnM71VgTxQ$4&*!eM3%}-#byRh+edM%sWJoYE^a!wcRKZtJa-- |HZWzmw~`ZTEg7+FNRmCh6E!;QY?T<`xmZ d z$O|WVkRon&uJwa1U+PaJfBYyTjEXHeTT6JTGt8Y$;s_3IfE-fdTtM9SklCMG=FwJC zFROH3F2gMu)3}nYO?fP{p9t1UE6fWCMm7>zam)>EzofEW$iU40w9(jEqY#!r^=7Qh zktcO6y&CDty%wmJtq;c}&TLR*U%rzEmF`+0X#l`JT$Gmd(?;Ehn7Q3%r3~8A)Xfv& zPdzXB7|VLC2|2&{pyRdfkX{a3US%f(h_iovwh#YZZEusQ^9~|wxGbf0bIl(5`pUTO z;<79?^bU$OOcXswV1@MyzVub|3v&EcAP=I@Ans2cIyYryklW|P9+V88gz{~uUxm$T z*`IfOQrCUw^P9AHC}I)Y5SjXRXLAGPa?>5cad!OCM@l=NU}37ia$@Gu#>~RzCGokb z&uR5mU>?ySB?4FuA)X }1-c;b%^5Uvf#dvVAGuUw*^4ey0E8CG9r4b* zb|Ls&zAvosNTR;O2|9cWaPbIz0}6H)0F6gUGIxly0vm5AP+aNcqB*7AMu2xETsdy7 zkyxziA|fMm3EnmYW9UZ?t$Jlw>r)vA?}y2DU~WX_E;1h>Ou4*};`00JobNGdy>Iuf zWzyOc8zdi8e1G@ISFB6lkf6U1Om)kw@wGkWoaIX!#LVStyw7ewCToXeF&oy@>-0*8 z=zae*H ABme*a literal 0 HcmV?d00001 diff --git a/nl/guides/exercises/creating-exercises/content/index.md b/nl/guides/exercises/creating-exercises/content/index.md new file mode 100644 index 000000000..33312690d --- /dev/null +++ b/nl/guides/exercises/creating-exercises/content/index.md @@ -0,0 +1,176 @@ +--- +title: "Oefeningen opstellen: leesactiviteit maken" +sidebarTitle: Leesactiviteit maken +order: 4 +prev: true +next: true +--- + + +# Oefeningen opstellen: opgave en testplan schrijven + +Als je in de vorige stap van de handleiding de _template repository_ gebruikt hebt, bevat je repository al een oefening en leesactiviteit. +Hier zullen we nu zelf nog een leesactiviteit toevoegen. +De bestaande leesactiviteit kan uiteraard als voorbeeld dienen. + +## 1. Structuur + +Elke leesactiviteit in Dodona komt overeen met een bepaalde map in de repository. +Die map heeft een [vaste structuur](/nl/references/exercise-directory-structure), die we nu zullen maken. + +Maak dus eerst een nieuwe map voor de oefening, die we `markdown_demo` zullen noemen. +Maak daarna, in deze nieuwe map, de map `description` aan waarin de leesactiviteit komt. +Maak daarna de map `media` aan in de map `description` waarin de afbeeldingen en andere bestanden komen. + +De map voor deze leesactiviteit moet er als volgt uitzien: + +``` +repository/ +└── markdown_demo/ + └── description/ + └── media/ +``` + +## 2. Configuratie + +Dodona eist voor elke leesactiviteiten ook een [configuratiebestand](/nl/references/exercise-config). +Dit bestand bevat metadata, die door Dodona gebruikt worden. + +Maak het bestand `config.json` in de map `markdown_demo` met de volgende inhoud: + +```json +{ + "description": { + "names": { + "en": "Markdown demo", + "nl": "Markdown demo" + } + }, + "access": "private", + "type": "content" +} +``` + +In dit bestand worden drie dingen gespecifieerd: + +- `names`: De **namen** van de leesactiviteit zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_) (in dit geval zijn beide namen hetzelfde). +- `acces`: Het **toegangsniveau** is hier _private_. We kiezen voor een private leesactiviteit omdat dit maar een handleiding is, maar we moedigen aan om je leesactiviteiten publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit publieke leesactiviteiten op Dodona). +- `type`: Moet ingesteld worden op `content` voor leesactiviteiten. + +Nadat je dit bestand gemaakt hebt, zal je repository er zo uitzien: + +``` +repository/ +└── markdown_demo/ + ├── description/ + | └── media/ + └── config.json +``` + +## 3. Afbeelding of bestand toevoegen + +Om een afbeelding toe te voegen heb je twee opties. +Ofwel verwijs je naar een afbeelding die in de media map staat ofwel verwijs je naar de afbeelding via een link. +In dit voorbeeld komen beide manieren aan bod. + +Download onderstaande afbeelding met het logo van de UGent. Dit is een [directe link](https://styleguide.ugent.be/files/uploads/logo_UGent_NL_RGB_2400_kleur_witbg.png). Rechtsklik op de afbeelding en kies voor `Afbeelding opslaan...`. + +![UGent logo](logo_UGent.png) + +Rechtsklik op de `media` map in VS Code web en kies voor `Upload...`. +Selecteer de afbeelding van op je computer en klik op `Openen`. + +Verwijzen naar de afbeelding kan met deze markdown code `![UGent logo](logo_UGent.png)` (zie volgende stap). + +## 4. Inhoud + +De volgende stap is de inhoud van de leesactiviteit. +Maak een bestand `description.en.md` aan in de map `description` van de leesactiviteit, met volgende inhoud: + +````markdown +# Markdown demo + +## Text formatting + +This is an example with words in *italics*, **bold**, and ~~striked through~~ and with a variable `a` in function `returnSolution()`. + +## Hyperlinks and images + +In this sentence, [these words](https://google.com) link to Google. +Below you can see the Dodona logo. + +![Dodona logo](https://dodona.be/icon.png) + +![UGent logo](logo_UGent.png) + +### Lists + +1. item 1 +2. item 2 +3. item 3 + +* item 1 +* item 2 +* item 3 + +## Images + +[Show image](https://dodona.be/icon.png) + +## Math snippets + +Some text with symbol $$a$$ and a formula $$x^2$$. + +The solution can be found with the following formula: +$$ +a^2 = b^2 + c^2 +$$ + +## Code snippets + +In your solution, use can use some code `print("text")`{:.language-python}. + + +```console?lang=python&prompt=>>> +>>> echo("Hello") +Hello +>>> echo("Other side") +Other side +``` + +## Callouts + +{: .callout.callout-success} +> #### Hello +> This is an important message. + +## Quotes + +Text that is not a quote + +> Text that is a quote +```` + +Als je ook Nederlandstalige inhoud wilt maken, gebruik je de naam `description.nl.md` voor het tweede bestand. +De inhoud wordt geschreven in Markdown, een redelijk eenvoudig opmaakformaat. Meer informatie over Markdown is [hier](/nl/references/exercise-description) te vinden. + +Nadat je deze twee bestanden gemaakt hebt, moet je repository er zo uitzien: + +``` +repository/ +└── markdown_demo/ + ├── description/ + | ├── media/ + | └── description.nl.md + └── config.json +``` + +## 5. Wijzigingen opslaan + +Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! + +Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). + +## 6. Leesactiviteit controleren + +De leesactiviteit die je daarnet gemaakt hebt, kan je terugvinden in [jouw repository](https://dodona.be/nl/repositories/) op Dodona. Controleer de leesactiviteit. Is alles naar wens? Dan kan je bovenaan de leesactiviteit publiceren (_Deze oefening publiceren_). Je leesactiviteit is nu klaar om te gebruiken op Dodona! diff --git a/nl/guides/exercises/creating-exercises/content/logo_UGent.png b/nl/guides/exercises/creating-exercises/content/logo_UGent.png new file mode 100644 index 0000000000000000000000000000000000000000..8cde9c3080ddd2ffbde7e9f61b6f4921ee1c6513 GIT binary patch literal 14054 zcmc(_cU05gvo0J(K&ciwQUnx5dhZ}8MFgaGkX|E5i*y7jigf8!KzeVX7g3PjdkGyv z3oQf)N$!Vx?)P`sdCz(8x#y2}y? i#Z0+A{!z0?GO zZeW2=@@)d(FS)-0Er1_)T$BvlKsP?nTz_utbynU6fr!-Y<>lYLwR3iNcC&MKVOExx zXLfOQwy}4z27x}#WoX%IYr(0cP)nzBD&c|ORh%^`Z!>GkMFdjBKH+$D=kDw9M?YpM zH9GITdUcEbZ+19dR8-(MN)1kuuS7G1>yL7xf^);a_MumNavi5yP@99;x@qaH(vysu zVZx5vB#BA_8bX02MRJVymV )9xQDxsi`p}WM@pxY!MUXAdOXP{d?pm%>+SwDh4r+_FFj`bvuo|oU<;s7+2 zQZ3oYCid!+(QU2|gnD}1j8BJ@sh?8_o8L4~mF52Bl|sw^NsxT`WB>%pj->={dxH5m zL{>gDBpg*wX2!MCPJm;vuvo)x441gbf >H`do@UjLReGVjy#!`l8b>(IkEUHD60p^(dMt8Ab6 zO+G2!I$!=ZaQf!w!{N9)pDh+PqZO~9#JDSlahBi87LEEG6l)syKSaGu{dU6tljVzC z+_OKA$8c7wFitd{G)xFo=^%Z>Czh+w#1ijJh5fF+d&epY1UhbZ?wojf8!yl
gv=P@@I;n5MKek3n z?8xV$rR95gJGN;E1%5m6a(8#hRf%%miMQ;pVkspl>87jHEyZj8g0vj2g50|Q=~c%a z;ad &*C$;5w+P$)FY^5CjWIWstMatR?vE*qz1L)ga~7ouD$%jV_s&^4RuhVS=VX5V zH)K6yy=z@yoqqk%u@O;*h3tpCbFI~ W`#yr;R8XBRI$NeDrJ?QWjP7sbavEsDEo?S_ojP`35;q uEvKiT~Fn3dFP3XY~1kZyNcmjU9^ ^du8=yatz36$(Zp^M|8$E=dv86SuwOBw@K&2`rjx6UccKk{I zqxmJI{e8hfa%P)pVCEa=f+erkt;>ggJQ!^Z__6@0NTN?rL&8QdPclR!`A6u3vm^sg z&-{^wyh)d={7>@)^Q4u}v5ljWxswW!3gqAHyN%b_*1+B1?%XE?PaZu{QQc8JNYzwr z%zu_I@kZiJ&)~pd&frvvP?{9qH2+rGR@!tL4EoOSqakN~VSR(Oa`n1lzQI9#%li;R zF@vA_I))}S3S}8(kEfc;nhWj~G^)j`m1IuYc2yqL_tqCdX)8Bo2 hP8NWZLiEtiU{o%XAGXiV% z5Bi_|w$IQ?8&|ZYwrz9^J_(Qbq7u~4og~ejM&G^ow{`usJMx3ciuV{YBdsRw*M8xA z#ewjF{Xy75)_`EvvrGd4w~?;D^2-_ jl_fdP4jQG6uS@rDxi*MPDFDPF`2bBeFbe27``@0uY_6W6=JQO=*PZsjl ze|u_#(0tQ8qRXFzJtQndFH|PVC0w6wlrKpLGP)q|277t=GV$e7nk}EYSOwQ>Ar9$c zZU@OZktV?=nQm?ygMmr?41HxMm4{;79Oc6Ao!Vem`zK+m8LPx=KGexPe@$GxehmFO z4Jn{1;=a!*o+$e!Tut=*;fuQ*g;d`jA3uORjw15<#qi6Pg=bWFG<-(hn1fO6ScyZ` zJ8mzwMaYZokHAmPjmFRHMKLXJNZ%}`iDy!!dNPCgrNmqLg5zRiKFAe6QjM>--Lc)Y z@$4_P4ynfec^?7gVN4+Gb*zag#W&z0s+Y^();4@P%|TdgYprL~KKP|iEU_f>`QZLQ zP2YTsNID`5w}1cF{gt@-pP?#xTnze~t)&iP)si2)=84uQ@t=q45|m0de68mIPpX&f z>m`-@w?6S!b^K)7*%#DVcf)a)SchmM#BX `JarOf zz|7Nyj~n!1&VB7E3*T#tN`5z54cm;_z&Dq;GL6U*i<35!$ljCA&ef8_bZhsKXRqdY zk_Mm7HwV|tH|DlWHndn5^bQS5$Y|$jpK4!f3m=Rv)|pSAzaKrI_h~s3+?$*?YC&P7 zd)wx9Zs@2^+DuxbmC-dQnes2i@bg48*rZGi{9(TbZwwDZ$Vyf}-8eDHFeas~89nuU zSCOoTsSTTffN+rtlj=mKcdxR#y!2X!qwc^^jHKdop5J^*R|v 4K65UawEId+q1oLF4hZ$HU(;5;FY!xi1#p&F9qn zY*`M$9LSv!O?TZ_#$Mqfwj^34hK!FJ+>fj0Hy-FU=%rSOn}K)ScO CLI- zjmD0R2i~o9J~k*geWu9J;%Teb5fyG~GE+=yvGv5;8TAK+gi$T}yRu`3`kQAV><48n z>MdrcvimP) g$>@S2iXbF-7#oX>CYQ&LPKoXhB@Nxp6qObe zTa|Iez^@AAhpmR6WKv^uu>IxKR6PFYle^PHqsgN`l8%$&+rhp+F*_Z*v=#H+zq%RQ zdOr&AnV#yR_d6jA5C%jpj9h))mpR}m&hDZLsWno7j;D=}$KAq9KDn|K;F<^OO=e3a zO;r%c`!NU<7z_ek;DDcS5XgfU1loBA0*NPsK-A80W`7hwAkKTrFJEYXoZDN3d^Dc? zggSx=+UIG|dKh%OB3jLZ!6f-97VqSpKXv@Nf4_Q`ZLj}HB^!P9tdl2f?-zlRmwceC zoRZva6+SW=`W_ms1+dfF6A>hLWPW?V%-!`yNGa{$Ux8f2me*B>o2~oSP$OyxvE()+ z)pMULj9jHSZsHLL6jOBkn4yXZ$KhA4+IKg`hP6>zg+gOo&L|e{cG7j2ma@W{)c7%lIy=K{`F4(@4Nly ziugyie;xX-Wi(Gczk+&QvwtY^lsalg^W;6>OtSkmVoZb&QsYw*efU1 zG5Rzk EZ zV!Q8QhD=vkdy3g>u4^+WQP-78w>CEF442uDbo*s|D6<3(Gil9!v!x1geAyT;hY!eD zl=o908{%2Nn?Rn5+#wt!`uyvT5o%Uzq3P=M{veZCcJV4F5j|kybfQo1^q)iP9gtJP z7;J`uhgYyNMl#}6lZ9!~P};#%j&cacz)y0H>yw*w=I2h&&V*a9{Ntkp(Q3WI>l-tt zA}6ow>@ `VXoLiVjf*r9$`c2IGQJC zB3h&L6F 8-dGApO>Uf>)LD-)1vBs!;~w=GJZzb zQ14bZK28-9=Xo~YRF |gdoJJt=vdI|5ZG(HFWIRUC?bTNj>Hr z)W5aK6u3I_x$KFXQ 9I8j3TClcaV{Tb6%oY4!5wyoCsU$-MHDusWQ^I?=p%A;?Ji; zLu42)%Lr^ko5ud)Q8epYlf*K&0!sL?*W*+%{^(!=z|g0zwSNkrP$owvoQt|``;<_C z? J{#mUhMf1>!%jh#LL8g3fkyA;z4v?Dv ?d$pXF?*THmq z_h>`$bRm_1!RfTSH8ajPY$#K+@LGX!Vt<0GIrYGf I+- z%-R}Wdx;5?X#%_4FK86VPQe|%Fb+tIx5l`$wOSVlgb&)bo|?w%IysG|GVD9-gd>hR zWCCncyLC6-CWFR=&+R+jybvx~cb%J<97pv`4W+-$emuU=bo`Bs= zv TU=6E+t*x!9?MCy3 z(E9qmHDV1>&=_6orIz4%EB0=1PhPURgSoL9;}%{_{l|22P+%v;)dUkB!KJ`~3@DF( zCvJRzm4|5xcoN0G_G3cIZSLs74#p=OlCUSlxf{zVet<31>aN3-*7M!dgK|b9R%Pt| zrp9OKz;CbU15%rg3Fnd69um=brR(<=;8OgR=HjmGW=^Dxi4-dGi?|=>wBr{NOj4Ur z$_Qc1(QT}tHPqnrN=9w0<-_NI03Akh3=xDX1c(xf4(R<>;7=sa2dDbU-#j|KK|)u1 zWE-AUCR+S1#x;C$lK8bw93q<;L_$Tfj0fs?N9138c>_fA@;X8NlcWM`yX_v+t~%pv zlj!C!_xf?eTcPlQJNT`MA-~3`8JCKt%4L6}1Kj8BB8%P63^&O?d+c^eOwK;InCW1J zeADnS@T{ uQsp6=0v 1^G60$j?rA7kI01>p%HaT^ow2exd!a zxjBc1mNJQB3uYQJ$H6G!E)?YB%{Xtu0A`x0ri}ei1cJZe;~~DB_psIZ%6qf7nuul8 zrTknabo>xw8nFIH0V+}$i56F_&$4B{LBg$#v69cs8`(ttJw3^aV1S^_M?6y_= 0nZG0^TC0rQ~J$+ z>GD4&{Qtak_zy+Wf4=OWTIFBm!~c01;CcU6k^S4UXu(xv7)cVL{7UkY^ReeRD(t}_ zwvx@PV;vK^dz=1!fy`aqnPt3z`lFf4u7{GqCGwbRmPtYeg2Wzb@urzQr6B|}Th(J{ zf~K5&27+4<)a-E-WFPiGG{&4OE)6D{(ywBd>Y4Tur ut^6Bbnl62wYOOu@ %m=xZN(ZBqaCS=kAW0ZGbL(h#RuCsu@5Vaq@pnn{!Y#u8 zRq0~n5?mcDNCK{7J~u^N3rT-k4mxz5FlLFST7(jDCU5T7P!J!Z{6ausqZhvHO)EQR zQF<+%)}h<(O;8839H7Sk531(h{c88}GF|kK@#To `8n7~Zj)|6#Wax{n9g8jVq%4xD|1g8 z{()j&f{r1q^Q}Jiov1x*(A75}{k+kp$G+vEFz|3Cq^3^9?vgye``Xk?pQ}fj`j*UP z5fH2%lY=$%)Yr+EhT8;nYZSLoUM7+I{wBvGy7(miBmqeB2ZHwc<-O66g7-dFNh^*Q zV!~zTLlenr=Z^jj@ 8g;?%wN#r;!jNkawL+KCDH66cwc;BU1jFzaA5k0-Ku>o8m?5M z*WU&$L$Egw=B)ZQ_Yps&Gl u91d JunI2`X3C3paJjpiUtiml%{UB<_!U zQZ%wu@GWvTtDS+5-M&?*p1kSXDpl@Y!LDQuo%;ti ~tk#A(hE(>DwXQ%!bjohyeq(97syKW58uYKj z+XMW@FN<44oF(uJrzy!zUQspI8n7}~bdKZ!!ySJTy0kM$%GB%h*Tn3UG~5+nBwSWr zePDN9cO0z$oG)jg$evxh On!OOq^UXs51meTfYh8nfhA{aEDicm zNwCT&lAJ98w}Qo{O)7j^Rt)vF@i6HFj{`ujub;22-+)q)zSQ7urnImOD+ QCAHaLEM9nXw36Q9kw4?X}>~xyh0TsgtP rL)vm6xg&fvXL;QuzmddNj|mn$C~)sM%&Amk!9fHf%CjavO0w z4qTb5Q5T5f{%T9_fcmatn6IBj1#vb8DOC(ycrBN)47T`#fpD;76XEAtk%{j9U6^&W zlBqVn;|CxZ!U~4+U8=-1VbyEb&~u*Lg$CHaRY@|_RFgZySr;VPEj0ucA`GA L18V&EokCLujhrE{d=MGxk<0U(9cv?&woU8N6 zqL)Zq4VCK;nq89*8f*J1<4s$L-1a#nm3@4m(+z9Z{!v^jXxo=wXMuZe0@fj936u(m zTCw`Ek7y#3dab5?CC1{*QJ&~lZ?=tkIA^>X#K%#J59zYxk!Qph%+AzJJ~+C*Gc%7$ zlfd8|W4g?XS|u*E@I|<}r=t;q?ah7wAci{vZ@$9+-PNTYH-q=s2#!;)9^4@jF62Rj zN=6ahH*;QGxs!h-wlD=YX8h8^jMo`WQf(iQv@?J8tWGt8ow^TvNb%w+Cl_o4HRM=Q zPlvjbEbv5N4#ktARr>4+HLs(Lg9xTM)w^N^KbFlzydXLLCP08Z>my=trIlo)*v<9B zGjCEBLMGz*Id6#&w?CUK|2A7N&CMymU4SvkuOrxJT$6ZN@+y?t_&T>2^>!JjO7rud zW};Q(`@p*|z9yv0kA7VKkFx*TrwEKB>lY4KB|MGR~W9Dn64GKaUHK8UWlVawfK6M zc-yY7uhMjEKp9|f<6Nc)kPG}RX;}Ez+-G%VwrWp#eKTRyx9v9) GVM 9|z4Y#BX(XB@>jG-P)$~q5Lt$UNX2-YJ7btgM8QP7kpY-A{e^urBHxa5%4y%fd zb7OZ+FS5mc)_WXLthrpeI2X|6NCtfbkbd{s-)Y6~60G@_s*teMZ;tkR!V#eqDNtMh z*6Cz)8GA6g_)HIt2k0|h+RFx3*o3o-Q0HmS5?_(Y=kIYzls99}gFw<`3felYKDQfS z_6D7WbC-)wuMF4N`8T7Vzx9v0IO9&%&mMpME$lv7=&z>rW}~{ge8-V29x;Qf-`8&r zZPhToOO-&6EyP^zUw)s}4O_Gj-`nf<+x&6bq>RP_aSSt;*`(W^DuL&BDRQ?a6Ff6t z1bNfVA?haAsf@#JnbFx^8X7@llYAj1OLKGLg~LgS(g%pmp}?k=7yj>fnQ6dyRUvTO z%#}7f&noPpnq|c_?4r;_l>z&`=zjZ0&noiVrzx%UU8sTcWNw8X{x5B)Z8yexQLg2ce4liRiu zaZ5!An53pix{mbI;UspwDddI4x!Z{fvNcWNm=zCT^L7t@>fGyOx*dXC?-TdiuO8R5 zpr=;jZBv1HXB(MFb%y5$UJAEI2`bjBN0;>R?e{L}0dC(W3tO6>e1KyJc*@3Lw+)}H zT}FmYPEo#9&DDDjtyLh+rKe6x(_PEjF8?X74Wuld9QVDef&x_0kHLy|Ghz3U3|4?0 z{PYgi-Qv8z8pU)=Mss1N_@OGp!Pk$QnCRV9%_rxI+M+t&ZKJnam!=p-<}&sH>I-3d zS>f!&mu~6Xcle1RUu6Cs?(Rn^Yz+5D7nKT)Q}3%sNNa~P^PjWchjS}@eoMjAq)CGg zqr*AhHVy-D?n*umQr_oLeCeW3Tx;yT{&XxW$+s_ft;B>|6ViFt+9(=1JY1$qiK>N8 zzKh8uKXa#PgDlMi-B>($CzE#WbM?r}Hvlu8G{VzYv)kzWM!TN%EGq ;hhhcfL&>Dve A5iCx>dKSFcgl2C>&X`yVTrMQ@3X1$Z6JyqxjJ`#qaWFAc zoF2Z>Zm5HTH5j)#bf=!ab}bLjRj1GtcM`yfY#P~%$w1vs8<`({WBo9Sg3 zIGisPz={RR;?zIewh6yb$@vy=xCmohUcUi&MJ~XK(nqbMPK|m}L48E(VDtvQKx7ws zEjNJFKlcnXN-5@QJwN7P_PI;b2ZG?m?NpCjK@HTD&!s;Mf7D5$h0saPY)=BTzt|@r zN5G%-zn@f%U{y@@F<-2@;onUwh) d<~5CS42b7b)lK zT*kgSgsT}yy*)NM%_G934c}7szjD?7Iqv><4UbeR{TrxLrU74Gb7cKU#POR+B^WSC z1=umD*-f1;(QyV3i^E(LuGC=h_P>3=C!m(mlut7YBMpUn%y7|}C8Y870O+EtwiN?l zh6%XxK}^*&x1fJ1I9pr_$lzMK^<5UC8BUT{ot3|yV0K=|A1)knsj!rwakXvA0HTUl zdl>H&UlPgGKd-fQ;oh`j3Mrx-(rO$0Vk7*}Ia($!%uG6cVwhV%Y)Ne|8t6+gxf{<4 zH>P(t=NGZoH|K7WwcjKN9-c2t%p0Ke@BGFxtKQHGBvP4D$M54G9LS+nI%1)21HhZ$ zbAm;mJvD5i(>M@hNLmKOjT6sdbQ{M5ngcG)-+FY#-y$OIrGQK(0j6x)<8XiMf0h5s zxVfC42LE6!w;M8v=Ur)Jr9au~so3oK@aw}i)PnshS}!NRlVXRijm4!HM&(tL0O;`f zko0u#@Lk!%u3GQ~lEz0Chw$m{+EA6`60zSunC9Y8nRPXh6yra?h5_W#2YYn`@9Wr{ zez$46ZGOJlbt8!l{zb$gergK0L)hK(UPnWiT~hYYa)oVebX9t0{0BtZ0WmHPv|LWv z H=P~ U{UF270au&)Y_)75>LalvAp`{>63q9wHDS2!5H_ zt+P?c1}pEK 5FMh&4aj#rl*@xZS_m6ydjU?*z8!`Ti%> z8&1Ho X;0*t4s{J<^-nx^>JZ=S(3B5{Z#$`Kt0UTU~1>_k)=#qp0V zC*qmRxn=_rHluSMDc`{w4HZqaOX}rjcWN==kYkS)eLWkiNi%={t;W?|dS8Slnm*WX zF!40t>fu&HyL0;cYb#`Rp?7^qwgN>{1lTD67M!m5QfnsM)plZZYV|`8zPzBL`%<72 zjx?fAtJ=7LG#ZOh)LVbb!|qXRR}+6qllO;Z(N7~`#gQR1J2PS}r>ySz$kqsMNtKlp zZ7fSG;(zP5|L^7JNo11@)FjG(o8FsfUSm4ON^q7K$FTcIx|Y56Pk|lJjHE|vC#XNv zJp3~CSWHN8C>YcB4j1N)jpq3_rW(;N)_Eg{N#UTq$uJtbs89Ml5>ZvKVyz~H{Zn;0 zgzQ3JiP&K9Ec~c&bNJR82r_y0-WYk+?lr1Yh-QkN-$N>OxY;3-)9Dj;94gtp_JlAp z$;bCm*NzV>z}1!urda*}cpOw_#TR|kWJ|q7skW@Bnt}%8CA0v(BY-~pTfp-UE7gKM z=awB{)VtcF7_2H*KJ>*aGwH5-0? gbuHcs_G<6 z19Vg9B(8{PZ^a7qbA(A E|EX>$T}RcZ%u{r5oC~hhVMUQjLBH9(RJV3h4h@acR!;{mO!=btlk 2X<+Ex7DquP_QK}jzU7ZGoJ86)cvU2X%d^JhVazP{$DDcH+U`F7-OI*`9B{vJ< zxqAm46UY@iBUR%17RffOW-U_V8Lm0fSKuYsPY49+IBg#7K-W5FIR3aohAm)u#&{c0 zl9yUqex!^2%SJ7&Vv|$}VY6J0baoSnNs0QrL(_x$GS=rAbO!IQ8kr8@+Kzf1hjl5r z$J*bgQC&4{gB4|jO)QCe4GgKq`#W_5YsB!3=(+f&=qGwx#lJHCbP_Rd{7W6k)~ZGw z^|I1&ph{c2L<8+h_z!x;;+7Hf%gn7Q!EL6jg|tdAcK+l!vO}ng)Jy_xlvZ2O)^k_~ zwAQ>=GmreR>98{J#B|oogDT(7-#4YubzfQ&_se!i#Zb<#ciJvHw-k4pUTr+A1!<}h zdUV>awiTSg0cNI~;WDn)S3crw$}6X>CnaG _<-+^_D<{*cVnRHEgEUx!9<~5%D5%dfbd{y+1EL4W<)*^ zy|7I067C(JK4J!O+hQYtb>A4ME^gsf;mYu@gAmq1%N0wYbwx#8xM_y>5eVH0b7 z$XVAiVsq^g6Y# zA7FlZu{V$148vZ`tpG$yZ1vt$AtVzpFLEx_26H^vWEp*>)6>Q!ps)@XL8*PaK$K#f zB+h$}S?`czi&vdm(OoGTuyObuhfxuc;#P_3?$w?E5e3^fPs1-!!o(gJfE@U}+!`(6 zp558d;{(ha@W}9P A;b60i~P(Pt7@l7KxY*}R?IB& zA!7p|?ET~3c{cA=Cksw&ZOy1D8-Qe4M!K_d7z6eTFH8;>EzuO0?8Pp&_DUMQ!-<5! zD_Xi#?aFU^y7d9KC+a_!fcV(A16)7rC*Myoy3URQzWcv`c?Ujz9@ci~tm^q%f3)jc zVALS1(UalmFEwvlNsFhs4LQ-8=c{^YA&+xpXC@gL3D7_l7{6TXex#S|IDK`LBJtNk zlruwMvP>f(R{l!*`1szxtr57ILhzGez1EI5`iA!It>kMryKm51-|N={TH|`^F?hFt zNrHi~nS<#cPbyX%C#`2`aTwI37qIAOXvOsm2-)51v-)GHvH&tCw1V{c;MFqBH(N#i zYqg-8wiRJ_R+}2T%=MZ#j(V~TjB7;>k>YLEsdI^z4^9?bbgkICgCk8_QG6L!fQ^Tl z2O0d4=ihuzqnT3Ej$klq(X+iPA>zL8VBQ}imK9^Y ~w z9DAp?>ek*u+3b6@A-{J4PMGfo8R!&G{wzNk$l6aj9fdO7+S&%4FBjTlB@4JVZGx{4 zo$0Z6J;@N}O4*FsMH9-I*SRw~?lgEPhnQk28&SKRm6^UZY7kS=&%yY>si#nMVb5vQ z{9Y7pND*S+wKOCh&<) Fi~|&hMJf?c0=i4z}2Q^?$27{W6Ds=^YQ z*dL1-nPU3l@5@6Yj*x5 (36>QT-y0GNk?iacC}(Y<_mJ%%AVg459t *+2l&3GDc zCTbaSLoeo>)?DnB z7-eX`OiDw6Xjb2Iz>&sdW((bc-dd#*0l2ZD8f++7#A|Wk*h6^!%>CZg^ V1l&wr=6#ZhTG-KhKKda@B|tU8TpU)}mkJZy zo%AiQAD8Y|V^7L;Iz1z(&&}XA-vdKK%BnqNB$xQeNUj^n6XXqG#OYaC&Qq0*knYwa za$#>mzYAbk!l~h^j@(GFm?aGF_O-_}uQ3@qNrHyTSu =W{;I5)%u`9_^z77@(B{M@EvY5d#*XOO@yrJ;&>;oZ7R?_3d6S zVUwvA`@Kf|;qY2e|8BBgzWpEA2+BH&m^=v{8aZHmuQQ7lAlrtrOs&r6Lj5u>;m5gt zhS37gKQxQX#~Oz9>DVT^W`krUY31+bZ`?VM&fvv+b)oS0KkI0rHP0NApBCPapuACt|J4lxn22YRPVG86NIJ>+eJ;bQ#Bp6 zos;s1PJm6(ORRp)oJku1g!5#c_T$*{&*0&yRBn^=eJ(!SViIs}Yk&afGi&$hu}47b z`tDWA+GumP!%{0#pOb&On)+Ly7*~QL-qk&E_W$%Mo=6B7A;FXECItE6O!9AQ>UsT; zSNHRf`!zkk&(N@h@N{%#r@9`}A)~ksH$4Ekclk$ZO(!|6p)X}s^2Fn@_vNDOcjN_L zcg3ITJ4qR)_mLg}yjaBANgCKJ8Seo=tgeeeQjMN7rRFy$l4;n#@MYLg&=K_*Uv-rN zrWzLA;BQZ|$)0%5<7osz+3)f ><55> z%K66|S`_df^Yml$^YgVEvPlkf-T--~XRD5=<>qoJd^%kI$|3H z0oIU0u+X1IFQMe>Aw3~$p!>u>?ec%$n*L{|00=Ap)%fOrw|e`(oKE=Hyy!m@DF15X z{}%`T)9wE+mi@aM{@1ts_lo%cfBKXy$V4+N?`jQ)4+5n;Gt=zBF@bn@H%D3hQlA2Y P#31EYYA?&>-Ua;+eZ)CH literal 0 HcmV?d00001 diff --git a/nl/guides/exercises/creating-exercises/management/index.md b/nl/guides/exercises/creating-exercises/management/index.md index 24799dc71..1fe467c9b 100644 --- a/nl/guides/exercises/creating-exercises/management/index.md +++ b/nl/guides/exercises/creating-exercises/management/index.md @@ -1,7 +1,7 @@ --- title: "Oefeningen opstellen: volgende stappen" sidebarTitle: Volgende stappen -order: 4 +order: 5 prev: true next: false --- diff --git a/nl/guides/exercises/examples/class/index.md b/nl/guides/exercises/examples/class/index.md index 939706e6d..a5746ad74 100644 --- a/nl/guides/exercises/examples/class/index.md +++ b/nl/guides/exercises/examples/class/index.md @@ -186,4 +186,4 @@ repository/ Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! -Een voorbeeld van hoe je dit kan doen vind je in [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). +Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). diff --git a/nl/guides/exercises/examples/command-line/index.md b/nl/guides/exercises/examples/command-line/index.md index 26067c191..6448f80c0 100644 --- a/nl/guides/exercises/examples/command-line/index.md +++ b/nl/guides/exercises/examples/command-line/index.md @@ -176,4 +176,4 @@ repository/ Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! -Een voorbeeld van hoe je dit kan doen vind je in [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). +Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). diff --git a/nl/guides/exercises/examples/function/index.md b/nl/guides/exercises/examples/function/index.md index bc0661dff..1089f9cac 100644 --- a/nl/guides/exercises/examples/function/index.md +++ b/nl/guides/exercises/examples/function/index.md @@ -20,4 +20,4 @@ Is dat niet het geval, volg dan eerst de handleiding [_Oefeningen opstellen_](/n Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! -Een voorbeeld van hoe je dit kan doen vind je in [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). +Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). diff --git a/nl/guides/exercises/examples/input-output/index.md b/nl/guides/exercises/examples/input-output/index.md index 12ca625de..b72c58953 100644 --- a/nl/guides/exercises/examples/input-output/index.md +++ b/nl/guides/exercises/examples/input-output/index.md @@ -206,4 +206,4 @@ repository/ Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! -Een voorbeeld van hoe je dit kan doen vind je in [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). +Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). From ceb72ea3bc50ca8387fa2c788820b333fa3aa8cc Mon Sep 17 00:00:00 2001 From: BrechtW <56451049+BTWS2@users.noreply.github.com> Date: Fri, 17 Nov 2023 19:02:21 +0100 Subject: [PATCH 07/51] reading activity --- .../creating-exercises/content/index.md | 61 ++++++++++--------- .../creating-exercises/management/index.md | 1 - 2 files changed, 33 insertions(+), 29 deletions(-) diff --git a/nl/guides/exercises/creating-exercises/content/index.md b/nl/guides/exercises/creating-exercises/content/index.md index 33312690d..3b4ae769a 100644 --- a/nl/guides/exercises/creating-exercises/content/index.md +++ b/nl/guides/exercises/creating-exercises/content/index.md @@ -1,6 +1,6 @@ --- -title: "Oefeningen opstellen: leesactiviteit maken" -sidebarTitle: Leesactiviteit maken +title: "Oefeningen opstellen: leesactiviteit" +sidebarTitle: Leesactiviteit order: 4 prev: true next: true @@ -10,7 +10,7 @@ next: true # Oefeningen opstellen: opgave en testplan schrijven Als je in de vorige stap van de handleiding de _template repository_ gebruikt hebt, bevat je repository al een oefening en leesactiviteit. -Hier zullen we nu zelf nog een leesactiviteit toevoegen. +Hier zullen we nu zelf nog een leesactiviteit toevoegen. Dit is handig om extra informatie of kleine stukken theorie te integreren in je leerpad. De bestaande leesactiviteit kan uiteraard als voorbeeld dienen. ## 1. Structuur @@ -55,7 +55,7 @@ In dit bestand worden drie dingen gespecifieerd: - `names`: De **namen** van de leesactiviteit zoals getoond door Dodona in het Nederlands (_nl_) en in het Engels (_en_) (in dit geval zijn beide namen hetzelfde). - `acces`: Het **toegangsniveau** is hier _private_. We kiezen voor een private leesactiviteit omdat dit maar een handleiding is, maar we moedigen aan om je leesactiviteiten publiek (_public_) te zetten: dan kunnen andere leerkrachten er ook gebruik van maken (net zoals jij de keuze hebt uit publieke leesactiviteiten op Dodona). -- `type`: Moet ingesteld worden op `content` voor leesactiviteiten. +- `type`: Moet ingesteld worden op `content` voor leesactiviteiten. De standaardwaarde indien afwezig is `exercise`. Nadat je dit bestand gemaakt hebt, zal je repository er zo uitzien: @@ -71,7 +71,7 @@ repository/ Om een afbeelding toe te voegen heb je twee opties. Ofwel verwijs je naar een afbeelding die in de media map staat ofwel verwijs je naar de afbeelding via een link. -In dit voorbeeld komen beide manieren aan bod. +In het voorbeeld komen straks beide manieren aan bod. Download onderstaande afbeelding met het logo van de UGent. Dit is een [directe link](https://styleguide.ugent.be/files/uploads/logo_UGent_NL_RGB_2400_kleur_witbg.png). Rechtsklik op de afbeelding en kies voor `Afbeelding opslaan...`. @@ -80,55 +80,55 @@ Download onderstaande afbeelding met het logo van de UGent. Dit is een [directe Rechtsklik op de `media` map in VS Code web en kies voor `Upload...`. Selecteer de afbeelding van op je computer en klik op `Openen`. -Verwijzen naar de afbeelding kan met deze markdown code `![UGent logo](logo_UGent.png)` (zie volgende stap). +Verwijzen naar de afbeelding kan met deze markdown code (zie volgende stap): \ +`![UGent logo](media/logo_UGent.png)` ## 4. Inhoud De volgende stap is de inhoud van de leesactiviteit. -Maak een bestand `description.en.md` aan in de map `description` van de leesactiviteit, met volgende inhoud: +Maak een bestand `description.nl.md` aan in de map `description` van de leesactiviteit, met volgende inhoud: ````markdown # Markdown demo -## Text formatting +## Tekstopmaak -This is an example with words in *italics*, **bold**, and ~~striked through~~ and with a variable `a` in function `returnSolution()`. +Dit is een voorbeeldzin met woorden in *cursief*, **vet**, en met variabel `result` in functie `geef_oplossing()`. -## Hyperlinks and images +## Links en afbeeldingen -In this sentence, [these words](https://google.com) link to Google. -Below you can see the Dodona logo. +Dit is een zin waarbij [deze woorden](https://docs.dodona.be/nl/) linken naar de Dodona handleiding. +Hieronder staat het Dodona logo afgebeeld met een link. ![Dodona logo](https://dodona.be/icon.png) -![UGent logo](logo_UGent.png) +Er wordt rechtstreeks verwezen naar het logo van de UGent in de `media` map. + +![UGent logo](media/logo_UGent.png) -### Lists +### Populairste programmeertalen op Dodona -1. item 1 -2. item 2 -3. item 3 +1. Python +2. R +3. Java * item 1 * item 2 * item 3 -## Images - -[Show image](https://dodona.be/icon.png) ## Math snippets -Some text with symbol $$a$$ and a formula $$x^2$$. +Wat tekst met symbool $$a$$ en een formule $$x^2$$. -The solution can be found with the following formula: +De oplossing kan gevonden worden met de volgende formule: $$ a^2 = b^2 + c^2 $$ ## Code snippets -In your solution, use can use some code `print("text")`{:.language-python}. +In je oplossing, kan je deze code gebruiken: `print("text")`{:.language-python}. ```console?lang=python&prompt=>>> @@ -138,20 +138,25 @@ Hello Other side ``` +```javascript +let a = 5; +let b = 42; +``` + ## Callouts {: .callout.callout-success} -> #### Hello -> This is an important message. +> #### Hallo +> Dit is een belangrijk bericht. ## Quotes -Text that is not a quote +Dit is geen quote -> Text that is a quote +> Dit is een quote ```` -Als je ook Nederlandstalige inhoud wilt maken, gebruik je de naam `description.nl.md` voor het tweede bestand. +Als je ook Engelstalige inhoud wilt maken, gebruik je de naam `description.en.md` voor het tweede bestand. De inhoud wordt geschreven in Markdown, een redelijk eenvoudig opmaakformaat. Meer informatie over Markdown is [hier](/nl/references/exercise-description) te vinden. Nadat je deze twee bestanden gemaakt hebt, moet je repository er zo uitzien: diff --git a/nl/guides/exercises/creating-exercises/management/index.md b/nl/guides/exercises/creating-exercises/management/index.md index 1fe467c9b..19d4e7dfc 100644 --- a/nl/guides/exercises/creating-exercises/management/index.md +++ b/nl/guides/exercises/creating-exercises/management/index.md @@ -14,7 +14,6 @@ Hieronder enkele suggesties voor volgende stappen: - [Maak een cursus aan](/nl/guides/teachers/creating-a-course/). - [Gebruik je oefening in een oefeningenreeks van een cursus](/nl/guides/teachers/exercise-series-management/). - Maak nog andere soorten oefeningen. -- Maak [leesactiviteiten](/nl/references/exercise-config/) met extra informatie of kleine stukken theorie. Veel plezier met het gebruik van Dodona! Zoals steeds, als je vragen hebt of iets is niet duidelijk, aarzel dan niet om [ons te contacteren](https://dodona.be/nl/contact/). From 79cd926c4b59e6436424f32b741d3a7e9f555136 Mon Sep 17 00:00:00 2001 From: BrechtW <56451049+BTWS2@users.noreply.github.com> Date: Fri, 17 Nov 2023 19:26:30 +0100 Subject: [PATCH 08/51] reading activity --- .../exercises/creating-exercises/content/index.md | 13 +++++++++---- nl/guides/exercises/examples/class/index.md | 2 +- nl/guides/exercises/examples/command-line/index.md | 2 +- nl/guides/exercises/examples/function/index.md | 2 +- nl/guides/exercises/examples/input-output/index.md | 2 +- 5 files changed, 13 insertions(+), 8 deletions(-) diff --git a/nl/guides/exercises/creating-exercises/content/index.md b/nl/guides/exercises/creating-exercises/content/index.md index 3b4ae769a..b76e24f45 100644 --- a/nl/guides/exercises/creating-exercises/content/index.md +++ b/nl/guides/exercises/creating-exercises/content/index.md @@ -13,6 +13,10 @@ Als je in de vorige stap van de handleiding de _template repository_ gebruikt he Hier zullen we nu zelf nog een leesactiviteit toevoegen. Dit is handig om extra informatie of kleine stukken theorie te integreren in je leerpad. De bestaande leesactiviteit kan uiteraard als voorbeeld dienen. +{: .callout.callout-success} +> #### Een leesactiviteit lijkt goed op een oefening +> De structuur en `config.json` voor een leesactiviteit zijn identiek aan deze van een oefening. Er zijn echter twee grote verschillen: de waarde van `type` moet ingesteld worden op `content` en alles die specifiek voor oefeningen is, mag achterwege gelaten worden. + ## 1. Structuur Elke leesactiviteit in Dodona komt overeen met een bepaalde map in de repository. @@ -70,17 +74,17 @@ repository/ ## 3. Afbeelding of bestand toevoegen Om een afbeelding toe te voegen heb je twee opties. -Ofwel verwijs je naar een afbeelding die in de media map staat ofwel verwijs je naar de afbeelding via een link. +Ofwel verwijs je naar een afbeelding die in de `media` map staat, ofwel verwijs je naar de afbeelding via een link. In het voorbeeld komen straks beide manieren aan bod. Download onderstaande afbeelding met het logo van de UGent. Dit is een [directe link](https://styleguide.ugent.be/files/uploads/logo_UGent_NL_RGB_2400_kleur_witbg.png). Rechtsklik op de afbeelding en kies voor `Afbeelding opslaan...`. ![UGent logo](logo_UGent.png) -Rechtsklik op de `media` map in VS Code web en kies voor `Upload...`. +Rechtsklik op de `media` map in VS Code web en klik op `Upload...`. Selecteer de afbeelding van op je computer en klik op `Openen`. -Verwijzen naar de afbeelding kan met deze markdown code (zie volgende stap): \ +Verwijzen naar de afbeelding kan met deze markdown code (zie volgende stap). Het start met een uitroepingsteken (`!`) en tussen de vierkante haken mag je een beschrijving geven van wat er op de afbeelding staat. Tussen de ronde haken staat het pad naar de afbeelding.: \ `![UGent logo](media/logo_UGent.png)` ## 4. Inhoud @@ -166,13 +170,14 @@ repository/ └── markdown_demo/ ├── description/ | ├── media/ + | | └── logo_UGent.png | └── description.nl.md └── config.json ``` ## 5. Wijzigingen opslaan -Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! +Vergeet niet om je wijzigingen te _committen_, anders gaan ze verloren! Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). diff --git a/nl/guides/exercises/examples/class/index.md b/nl/guides/exercises/examples/class/index.md index a5746ad74..a0053e7e2 100644 --- a/nl/guides/exercises/examples/class/index.md +++ b/nl/guides/exercises/examples/class/index.md @@ -184,6 +184,6 @@ repository/ ## 5. Wijzigingen opslaan -Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! +Vergeet niet om je wijzigingen te _committen_, anders gaan ze verloren! Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). diff --git a/nl/guides/exercises/examples/command-line/index.md b/nl/guides/exercises/examples/command-line/index.md index 6448f80c0..72419d175 100644 --- a/nl/guides/exercises/examples/command-line/index.md +++ b/nl/guides/exercises/examples/command-line/index.md @@ -174,6 +174,6 @@ repository/ ## 5. Wijzigingen opslaan -Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! +Vergeet niet om je wijzigingen te _committen_, anders gaan ze verloren! Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). diff --git a/nl/guides/exercises/examples/function/index.md b/nl/guides/exercises/examples/function/index.md index 1089f9cac..6fb674619 100644 --- a/nl/guides/exercises/examples/function/index.md +++ b/nl/guides/exercises/examples/function/index.md @@ -18,6 +18,6 @@ Is dat niet het geval, volg dan eerst de handleiding [_Oefeningen opstellen_](/n ## 5. Wijzigingen opslaan -Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! +Vergeet niet om je wijzigingen te _committen_, anders gaan ze verloren! Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). diff --git a/nl/guides/exercises/examples/input-output/index.md b/nl/guides/exercises/examples/input-output/index.md index b72c58953..13d285434 100644 --- a/nl/guides/exercises/examples/input-output/index.md +++ b/nl/guides/exercises/examples/input-output/index.md @@ -204,6 +204,6 @@ repository/ ## 5. Wijzigingen opslaan -Vergeet niet om je wijzigingen te committen, anders gaan ze verloren! +Vergeet niet om je wijzigingen te _committen_, anders gaan ze verloren! Een voorbeeld van hoe je dit kan doen vind je [hier](/nl/guides/exercises/creating-exercises/exercise/#_5-wijzigingen-opslaan). From 1c5d19739857d301fc40c96e6135d1494aeca936 Mon Sep 17 00:00:00 2001 From: BrechtW <56451049+BTWS2@users.noreply.github.com> Date: Fri, 17 Nov 2023 19:45:13 +0100 Subject: [PATCH 09/51] reading activity --- .../creating-exercises/content/index.md | 37 ++++++++++--------- 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/nl/guides/exercises/creating-exercises/content/index.md b/nl/guides/exercises/creating-exercises/content/index.md index b76e24f45..983fb6f8c 100644 --- a/nl/guides/exercises/creating-exercises/content/index.md +++ b/nl/guides/exercises/creating-exercises/content/index.md @@ -7,7 +7,7 @@ next: true --- -# Oefeningen opstellen: opgave en testplan schrijven +# Oefeningen opstellen: leesactiviteit Als je in de vorige stap van de handleiding de _template repository_ gebruikt hebt, bevat je repository al een oefening en leesactiviteit. Hier zullen we nu zelf nog een leesactiviteit toevoegen. Dit is handig om extra informatie of kleine stukken theorie te integreren in je leerpad. @@ -97,12 +97,12 @@ Maak een bestand `description.nl.md` aan in de map `description` van de leesacti ## Tekstopmaak -Dit is een voorbeeldzin met woorden in *cursief*, **vet**, en met variabel `result` in functie `geef_oplossing()`. +Dit is een voorbeeldzin met woorden in *cursief*, **vet** en met variabel `result` in functie `geef_oplossing()`. ## Links en afbeeldingen -Dit is een zin waarbij [deze woorden](https://docs.dodona.be/nl/) linken naar de Dodona handleiding. -Hieronder staat het Dodona logo afgebeeld met een link. +Dit is een zin waarbij [deze woorden](https://docs.dodona.be/nl/references/exercise-description/) linken naar de Dodona handleiding over Markdown. +Hieronder staat het Dodona logo afgebeeld via een link. ![Dodona logo](https://dodona.be/icon.png) @@ -116,25 +116,26 @@ Er wordt rechtstreeks verwezen naar het logo van de UGent in de `media` map. 2. R 3. Java -* item 1 -* item 2 -* item 3 +### Soorten ingenieurs +* Handelsingenieur +* Industrieel ingenieur (ing.) +* Burgerlijk ingenieur (ir.) +* Bio-ingenieur -## Math snippets +## Wiskundige formules -Wat tekst met symbool $$a$$ en een formule $$x^2$$. +Bereken de lengte van de schuine zijde van een driehoek $$c$$ met de formule $$c^2 = a^2 + b^2$$. De oplossing kan gevonden worden met de volgende formule: $$ -a^2 = b^2 + c^2 +c = \sqrt{a^2 + b^2} $$ -## Code snippets +## Codefragmenten In je oplossing, kan je deze code gebruiken: `print("text")`{:.language-python}. - ```console?lang=python&prompt=>>> >>> echo("Hello") Hello @@ -142,22 +143,22 @@ Hello Other side ``` -```javascript -let a = 5; -let b = 42; +```python +naam = input() +print(f"Hallo, {naam}!") ``` ## Callouts {: .callout.callout-success} -> #### Hallo +> #### Opgelet > Dit is een belangrijk bericht. ## Quotes -Dit is geen quote +Dit is geen quote. -> Dit is een quote +> Dit is een quote. ```` Als je ook Engelstalige inhoud wilt maken, gebruik je de naam `description.en.md` voor het tweede bestand. From bcc25921d64e9257a8221331d5657c6659b41ecc Mon Sep 17 00:00:00 2001 From: BrechtW <56451049+BTWS2@users.noreply.github.com> Date: Fri, 17 Nov 2023 19:55:50 +0100 Subject: [PATCH 10/51] indentation --- en/faq/activities/index.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/en/faq/activities/index.md b/en/faq/activities/index.md index e7b8d2ad7..ad42164c8 100644 --- a/en/faq/activities/index.md +++ b/en/faq/activities/index.md @@ -18,4 +18,9 @@ As a teacher, you can use the hundreds of exercises that are available in Dodona In Dodona, an "exercises repository" is a collection of exercises and reading activities managed in a linked GitHub repository. These exercises can then be used in multiple "courses". -A "course" in Dodona is again a collection of exercises and reading activities structured in sequences. Here you can, for example, structure exercises according to a desired learning path. Courses are fully managed within Dodona. A course can contain exercises from different exercise repositories. A course also includes enrolled students. In a course, you can monitor these students, make evaluations, answer questions, etc... +A "course" in Dodona is again a collection of exercises and reading activities structured in sequences. +Here you can, for example, structure exercises according to a desired learning path. +Courses are fully managed within Dodona. +A course can contain exercises from different exercise repositories. +A course also includes enrolled students. +In a course, you can monitor these students, make evaluations, answer questions, etc... From 199252e97de1f1f16021abae067d42180d9c19ef Mon Sep 17 00:00:00 2001 From: BrechtW <56451049+BTWS2@users.noreply.github.com> Date: Fri, 17 Nov 2023 20:04:11 +0100 Subject: [PATCH 11/51] newlines --- en/references/exercise-config/index.md | 2 +- nl/faq/activities/index.md | 6 +++++- .../creating-exercises/content/dodona_icon.png | Bin 7004 -> 0 bytes .../creating-exercises/content/index.md | 6 ++++-- nl/references/exercise-config/index.md | 2 +- 5 files changed, 11 insertions(+), 5 deletions(-) delete mode 100644 nl/guides/exercises/creating-exercises/content/dodona_icon.png diff --git a/en/references/exercise-config/index.md b/en/references/exercise-config/index.md index 273043f98..3e784e343 100644 --- a/en/references/exercise-config/index.md +++ b/en/references/exercise-config/index.md @@ -30,7 +30,7 @@ Dodona allows setting the configuration of an **exercise** and a **reading activ ## Config file structure for reading activities -The structure for a reading activity is identical to that of an exercise. There are 2 big differences: the value of `type` must be set to `content` and keys that are not relevant for exercises can be omitted. The format of the description is also identical. +The structure for a reading activity is identical to that of an exercise. There are two big differences: the value of `type` must be set to `content` and keys that are not relevant for exercises can be omitted. The format of the description is also identical. - **`type`**: Must be set to `content` for reading activities - **`access`** (`public` or `private`): determines who can use this exercise diff --git a/nl/faq/activities/index.md b/nl/faq/activities/index.md index c713e0ea6..f1a6b808e 100644 --- a/nl/faq/activities/index.md +++ b/nl/faq/activities/index.md @@ -18,4 +18,8 @@ Als lesgever kan je gebruikmaken van de honderden oefeningen die in Dodona aanwe In Dodona is een "oefeningen _repository_" een verzameling oefeningen en leesactiviteiten die beheerd worden in een gelinkte GitHub repository. Deze oefeningen kunnen dan gebruikt worden in meerdere "cursussen". -Een "cursus" in Dodona is opnieuw een verzameling oefeningen en leesactiviteiten gestructureerd in reeksen. Hier kan je bijvoorbeeld oefeningen structureren volgens een gewenst leerpad. Cursussen worden volledig beheerd binnen Dodona. Een cursus kan oefeningen van verschillende oefeningen repositories bevatten. Bij een cursus horen ook de ingeschreven studenten. In een cursus kan je deze studenten opvolgen, evaluaties maken, vragen beantwoorden, etc... +Een "cursus" in Dodona is opnieuw een verzameling oefeningen en leesactiviteiten gestructureerd in reeksen. Hier kan je bijvoorbeeld oefeningen structureren volgens een gewenst leerpad. +Cursussen worden volledig beheerd binnen Dodona. +Een cursus kan oefeningen van verschillende oefeningen repositories bevatten. +Bij een cursus horen ook de ingeschreven studenten. +In een cursus kan je deze studenten opvolgen, evaluaties maken, vragen beantwoorden, etc... diff --git a/nl/guides/exercises/creating-exercises/content/dodona_icon.png b/nl/guides/exercises/creating-exercises/content/dodona_icon.png deleted file mode 100644 index 09bfea3faf17913efa5c031a54ec81d6b69af138..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7004 zcmeG>Wn5I>wll-P3 =C^8ZT5&!@|rlGE4fbVgC8k7isH<)&Z z;5(q70ZIu_+{?6qe<1c&H}L}iZr%CQfPmLoba;dwmxspw#@Y|0?Yuk$Z0x;k9RvbB zyz$rofNY>Ne(2%gZ-WT*aQF0+4wPg4JBBoV{0A(^iugN p!LlN|pf$Lj3w?=3AT7!VL35FjexhKG%lgMovMeUPl+f5rHBO=bVEl-BiialqU9$0B)QS;7AX`zOAv;2(4UgZcmP z?cbqz=gO1dCH?C{$&=g@_$dbf(DP`hC_W4XZd L?jcTH@5U z?QpqE`{>CXeZqV9XfU6s^z@=r;sTFR1}Uc)K!LhGnndq{fLPy@I(#=peMS}>15RCh zudy`l(%yI9=kl8<^VDAb@3#vV$8s0vfvdAYr@zBif0(#Ut@-pxRgBHLh0V>neeZRd zyiDZ1W7~8;`ys(k%>$1KaWY9VIv^?ZlbAJF&m+92o)RaNZAzd97+J0Q!3ZQJ_`f|7 z`q_xa{z^ZZvnZ}NsBwf6jq_?6eJ9M?lcF)PG``oF*aYYO&U2BFmH{jJZB7G(ibqC3 zxjMR;gNK?D`yK?$Ejjp_8{T-*8(yB%`w;-2h1;%6RRuJqBcfgj!SK zy`}EX=mb{EF&vIEJBYMHOPO`Y>TYKIW3FY{!AdyREo5&pI*V=bZ`QeYVUv-+YzaRL zfMq#jy8nvlDu(KnK2`=yrg}o+2RQBmhN*IS>q^T*f=$?VLx|?zShPG{9IVb_qRXrj zOz7F9?N|wkLdwP{D)FIyKG8BO*hlCZ=ao4Mi99Ho3l4Zh2{86izn8<&?biXx=5i#P zr`fT;fXgm|R)Qz)TCbsMeSj(x<+TRWnJM3za(tx7l$fL>1WMlV^(bI@dKfeJIuOe6 zn0gYJ{WN^h#L6YVZT#$zK~EL%fdoX(HBC2&_+lPgakBrZjEfd(N$b7XThk&p>q*!d zGC()~bWHk1-}bANITerH bAw*S4qUKn=(*NDpDWabwuV;4T9CHt z;X@kwZ`fR57#JV~)AX)1Of}AQ-wI?eHIZ@u>vQXNPTkb<%RG*=DFVCwAM_MChW1?N zrX} ^Z4b`uZEw8X>y!cCXA0HAyj58{bft6Y+ z4_EJk!FF!stg@pb90;@CP)KVs;q4dPS22G6qOn7MibGI-`d%GOtZTE7Op>U%u>j;4 z!Flu`#0m~%GOp$|vQDZGQ5lQ*e&X(y7V(FBh?(i~6Vh`2c2%7gYY*$3KbBiJZb;Hf z-f#I-oQQTW7Y|&_5jZ>Vm|E5*WeY&eWhL9Q7Xpx6KoZh$tk|5j0KrDQaPXxJxqo++ z{D=T#;da?3c|(C3XkGCh&^nAGhY )frcNMhqB9se z&%d2?-SLBjr}>V5tUBnK;P&qnuivhIV!%4}N{Ad!zv22=tN&|oa`-3ZYYI_YDWm@Q zVwPT`5r#twgojOm{Vw~uyGv?G=zC>m%Nf2Bn_d-ijg-;kT)(&Ae)GkqMgQkUw$i8A zNbr_S1L>h(cwonN$spGvcat zoJI_t3|$PEUH9?`g=xGQ*M582Jn0xjFvK~|eLPm7*%R6`pn+B|xZ5Nf_tK*Bn=rzS zw3vvthGG-Ug7Umt=Z^?6ux}#lb_fp9JG}WV;2&2`iJqGT ``xu zxpJ+fMdT)wH8%0Z%Qs1eaG)%}%hciMCMA0&F;@HoF!#}`1ck^Y`(3Js)741qydC)u z%P(g$Jv0_xNnKIAZ&otDRdz?g-IRao`KX_of0@KZg?6;Vf=JU=jc;w?NCy?!QObqR z#>zUPooqFKiESZp(PsHc#IHOb!5%xFCAvK&7Wm>wU4Pm{xvVn`!WvJqPc4Mkqu(Sq z%JL*%_J{?o{?vc`IWR&_4Q9@d_AiB z=)Jubtfp6n7J9u0wS61AA~J`dH2 zWFi0$2MvCoI**UHdmzHCL`#iM0V=2L44rd9-}#aiWcX-zVKv6TQ`Sa`&5(ev!1Y|8 zy$1tP@}T~~*~zjmjEL}Lxq67!? @ uhO s+beD&-1TCgXRkBL&~;-la)q6=}W{ zTKvVI&*h?^vwWZ0Dxeyqx<7WVwSU{}BUI51!@gnRd=(Cw$!P@Y*{4uTdEG{c z1>E|oz7zlyiZap3g$16`eJ|CgXSx0I?jkm?mvrj%nd{{mj#&jJj^D;vO48Em Hndf;QkY`s|`e)I)$J 3p9Y!SVXH~VWv3VGL=B`Mb7kGcTNparX@l0$z$5hYgBl*zxau(! z0OSCqb-GVyaWk_1F^Fi6LZ;8 X4r z90j~`5|YFvZxE7e0LwtzXtDLD4#~V@g4Dw6YydL)saG$SxFYT%fIkAH>;$|sLiZo% z(#DiLR*2_8TjboTpY{%ZT|b0EM;Z@^Md;sRY6e+4c8Nt3tQC=Y8o`}fF?Ook#Dgew zmnt%04udh~jrGKlfF&`6;E`wEMG(g7QDRVNI@Yu872_D>RI!{W_s0zO7dw&&km%x4 z%l!o?jYPw3=_erOvS Cl$xQ(S>i|&%y`Gs ^T8OVu2gLY@ zMc#Rs{Z<}C4Y+KDv-JJ7DJ%7+8X3+&up_}x|GJt8^MgSxx|huL{$kcu1AgxSz`Y=H za3KM^PO+~&pMi1fs33TtheUdX)gX9{p-2bR+M=a;Lr;-l;>{tiqZuyUYF?xezxJj} z w^c&K|(3TIq{lkqV=|XIUlRKr9V(gmuw@@z4y`RToD#2vOG$5S#phD}Vxh zl}@Py(Y&b~zjXFyx<^SR-@}d1*aZ )!aoQ^8lIaH5A%LsE@ zgxuy+ zi6LS;tc8aAvBuGT5-C8eEm}8 zNxh-ZR`R~O+b(9aS-pr0c@%uq)vlukxV{xiFUGpc^R<6ZBBQqb#uN@LtSB@}U 3Vr(l+&TO5CZB z6Yy@5yH2zFLK+A2rveaJtYh*jE`8ZAxF7TDKq*)Z38*7!gu4>fp;W69n)o`=Idl)E zdNNTOZ$bwa^4e6{nAR7zD|DBl;do)uLc3%_P?{ r;xXNs=Gwe80HIJm;|Ykzs|m$do95Zy zKV0{WXg8-v4>rDPl~7qaFX!j_gv#2nVfmWaN%E^^)v+zBdF17;9pIExcvfB;MD0WU zN=+ODeja@JtH5+{$^L*uT3I90IlKOp$-Mb-Ie89cJ@p9LGY|>=AqCD%td<_r&7-sg zUHbYwek)C7ZaFx#M