Alice es un entorno de programación educativo y gratuito diseñado para enseñar a los estudiantes los conceptos básicos y las teorías que hay detrás de la programación, sin atascarlos en una complicada sintaxis de codificación.
Usando el programa Alice, los estudiantes pueden crear animaciones y juegos en 3D dentro de un entorno de desarrollo de arrastrar y soltar.
Entorno Alice
En el entorno Alice, los estudiantes pueden seleccionar un mundo (o construir el suyo propio) y añadir objetos 3D (personas, animales, edificios, etc) de una gran galería online.
Objetos
Cada objeto contiene varios métodos incorporados, que los estudiantes pueden utilizar para manipular el objeto e incluirlo en sus programas.
Por ejemplo, un objeto de un caballero puede incluir varios métodos para blandir su espada de diferentes maneras. Arrastrando estos métodos a una ventana de programación, los estudiantes pueden «codificar» instrucciones para cada objeto dentro de su mundo, tal y como se haría en un entorno de programación tradicional.
Características de programación
Los objetos de Alice se pueden programar utilizando varias características de programación tradicionales, como las sentencias if-else, los bucles e incluso la concurrencia.
Por ejemplo, el software proporciona una lista de preguntas que un objeto puede «hacer», como por ejemplo si está o no a una determinada distancia de otro objeto. Arrastrando estas preguntas a la ventana de programación y añadiéndoles métodos, los programadores pueden crear movimientos e interacciones complejas de los personajes, como por ejemplo que un caballero saque su espada cuando un enemigo esté cerca.
El mantenimiento de Alice corre a cargo del Grupo de Investigación Stage3 de la Universidad Carnegie Mellon.
Recursos generales
Alice cuenta con una pequeña pero dedicada comunidad de usuarios. Dada su naturaleza educativa, muchos usuarios de Alice están más que felices de ayudarse mutuamente con el aprendizaje del entorno, la mejora de su código, la participación de los estudiantes, e incluso el desarrollo de planes de lecciones.
-
Alice.org: el sitio oficial del software Alice contiene enlaces de descarga para las versiones actuales y anteriores, una introducción al entorno de programación, una lista de recursos para los profesores y enlaces de la comunidad.
-
Foros de Alice: el foro oficial para los programadores de Alice alberga páginas para solicitar información, participar en discusiones generales, compartir recursos educativos y obtener comentarios de la comunidad. También hay un área para informar de problemas y hacer sugerencias para futuras mejoras.
-
Planes de lecciones para profesores: creados por profesores que asistieron a los talleres de Alice en la Universidad de Duke, esta colección incluye planes de lecciones basados en Alice para los cursos de 3º a 12º, que cubren una impresionante gama de áreas temáticas, incluyendo matemáticas, ciencias, lenguas extranjeras, arte, historia, inglés, ESL, negocios y aplicaciones informáticas.
-
Tutoriales de Alice de la Universidad de Duke: este sitio alberga tutoriales gratuitos desarrollados durante varios años del taller de programación de verano de Duke para estudiantes de secundaria y preparatoria. Incluye tutoriales basados en diapositivas y en vídeo para Alice 2 y Alice 3, así como varios ejemplos de vídeos y animaciones desarrollados con Alice.
-
Compañía de Formación Virtual: este es un tutorial de pago, pero puedes ver los tres primeros capítulos (más de 15 minilecciones) de forma gratuita, y luego decidir si merece la pena la inversión. Estas lecciones en vídeo abarcan desde lo más básico, como la instalación del software y el guardado de los proyectos, hasta los conceptos más complejos de la programación orientada a objetos, las estructuras de programación y la creación de programas basados en eventos. Cada tema se desglosa en una serie de breves lecciones en vídeo.
-
Tutoriales de Alice: Computer Programming in 3D: esta serie de tutoriales basada en un blog incluye introducciones breves y visuales al entorno del software. Aunque no tiene mucho que ver con la programación, es un buen punto de partida para sentirse cómodo con la aplicación.
-
Introducción a la programación de Alice por Developer.com: este es uno de los pocos tutoriales de Alice diseñados para programadores experimentados. Junto con una visión general de los lenguajes de Alice y una introducción a la creación de mundos, incluye guías extensas y en profundidad de las características de programación de Alice, incluyendo la creación y manipulación de objetos, el trabajo con parámetros, el uso de métodos, y más. Si buscas una herramienta para usar en el aula, no es ésta. Pero si eres un programador que quiere entender exactamente con qué están trabajando tus hijos, esta es una lectura obligada.
-
Diseño y creación de mundos virtuales para adolescentes, de Charles Hardnett: como su nombre indica, este texto entra en la primera categoría de libros para niños en edad escolar. El libro guía a los estudiantes a través de tutoriales paso a paso para la creación de líneas argumentales, la construcción de un mundo animado y la creación de personajes para historias animadas, juegos y películas.
-
Conociendo a Alice (Code Power: A Teen Programmer’s Guide) de Jeanne Nagle: creado específicamente para las aulas de secundaria, este libro proporciona una visión general de Alice, incluyendo por qué fue creado y cómo puede enseñar conceptos de programación sin enseñar código. En lugar de proporcionar una guía de programación paso a paso, conduce a los estudiantes a través de varios ejemplos sencillos y les anima a tomar lo que aprenden y aplicarlo a sus propios proyectos.
-
Aprendiendo a programar con Alice, de Dann, Cooper y Pausch: diseñado para estudiantes universitarios de nivel pre-CS1, o para ser utilizado en la primera parte de una clase de CS1, este libro cubre los fundamentos de la programación con Alice y la teoría general de la programación, a la vez que proporciona una introducción a los lenguajes de programación tradicionales permitiendo a los estudiantes ver el código que han creado visualmente en una sintaxis basada en Java.
-
Alice 3 en acción: Computing Through Animation, de Joel Adams: se trata de otro libro complementario, destinado a proporcionar lecciones adicionales sobre programación básica y teoría de la programación dentro de una clase de CS de nivel universitario.
Tutoriales
La mayoría de los tutoriales online para Alice son muy accesibles, ya que están escritos para los profesores o sus alumnos. Muchos de ellos incluyen lecciones en vídeo y dedican mucho tiempo a ayudar a los estudiantes a familiarizarse con el entorno del software.
Libros
Los libros sobre Alice suelen ser de dos tipos. El primer tipo está dirigido a los jóvenes programadores, normalmente en la escuela media o secundaria, que simplemente están tratando de obtener una comprensión de los conceptos de programación y la lógica, no aprender un lenguaje de programación tradicional.
El segundo están diseñados como suplementos a las clases de CS de nivel universitario. Estos últimos suelen ser mucho más densos y a menudo incluyen elementos adicionales, como comparaciones o ejemplos de código tradicional. Sin embargo, todos los libros de Alice que se presentan a continuación están escritos para los nuevos programadores.
Conclusión
Ya sea que esté buscando introducir a los niños más pequeños a la programación o proporcionar una introducción a un plan de estudios de CS de nivel universitario, Alice ofrece una visión general fácilmente accesible de los principios y teorías básicas de programación.
Después de utilizar Alice, cuando los alumnos se introduzcan en un lenguaje de programación tradicional basado en texto, podrán combinar fácilmente sus conocimientos de lógica de programación con la nueva sintaxis que están aprendiendo.
A diferencia de muchos otros lenguajes de programación visuales para niños, Alice incluye «codificación» en texto plano que los nuevos programadores pueden seguir, ayudando a cerrar la brecha entre un lenguaje visual y un entorno basado en texto.
Más lecturas y recursos
Tenemos más guías de programación, tutoriales e infografías relacionadas con la codificación y recursos para desarrolladores: