Esta es una pregunta muy difícil. Logo y Smalltalk (para nombrar solo dos ejemplos obvios) fueron originalmente diseñados específicamente para ser utilizados en la enseñanza de los niños al programa. Sin embargo, rápidamente se encuentra con un problema: es difícil definir un lenguaje que sea lo suficientemente simple para que un niño pequeño lo entienda por completo, y aún lo suficientemente rico como para evitar que se vuelva rápidamente limitante y torpe.
Al menos por lo que he visto, la mayoría de los intentos han funcionado mal en ambos aspectos respectos. Solo por ejemplo, la mayoría trata de incluir verbosidad para que el código se lea más como inglés (por ejemplo, "Para:" en Logo). Los niños a menudo tienen habilidades de teclado lo suficientemente pobres que tal verbosidad es frustrante.También (en mi experiencia) esperan que si parte de la sintaxis se parece al inglés, el idioma debería aceptar otro inglés válido también (esperaría que lo mismo sea cierto para los hablantes nativos de otros idiomas, pero mi experiencia es principalmente con Angloparlantes).
Al mismo tiempo, la mayoría de los niños (con los que he trabajado) llegan rápidamente al punto en que encuentran el mini-idioma limitante. Algo de eso probablemente se deriva de las frustraciones mencionadas anteriormente. Probablemente, algunos también se deben a la falta de imaginación por parte de (al menos algunos de) sus profesores al idear ejercicios que son interesantes y desafiantes. Creo que también es mucho más difícil hoy de lo que era (digamos) hace 20 años, en aquel entonces, los niños estaban entusiasmados con lo que podían dibujar con los gráficos de las tortugas (por ejemplo). Hoy en día, están acostumbrados a los juegos con gráficos 3D fotorrealistas, y dibujar una "rosa" 2D en línea recta parece afectar a muchos de ellos como básicamente cojos.
¡De acuerdo en Python! Aunque solo sea porque tiene requisitos de sintaxis absolutamente mínimos y una puntuación mínima. Una estética así puede marcar una gran diferencia para un nuevo desarrollador. También hay frameworks realmente buenos como PyGame para hacer cosas interactivas con mucha facilidad. Creo que la tarea importa más que el lenguaje. Omita "imprimir un mensaje a la consola" y en su lugar concéntrese en "esta cosa gráfica reacciona cuando hago clic en él" – alecf
Livewires es un curso de código abierto para enseñar a los niños a programar, que usa Python y una versión simplificada de PyGame para obtenerlos yendo aún más rápido. Lo hojeé, parece muy prometedor. http://www.livewires.org.uk/python/home – TarkaDaal