Saturday, June 16, 2007

Scratch: para aprender a programar


A través de "Educación Tecnológica" conocí Scratch. Una aplicación (o lenguaje o entorno) para aprender a programar. Parece estar especialmente pensado para los niños pero creo que puede ser útil para cualquiera que esté empezando. Puedes descargarla gratuitamente desde su página y también publicar ahí los juegos que hagas.

Enseñar a programar es difícil. Cualquiera que lo haya intentado, estará de acuerdo conmigo. Con niños y con mayores. Algunos problemas típicos de cualquier proceso de enseñanza-aprendizaje, en el caso de la programación se multiplican. Al igual que pasa con las Matemáticas y otras materias con un alto grado de abstracción, unos alumnos lo entenderán a la primera y otros, por más ejemplos y ejercicios que expliquemos, es posible que no lleguen a hacerlo.

Llevaba tiempo buscando algo como Scratch para enseñar a programar. Por mis hijos, que siempre me preguntan cuando me pongo con Swish, y por si montamos un taller de verano en las aulas de mi empresa. Había probado, pero poco, otras cosas similares a Scratch, como Squeak y KPL y no me habían convencido. Tampoco me gustó Logo. Después de estos experimentos, pensé en hacerlo con Swish - ActionScript, preparando ejercicios para niños. Pero lo seguía viendo complicado. Scratch no es que haga desaparecer las complicaciones, pero sí que puede ayudar a suavizarlas: sustituye la escritura de código por los bloques de Lego, gestiona de un modo muy visual la orientación a objetos, cuenta con herramientas de dibujo integradas, está completamente traducido al español (aunque tenga pequeños errores, como el confuso "cambiar x por ", para aumentar el valor de una variable)... En definitiva me parece una solución brillante al problema de enseñar a programar.

En la web de Scratch puedes descargarlo y encontrar mucha documentación, la mayoría en inglés. Aquí también hablan de Scratch y aquí cuentan como instalarlo en Linux. Lo mejor que he encontrado en español, es un "minicurso" para niños creado por J. Merelo y que se puede descargar desde Educarex.

Para probarlo hemos creado un juego muy sencillo (y bastante malo, todo hay que decirlo). Se trata de una evolución del clásico PONG, hacia algo parecido al fútbol. Haciendo clic aquí puedes jugar, aunque te aconsejamos que visites la página principal de Scratch y elijas otros juegos bastante más interesantes.

Si finalmente nos decidimos a preparar un curso sobre Scratch, pondremos aquí los materiales. Y cuando hagamos un juego que merezca la pena, también lo pondremos aquí.

Ahora, anímate y empieza con Scratch

(Buscando más información en Internet sobre la enseñanza de la programación, he encontrado artículos muy interesantes y también bastante densos, con puntos de vista poco habituales. En realidad, están un poco lejos de lo que se pretende con Scratch, pues se centran en el período universitario. Tienen ideas muy diferentes de lo que deben ser los primeros pasos para aprender a desarrollar software. El primero de ellos es "Sobre la crueldad de enseñar verdaderamente ciencias de la computación" de un autor tan típico de los libros de texto de Informática como Dijkstra. El segundo es Back to the basics de www.joelonsoftware.com, en el que hace una acertada defensa de la necesidad de enseñar C en 1º de Informática. Tan acertada, que me ha convencido a mí, que siempre había defendido a Pascal como el lenguaje más apropiado para aprender a programar y que lo único que he hecho en C, en toda mi vida, es un Tetris)

No comments:

Post a Comment