El portal educativo del Estado argentino

 
 

Enseñar a programar a los niños. Una brevísima introducción al acto de programar (o a los mecanismos de pensamiento necesarios para programar)

La enseñanza de la programación a los más pequeños es un tema que da lugar a debates. Algunos dicen que es algo para adultos, otros insisten en la dificultad o especificidad de la tarea. Pareciera que solo los programadores mayores, los que se dedican a la informática, programan, pero no es así. La programación sirve para muchas cosas, no solo para programar. Y de eso vamos hablar: de sus virtudes en el aprendizaje cotidiano, de cómo programar, de cómo empezar, etcétera.

En necesario aclarar que solo desarrollaremos el concepto: programar es igual a dar instrucciones + ver el efecto en tiempo real. En pocas palabras: lo que yo digo se traslada a la acción, la acción trae consecuencias, y yo soy responsable de esa acción que se llevó a cabo a partir de mi instrucción.

A partir de los comentarios de Marina Bers, ya habíamos esbozado un poco el tema en relación con la robótica para los más pequeños.

Razones para aprender a programar desde pequeño.
La primera razón podría ser lisa y llanamente porque el tema empieza a resonar en los oídos de docentes, padres y otros. Los chicos lo piden; los nativos digitales lo llevan a cabo solitos, solitos. Por lo tanto, nuestra tarea será la de acompañarlos y organizar su espontáneo autodidactismo. La segunda razón podría ser porque programar sirve para algo más que aprender XML. Y de esta segunda razón vamos a ocuparnos particularmente.

Primeros pasos.
En general, cuando hablamos de primeros pasos hablamos de una progresión en la dificultad de los programas a utilizar. Probaremos con proponer la facilidad a través del uso de actividades diferentes. Si hay algo que estimula hoy en día a los alumnos son los videojuegos, las animaciones y particularmente todo lo que lleve la imagen como soporte. Entonces, ¿qué pasaría si la progresión pasara por el formato?. Intentaremos ejemplificar con un programa que permite aprender a través de la diversión, de lo descontracturado y de la reflexión. Hablamos de Scratch.

Planteos anteriores, previos o simplemente planteos posibles.
¿La programación debería incluirse en todas las materias? ¿Qué se enseña de la informática? ¿Por qué programar sirve para todos los aspectos de la vida? ¿La programación debería ser una de las llamadas asignaturas transversales?

La programación sirve para que podamos dar instrucciones a una computadora. Leemos: “Un control remoto, un horno a microondas (…) son, además de cosas cotidianas de uso, una especie de computadora, que tiene un programa único (…) y que necesita de un operador para que funcione (nosotros). (Sin embargo) casi podríamos decir que en estos actos somos usuarios pasivos de estas especies de computadoras. La actividad empieza cuando somos nosotros los que programamos esos ‘controles remotos’, cuando somos capaces nosotros mismos de ‘personalizar’ nuestras necesidades.”. Este es el quid de la cuestión: adueñarnos de nuestras necesidades y actuar en consecuencia.

Programas para aprender programación en la edad escolar hay muchos. La mayoría están en inglés, así que no los tendremos en cuenta, al menos por el momento. En español hemos localizado tres: MswLogo, Promorph (KLP) y Scratch. Hemos decidido trabajar con éste último porque resulta ser el más fácil, el más divertido y –algo muy importante en estos tiempos– el de interfaz más atractiva.

Satisfacción garantizada.
A toda edad, sentir que aquello que pedimos, que necesitamos, que proyectamos, sucede, produce una gran satisfacción. El “querer es poder” ejemplifica una programación exitosa. Para un niño, sentir que su pedido solo depende de él, que él es quien decide y dirige una acción, y que como por arte de magia una iniciativa suya deviene realidad, es doblemente satisfactorio. Le da autonomía y lo hace sentir responsable e importante. Ver y no imaginar, comprobar que dio una orden y que como consecuencia algo sucedió, demuestra su capacidad y su éxito. La motivación nace de su propio logro: él es causa y efecto de su propia decisión. Y sin embargo, no todo es éxito. Aun así resulta alentador, porque suma experiencia. Si uno se equivoca en la orden, en lo que programa, el pedido no funciona. Ahí entra la magia del tiempo real. No hay que esperar. Se aprende instantáneamente por prueba y error.

Scratch.
Scratch fue desarrollado por Lifelong Kindergarten, en colaboración con investigadores de la universidad UCLA y con la financiación de la National Science Foundation y de la Fundación Intel, y es un programa muy simple que tiene como objetivo enseñarles a los más pequeños cómo funcionan los lenguajes de programación, a través de animaciones e interactividad. “El nombre ‘Scratch’ proviene de una técnica utilizada por los disc jockeys de hip-hop, que consiste en hacer girar un disco de vinilo y mezclarlo con trozos musicales de diferentes maneras. De igual modo, este software permite a los niños programar mezclando diferentes medios: gráficos, fotografías, música o sonidos.”

Un comentario muy importante: Scratch no es un programa que va a enseñarnos a programar con lenguajes de programación. Va a enseñarnos a comprender qué significa programar. A reflexionar, como lo haríamos con un lenguaje de programación, a actuar de esa manera, a entender el concepto: doy una orden, una acción se desencadenará. Causa y efecto.

Grados de dificultad, decíamos. Y acá, ya entrando en el programa, también pueden implementarse. Uno puede trabajar con lo que viene en la herramienta por default, pero también puede ir un paso más allá y agregar escenarios, sonidos, etcétera.

Vayamos por partes. Desde aquí se puede descargar. Y de paso, pispear los proyectos de otros chicos del otro lado del mundo. Lo bueno es que asume automáticamente el idioma en el que esté instalado tu Windows. Si no es así, nos encontraremos con una solapa que dice Language, y desde allí podemos configurarlo.

Cuando abrimos el programa, nos encontramos con la siguiente pantalla:

imagen1.JPG


En la pantalla principal está el personaje que es ícono del software –un gatito–, situado en un fondo blanco en lo que se llama el “escenario”. Al escenario se lo puede cambiar (fondos) desde el programa mismo o, como decíamos, desde un fichero de nuestras carpetas. O sea que podemos usar nuestras propias fotografías, dibujos, música, etc. Lo mismo con los objetos que queremos que acompañen a nuestro protagonista, o con el protagonista mismo.

Antes de seguir les recomendamos que descarguen el programa, y vayan leyendo en simultáneo esta nota, para entender el mecanismo y cada una de las “órdenes”.

Si miran bien debajo de la gran pantalla, señala escenario u objeto. Empezamos por modificar uno u otro y las herramientas se irán adecuando solas. Por ejemplo, si decidimos cambiar el objeto (gatito) vamos a: disfraces y sonidos. Si decidimos empezar por señalar el escenario, las opciones son: fondos y sonidos. La cuestión es ir apretando todos los botones y viendo qué pasa. ( Experimentando también se aprende.)

Empecemos. Ya seleccionamos un objeto, a nuestro personaje; un fondo y un sonido. A mí me quedó así:

imagen2.JPG


Vamos al medio y pulsamos en programas. Nos queda vacío y limpio para empezar. Esta es la zona llamada de elaboración de guiones (scripts). Es fácil, solo hay que arrastrar y encajar.

Acá van las pantallas con las que podremos ir haciendo un par de cosas:

movimiento.JPG

apariencia.JPG

control.JPG

sonidos.JPG

Es indispensable comprender que las “órdenes” que vayamos dando se van trasladando (arrastrando con el mouse) al rectángulo del medio y que se irán, literalmente, encastrando como si fueran piezas de un rompecabezas. Prueben al azar, para ver si funcionan el encastramiento y el arrastre.

Probemos: apretamos control y aparece una serie de instrucciones. Traten de arrastrar, por ejemplo, “al presionar”: verán que se mueve hacia el medio. Todo lo que vayamos arrastrando serán las instrucciones que iremos dando. Es decir que –según lo que arrastre– mis instrucciones serán del tipo: al presionar escenario + arrastro + espero x segundos + arrastro +…
Arrastrando, elaborando nuestro guión (órdenes) y encastrando, vamos “programando”.

Veamos un programa sencillo ya elaborado, seleccionando “piezas” de los diferentes tipos (Movimiento, Control, Apariencia, Sonido...):

1. Crear el escenario y los objetos, es decir, modificar el fondo blanco del escenario por otro de los que se incluyen en la solapa Escenarios, o incorporar algún paisaje o foto que tengamos en nuestros propios archivos (usamos para ello el botón de Importar).
2. Empezamos a programar. Primero nos ubicamos sobre el objeto.
3. Entramos en la solapa Disfraces e importamos dos o tres objetos diferentes (personajes que vamos a ir ncorporando para modificar si damos la orden).
4. Vamos a la solapa Sonidos y también importamos tres o diferentes.
5. Por último entramos en la solapa Programas. Vamos a utilizar las planillas de control, movimiento, apariencia y sonido, y ahí empieza el encastre.
6. Vamos a la izquierda, a Control, y decimos, pensamos (arrastramos): quiero que “al presionar la bandera verde”, “se mueva 10 pasos”, “moverse ocho pasos”, “cambiar disfraz” y “tocar el sonido miau”.

Este sería el esquema y el encastre de las órdenes dadas:

imagen-6%281%29.jpg


A veces, ir agregando disfraces ayuda, por ejemplo, al movimiento: si tenemos un personaje con las piernas de un modo y luego un segundo personaje muy similar pero con un movimiento de piernas diferente, podríamos encastrarlos para que parezca que está caminando. Por eso, podrán ver que existen cat 1-a y cat 1-b (en la planilla de disfraces). Son el mismo personaje (gato) que puede, con una pequeña variación, mostrar movimiento.

Podemos guardar todo lo que vamos creando, y ahí empieza el verdadero juego. Compartimos, cambiamos, intercambiamos, agregamos sonidos. Agrandamos, dibujamos, etc. Con el solo poder de “nuestras órdenes”, devenimos artífices de nuestros personajes, de sus movimientos y de sus palabras. Queremos que Batman diga: “Hasta la vista, baby” (perdón, ese era Terminator). Queremos que el fantasmita camine: todo es posible si reflexionamos para dar la orden correcta. La computadora es nuestra mano, es la que dibuja nuestro deseo.

Scratch y su “actitud” colaborativa.
Una vez que hayamos trabajado, experimentado, probado y creado, podemos, como decíamos, compartir nuestras creaciones (botón: Compartir). Primero tenemos que crear un usuario, y el programa mismo es el que se encarga de todo lo demás, y especialmente ¡de que llegue a todo el mundo!

Algunas conclusiones.
Programar, o desarrollar actividades introductorias de programación, ayuda a los alumnos a practicar el razonamiento de tipo secuencial y lógico. El niño sigue la secuencia de su idea y la “traduce” al papel (a la computadora). Esto hace que una idea –una abstracción– se transforme en algo concreto, casi palpable.

Los pensamientos devienen acciones concretas. Lo simbólico, las intuiciones, las ideas (todas tan abstractas ellas) se materializan. De esta manera, el manejo, el cambio, la elaboración y la corrección pueden producirse con mayor facilidad. La programación es el elemento conector, el traductor de la fantasía devenida realidad.

¿Recuerdan la nota en la que expresábamos el deseo: “No queremos chicos artistas per se, queremos chicos abiertos (elásticos) per se”? Aprender a programar tiene, de alguna manera, el mismo objetivo.

No queremos chicos que sepan programar por el simple hecho de hacerlo. Queremos chicos que sean capaces de reflexionar, de aprender que sus decisiones y acciones conllevan consecuencias. Tomar la programación como una especie de metáfora de los procesos de aprendizaje: programar es aprender a reflexionar secuencialmente, lógicamente, a través de la prueba y el error. Programar es, en cierta forma, la posibilidad de concretar nuestros sueños.

Links
La wiki de Scratch (francés, inglés, alemán)
Ejemplo de proyecto.


4 Comentarios

  1. Patricia Mendy. Marzo 15, 2009 07:43

    Betina:
    Esto es excelente.
    Ya lo descargué y estoy probando todo.

    Muchas gracias! Sé que lo vamos a usar mucho con los chiquis de la escuela.

  2. heiner. Mayo 1, 2010 18:25

    hola soy docente de informática en Costa Rica y ya trabajamos con scratch en nuestro sistema educativo, apoyado de unas guías didacticas basadas en el Enfoque de Apredizaje por proyectos. Es genial. Ahora necesito una actividad que preferiblemente sea en un ambiente lúdico para explicarles a los niños el concepto de programar computadoras. Gracias

  3. dsigno. Septiembre 7, 2010 15:13

    Hola a todos: Hace algo así como un mes que abrí un sitio sobre Scratch, en http://www.scratchbydsigno.com.ar
    En él encontrarán información sobre el programa, sobre su instalación, algunos links a recursos disponibles en la web sobre Scratch, y especialmente algunos tutoriales que iré agregando con el tiempo.
    Soy docente de Informática en Funes, Santa Fe, y trabajo desde hace un año con Scratch, con chicos de 9 a 12 años.
    Saludos

  4. Julián. Octubre 21, 2010 13:46

    Soy padre de 2 niños con edades de 2 y 6 años y estoy enseñando a mi hijo de 6 años a programar con scratch. Hasta ahora hemos hecho varios ejercicios y esto ha despertado su curiosidad. Siempre le pregunto: "¿como le harías para hacer esto?" Y permito que piense antes de darle la solución. Scratch es una herramienta valiosa para despertar las habilidades lógicas-matemáticas en los pequeños y creo que debería incluirse en los programas de estudio de nivel básico en las escuelas de México. Gracias y saludos