Recientemente obtuve un concierto escribiendo cursos de Python. Lo quieren en un estilo de gamificación similar a algo como www.codingame.com/ . No tengo mucha experiencia con HTML y JS, por lo que no pude discernir cómo funciona su plataforma.
Para ilustrar lo que estoy tratando de hacer, daré un ejemplo muy simple. Incrustado en la página web, habrá una sección donde habrá un editor de python a la izquierda y una salida de gráficos a la derecha. Los estudiantes recibirán un código como StartCarRace(7,10) . Cuando se ejecuta este código, la ventana de gráficos de la derecha mostrará dos autos compitiendo, uno a una velocidad de 7 y otro a una velocidad de 10. Luego se alentará a los estudiantes a intentar cambiar los valores.
Es todo un material bastante estándar que he enseñado antes, pero nunca antes había tenido que incrustarlo en una página web. Hay algunas consideraciones que se me han ocurrido:
He mirado algunas opciones como trinket.io/ , pero parecen ser demasiado pesadas para mis propósitos. También tendría que definir todo el código dentro del IDE. En cuanto a la biblioteca que genera los gráficos de python, creo que es un problema trivial que resolveré más adelante.
Aquí está mi solución teórica actual: use un editorconfig para permitir que los estudiantes escriban su código con resaltado de sintaxis de python. Cuando el estudiante presiona el botón "ejecutar", el JS que ejecuta la página toma ese código como una cadena, ejecuta ese código y cualquier código de python que lo acompañe como una secuencia de comandos de python y envía el resultado a la ventana gráfica. Hice una investigación preliminar y parece bastante fácil ejecutar python desde node.js, pero no estoy seguro de cómo puedo generar la animación de la función python. Esa sería mi pregunta principal, pero si cree que hay enfoques alternativos, agradecería escucharlos.