Skip to content

Commit

Permalink
Merge branch 'main' into fix-subscribe
Browse files Browse the repository at this point in the history
  • Loading branch information
jpelay authored Sep 27, 2023
2 parents f126eef + b96846a commit 1b0d5b0
Show file tree
Hide file tree
Showing 24 changed files with 478 additions and 471 deletions.
Binary file modified all_snippet_hashes.pkl
Binary file not shown.
2 changes: 2 additions & 0 deletions app.py
Original file line number Diff line number Diff line change
Expand Up @@ -746,6 +746,7 @@ def translate_error(code, arguments, keyword_lang):
'allowed_types',
'invalid_type',
'invalid_type_2',
'offending_keyword',
'character_found',
'concept',
'tip',
Expand All @@ -762,6 +763,7 @@ def translate_error(code, arguments, keyword_lang):
'guessed_command',
'invalid_argument',
'invalid_argument_2',
'offending_keyword',
'variable',
'invalid_value',
'print',
Expand Down
12 changes: 6 additions & 6 deletions content/achievements/es.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ achievements:
text: |
Ejecuta un programa exitoso después de un error
did_you_say_please:
title: "Lo has pedido por favor?"
title: "¿Lo has pedido por favor?"
text: |
Crea un programa con el comando 'ask'
error_or_empty:
Expand All @@ -32,7 +32,7 @@ achievements:
text: |
Comparte un programa guardado
do_you_have_copy:
title: "Tienes una copia?"
title: "¿Tienes una copia?"
text: |
Elimina un programa guardado
epic_education:
Expand Down Expand Up @@ -128,7 +128,7 @@ achievements:
text: |
Finaliza el tutorial para profesores
ready_set_education:
title: "Preparados, Listos, Educación!"
title: "¡Preparados, Listos, Educación!"
text: |
Crear una clase
end_of_semester:
Expand All @@ -152,15 +152,15 @@ achievements:
text: |
Retirar a un alumno de una clase
hedy-ious:
title: "Hedy-ious"
title: "Hedy-cioso"
text: |
Imprimir 10 veces la misma cadena sin utilizar un bucle
talk-talk-talk:
title: "Blablabla"
text: |
Crear un programa con al menos 5 palabras clave
hedy_hacking:
title: "Hedy Hacking"
title: "Tramposo Hedy"
text: |
Crear un tiempo de espera debido a que su programa se ejecuta demasiado tiempo
hedy_honor:
Expand All @@ -172,7 +172,7 @@ achievements:
text: |
Intenta ejecutar un programa defectuoso 3 veces seguidas
watch_out:
title: "Cuidado!"
title: "¡Cuidado!"
text: |
Crear un programa que dé como resultado un aviso (no vacío)
one_for_money:
Expand Down
9 changes: 5 additions & 4 deletions content/adventures/en.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ adventures:
In this level we will grow a bit more towards real Python code. You will also learn how to match two lists together.
This way you can program a code in which the correct animal is matched to the right sound.
Because the two codes below... Are obviously nonsense!
example_code: |
example_code: |-
```
animals = 'chicken', 'horse', 'cow'
sounds = 'cluck', 'neigh', 'moo'
Expand All @@ -250,6 +250,7 @@ adventures:
{for} sound {in} sounds
{print} 'A ' animal ' says ' sound
```
Note: These codes will not work like this in this level. Head to the next tab to see which parts you need to correct.
start_code: "{print} 'Lets go to the next tab!'"
17:
story_text: |
Expand Down Expand Up @@ -2059,7 +2060,7 @@ adventures:
{print} 'those are ' points ' points'
```
example_code_2: |
Did you manage to calculate the score for 8 dice? That required a lot of cutting and pasting, right? We are going to make that easier in level 7!
Did you manage to calculate the score for 8 dice? That required a lot of cutting and pasting, right? We are going to make that easier in level 7!
start_code: "{print} 'What will the die indicate this time?'"
7:
story_text: |
Expand Down Expand Up @@ -2386,7 +2387,7 @@ adventures:
```
story_text_3: |
**Extra** You can also let the computer do random sums on its own using random.
This is how you choose a number of tables to practice, and from that you always get a different sum:
start_code: "{print} 'Welcome to this calculator!'"
9:
Expand Down Expand Up @@ -2473,7 +2474,7 @@ adventures:
story_text: |
### Exercise 1
Let's make the practice program a bit harder. The player now has to answers two questions correctly. Fill out the blanks to complete the program.
### Exercise 2 Extra
Sometimes, calculations have multiple correct answers. For example, 10 can be divided by 5 and by 2. So the question 'What number divides 10?' can be answered by 2 and by 5.
Ask for a calculation that has multiple correct answers, ask the player to answer it, and determine if it is correct using `{or}`.
Expand Down
28 changes: 14 additions & 14 deletions content/adventures/es.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ adventures:
Quizás te has dado cuenta en el primer nivel que el comando `{echo}` sólo puede guardar un bit de información cada vez.
Por ejemplo en la aventura del restaurante, puedes imprimir lo que el cliente quiere comer, o que quiere de beber, pero no ambas en una misma frase.
start_code: "{print} hola mundo!"
example_code: "**¡Cuidado! ¡Este código no funciona!**\nEn Hedy los comandos a veces cambiarán. `echo` por ejemplo sólo funciona en el nivel 1. En este nivel aprenderás una forma mejor para devolver las respuestas.\n```\n{print} Bienvenido a Hedy's\n{ask} ¿Qué le gustaría comer?\n{echo} Así que quiere\n{ask} ¿qué le gustaría beber?\n{echo} Así que quiere\n```\n"
example_code: "**¡Cuidado! ¡Este código no funciona!**\nEn Hedy los comandos a veces cambiarán. `{echo}` por ejemplo sólo funciona en el nivel 1. En este nivel aprenderás una forma mejor para devolver las respuestas.\n```\n{print} Bienvenido a Hedy's\n{ask} ¿Qué le gustaría comer?\n{echo} Así que quiere\n{ask} ¿qué le gustaría beber?\n{echo} Así que quiere\n```\n"
story_text_2: "Si el jugador escribe una hamburguesa y un refresco, no puedes decir \"así que quieres una hamburguesa y un refresco\", pero tendrás que hacerlo en dos líneas separadas.\nTambién, el comando `{echo}` sólo imprime la palabra al final de la frase. Así que no puedes decir \"¡tu hamburguesa viene enseguida!\".\n\nEsos cambios en el nivel 2. En el nivel 2 aprenderás a trabajar con variables, que te permiten guardar varias partes de información e imprimirlas donde quieras.\n¡Así que vayamos a la siguiente pestaña!\n"
3:
story_text: |
Expand Down Expand Up @@ -122,7 +122,7 @@ adventures:
16:
start_code: "{print} '¡Vayamos a la siguiente pestaña!'"
story_text: "En este nivel creceremos un poco más hacia código real de Python. También aprenderás como hacer que dos listas coincidan.\nAsí puedes programar un código en el que el animal correcto coincide con el sonido correcto.\nPorque los dos código de abajo... !Obviamente no tienen sentido!\n"
example_code: "```\nanimales = 'gallina', 'caballo', 'vaca'\nsonidos = 'cacarear', 'relinchar', 'mugir'\n{for} animal {in} animales\n {print} 'Un ' animal ' dice ' sonidos {at} {random}\n```\nTambién puedes intentar hacer que funcione de esta manera, pero....\n```\nanimales = 'gallina', 'caballo', 'vaca'\nsonidos = 'cacarear', 'relinchar', 'mugir'\n{for} animal {in} animales\n {for} sonido {in} sonidos\n {print} 'Un ' animal ' dice ' sonido\n```\n"
example_code: "```\nanimales = 'gallina', 'caballo', 'vaca'\nsonidos = 'cluck', 'neigh', 'moo'\n{for} animal {in} animales\n {print} 'Un ' animal ' dice ' sonidos {at} {random}\n```\nTambién puedes intentar que funcione así, pero....\n```\nanimales = 'gallina', 'caballo', 'vaca'\nsonidos = 'cluck', 'neigh', 'moo'\n{for} animal {in} animales\n {for} sonido {in} sonidos\n {print} 'Un ' animal ' dice ' sonido\n```\nNota: Estos códigos no funcionarán así en este nivel. Dirígete a la siguiente pestaña para ver qué partes necesitas corregir."
17:
start_code: "{print} '¡Vayamos al siguiente nivel!'"
story_text: "Ahora vamos a cambiar un poco la indentación. Cada vez que necesitemos una sangría, necesitaremos `:` en la línea anterior a la sangría.\n\nEn este nivel también se puede utilizar un nuevo comando: `{ elif }`. `{elif}` es la abreviatura de {else} {if} y lo necesitas cuando quieres hacer 3 (¡o más!) opciones.\n¡Compruébalo!\n"
Expand Down Expand Up @@ -668,7 +668,7 @@ adventures:
```
start_code: "{print} '¿Qué salió esta vez?'"
example_code_2: "\n ¿Conseguiste calcular la puntuación para 8 dados? Esto requería un montón de cortar y pegar, ¿verdad? ¡Vamos a hacerlo más fácil en el nivel 7!\n"
example_code_2: "¿Conseguiste calcular la puntuación para 8 dados? Esto requería un montón de cortar y pegar, ¿verdad? ¡Vamos a hacerlo más fácil en el nivel 7!\n"
5:
story_text: |
Vamos a añadir los comandos `{if}` y `{else}` a nuestros dados!
Expand Down Expand Up @@ -854,7 +854,7 @@ adventures:
start_code: '# pon tu código aquí'
2:
story_text: "En este nivel puedes practicar usando las variables, ¡así puedes hacer un juego de piedra, papel o tijeras en el próximo nivel!\n### Ejercicio\nCompleta el código poniendo la **variable** en los huecos en blanco.\nEste juego no es muy interactivo, ¡pero no te preocupes! !En la siguiente pestaña aprenderás como usar las variables con el comando `{ask}` para hacer tu juego interactivo!\n"
example_code: "```\nopción es piedra\n{print} Yo elijo _\n```\n"
example_code: "```\nopción {is} piedra\n{print} Yo elijo _\n```"
start_code: '# pon tu código aquí'
15:
story_text: "¡Juega hasta que le ganes a la computadora! Pero primero termina el código de ejemplo...\n"
Expand Down Expand Up @@ -920,7 +920,7 @@ adventures:
{else} {print} '¡Incorrecto! Era ' _
```
start_code: "{print} '¡Bienvenido a tu propia calculadora!'"
story_text_3: "\n **Extra** También puedes dejar que el ordenador haga sumas aleatorias por sí mismo usando random.\n\n Así eliges un número de tablas para practicar, y de ahí siempre obtienes una suma diferente:\n"
story_text_3: "**Extra** También puedes dejar que el ordenador haga sumas aleatorias por sí mismo usando random.\n\nAsí eliges un número de tablas para practicar, y de ahí siempre obtienes una suma diferente:\n"
14:
story_text: "En este nivel puedes programar el juego 'Adivina el número'\n"
example_code: "```\n{print} 'Adivina el número'\nnúmeros = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10\nnúmero = números {at} {random}\njuego = 'en marcha'\n{for} i {in} {range} 1 {to} 10\n {if} juego == 'en marcha'\n intento = {ask} '¿Que número piensas que es?'\n {if} intento > número\n {print} '¡Muy alto!'\n {if} intento < número\n {print} '!Muy bajo!'\n {if} intento == número\n {print} '¡Ganaste!'\n juego = 'terminó'\n```\n"
Expand All @@ -943,13 +943,13 @@ adventures:
start_code: '# pon tu código aquí'
13:
story_text: |
### Ejercicio 1
Hagamos el programa de práctica un poco más difícil. Ahora el jugador tiene que responder correctamente a dos preguntas. Rellena los espacios en blanco para completar el programa.
### Ejercicio 1
Hagamos el programa de práctica un poco más difícil. Ahora el jugador tiene que responder correctamente a dos preguntas. Rellena los espacios en blanco para completar el programa.
### Ejercicio 2 Extra
A veces, los cálculos tienen varias respuestas correctas. Por ejemplo, 10 se puede dividir entre 5 y entre 2. Así que la pregunta "¿Qué número divide a 10?" se puede responder entre 2 y entre 5.
Pide un cálculo que tenga múltiples respuestas correctas, pide al jugador que te responda y determine si es correcto utilizando `{or}`.
Vacía el campo de programación y crea tu propia solución.
### Ejercicio 2 Extra
A veces, los cálculos tienen varias respuestas correctas. Por ejemplo, 10 se puede dividir entre 5 y entre 2. Así que la pregunta "¿Qué número divide a 10?" se puede responder entre 2 y entre 5.
Pide un cálculo que tenga múltiples respuestas correctas, pide al jugador que te responda y determine si es correcto utilizando `{or}`.
Vacía el campo de programación y crea tu propia solución.
example_code: "```\nrespuesta1 = {ask} 'Cuanto es 10 por 7?'\nrespuesta2 = {ask} 'Cuanto es 6 por 7?'\n{if} _ _ _ _ _ _ _\n {print} _\n```\n"
start_code: '# Escribe tu código aquí'
restaurant:
Expand Down Expand Up @@ -1398,7 +1398,7 @@ adventures:
2:
story_text: "## Variables\nPuedes nombrar una palabra con `{is}`. A esto se le llama **variable**. En este ejemplo creamos una variable llamada nombre y una variable llamada edad. Puedes usar la palabra nombre en cualquier parte de tu código y será reemplazada por Hedy, tal que así:\n"
example_code: "```\nnombre {is} Hedy\nedad {is} 15\n{print} nombre tiene edad años\n```\n"
story_text_2: "### Ejercicio\n¡Hora de crear tus propias variables!\nEn el código de ejemplo hicimos un ejemplo de la variable `favorite_animals`. En la línea 1 se crea la variable, y en la línea 2 usamos la variable en un comando de impresión.\nLo primero de todo, termina nuestro ejemplo rellenando tu animal favorito en el hueco en blanco. Después haz 3 códigos como estos por ti mismo. Elige una variable, y establece la variable con el comando {is}. Entonces úsala con un comando {print}, como hicimos.\n"
story_text_2: "### Ejercicio\n¡Hora de crear tus propias variables!\nEn el código de ejemplo hicimos un ejemplo de la variable `favorite_animals`. En la línea 1 se crea la variable, y en la línea 2 usamos la variable en un comando `{print}`.\nLo primero de todo, termina nuestro ejemplo rellenando tu animal favorito en el hueco en blanco. Después haz 3 códigos como estos por ti mismo. Elige una variable, y establece la variable con el comando `{is}`. Entonces úsala con un comando `{print}`, como hicimos.\n"
example_code_2: "```\nanimales_favoritos es _\n{print} me gusta animales_favoritos\n```\n"
start_code: "nombre {is} Hedy\nedad {is} 15\n{print} nombre tiene edad años"
14:
Expand Down Expand Up @@ -1514,7 +1514,7 @@ adventures:
levels:
2:
story_text: "Ahora que has aprendido como usar el comando `{ask}, ¡también puedes hacer tu código interactivo de piedra, papel, tijeras!\n\n### Ejercicio\nHaz el código interactivo de piedra, papel, tijeras añadiendo el comando `{ask}` y una pregunta a tu código de piedra, papel, tijeras.\n"
example_code: "```\nopción es _\n{print} Yo elijo opción\n```\n"
example_code: "```\nopción {is} _\n{print} Yo elijo opción\n```\n"
start_code: "# pon tu código aquí"
harry_potter:
name: Harry Potter
Expand All @@ -1533,7 +1533,7 @@ adventures:
1:
story_text: "## El comando preguntar\nAhora que puedes usar el comando `{print}`, estás preparado para usar el siguiente comando: `{ask}`. Con el comando `{ask}`, puedes hacer una pregunta. Compruébalo:\n"
example_code: "```\n{print} ¡Hola!\n{ask} ¿Cómo te llamas?\n```\n"
story_text_2: "## El comando echo\nSi quieres que el ordenador te repita la respuesta, puedes usar el comando `{echo}`. Que la respuesta se hará eco de nuevo al final de la frase, así que en este ejemplo después de hola.\n"
story_text_2: "## El comando echo\nSi quieres que el ordenador te repita la respuesta, puedes usar el comando `{echo}`. Se hará eco de la respuesta de nuevo al final de la frase, así que en este ejemplo después de hola.\n"
story_text_3: "### Ejercicio\nPrueba los comandos `{ask}` y `{echo}`. Lo primero, rellena los huecos en blanco para hacer que el programa funcione.\nDespués, haz 2 preguntas más usando el comando `{ask}`, tras cada `{ask}` usa un `{echo}` para imprimir la respuesta en pantalla.\n"
example_code_2: "```\n{print} ¡Hola!\n{ask} ¿Cómo te llamas?\n{echo} hola\n```\n"
example_code_3: "```\n_ ¿Qué tal estás?\n_\n```\n"
Expand Down
Loading

0 comments on commit 1b0d5b0

Please sign in to comment.