miércoles, abril 24, 2013

¿Deberían los niños aprender a programar en la escuela?

Ejemplo de output en Logo
(turtle graphic)

¿Por qué se nos escapó la tortuga?
¿Se acuerdan del lenguaje “Logo”? El “Logo” es un lenguaje de programación  de alto nivel, en parte funcional, en parte estructurado y de muy fácil aprendizaje, en donde se escriben comandos como:


avanzar 100
derecha 90
izquierda 30


... con los cuales se podía trazar una línea, y generar gráficos. Se lo conoció también con el “lenguaje de la tortuga” ya que se basaba en la metáfora de una tortuga cuyos movimientos construían los trazos programados. El lenguaje “Logo”, fue diseñado con fines didácticos por Danny Bobrow, Wally Feurzeig y Seymour Papert, quienes se basaron en las características del lenguaje Lisp. Si bien este lenguaje, no fue, inicialmente, creado para enseñar programación, su uso se difundió en los años 80 en ciertos ámbitos educativos, ya que su sencillez lo convertía en una propuesta muy interesante para acercar a niños y jóvenes a la programación. El “Logo”, se introduce en la enseñanza formal enarbolando las banderas del constructivismo, ya que propone aprendizajes orientados hacia la solución de problemas, cuyo impacto cognitivo, según se esperaba, podría trasladarse a otros ámbitos del saber.  En efecto, el “Logo” formó parte de los planes de informática educativa de la mayor parte de los países desarrollados (Pantoja, 1997)


Durante aquellos años, mientras los más chiquitos, en el contexto de algunas escuelas “innovadoras”, experimentaban con “Logo”, los adolescentes, apostábamos al “BASIC” con las primeras microcompuadoras domésticas que nos podíamos comprar. La “programación” era un hobby popular entre los que fuimos adolescentes a mediados de los 80, o al menos lo era, digamos, entre aquellos perfiles que podríamos haber sido, algunos años atrás, coleccionistas de sellos postales o quizá, radioaficionados. Sin alcanzar la misma popularidad con que hoy, los chicos comparten “memes” en Facebook, existía cierto interés tácito en el valor estratégico de aprender a programar... A las propuestas extraescolares de “danza”, “dibujo” e “inglés” se sumaban las revistas especializadas (para iniciar un recorrido autodidacta) o los cursos ofrecidos por informales “Institutos de computación”... es que por entonces, la clave del futuro, parecía encriptarse entre las prometedoras líneas del código de un programa informático.

Código en Basic

Pero como ocurre muchas veces con los entusiasmos pedagógicos, sucedió luego que la moda pasó. Adicionalmente, las investigaciones en el campo, no fueron contundentes respecto al supuesto impacto positivo de estas experiencias pedagógicas en términos de mejores aprendizajes... aunque como también suele suceder, las causas de esta aparente desilusión, se tejen en un entramado complejo en donde es bastante difícil aislar variables y explicar qué es lo que se podría haber hecho mejor.



El salto cualitativo

A medida que las computadoras domésticas se volvieron más poderosas, los programas de software (especialmente las aplicaciones de ofimática) se fueron instalando en nuestra vida cotidiana, con la misma naturalidad con que lo hicieron también, la fotocopiadora y el fax. En el mundo laboral, escritorios de administrativos de todo tipo se poblaron de computadoras que requerían personal “capacitado” para operar aplicaciones de oficina, así como décadas atrás, se habrían solicitado sólidos conocimientos de mecanografía. La cuestión se fue volviendo un poco más exigente cuando la escritura digital se transformó en norma, y nuevas aplicaciones de software fueron revolucionando la forma de trabajar y producir documentos de todo tipo. Por su puesto, no debemos dejar de sumar a este contexto, el interés de los fabricantes de software por la capacitación operativa en el uso de una aplicación en particular, a fin de crear un mercado cautivo. Todo esto fue, progresivamente, restringiendo el panorama de la enseñanza de la informática a lo "práctico y útil", al menos, en términos de corto plazo.


Y de esta forma, niños y adolescentes se fueron alejando de aquellas primeras experiencias lúdicas que vinculaban la iniciación en la informática al aprendizaje de lenguajes de programación accesibles... si lo que se requería eran usuarios ¿para que formar programadores? Cambiaba drásticamente así, el eje sobre el cuál se definía el “aprender computación”. El interés se desplazaba del escritor de códigos, del hacedor de programas, al usuario de aplicaciones. Esta premisa, sin duda, tendría un impacto decisivo en el modo en que se desarrollaría la enseñanza de la informática dentro del sistema educativo formal.


Volviendo a las fuentes

Recientemente, llegó a mis manos un interesante trabajo de la fundación Sadosky en la cual se señala la importancia de incluir Ciencias de la Computación dentro de los contenidos curriculares. Esta idea, que revisa la historia reciente en materia de inclusión de TIC en las escuelas, se sostiene básicamente desde dos aspectos: en primer lugar, como una demanda económica referida a la necesidad de despertar vocaciones valiosas para la industria de la tecnología -efectivamente, parecen existir profesiones por las cuales los jóvenes no optan, muchas veces, por simple desconocimiento- y en segundo lugar, aún cuando las Ciencias de la Computación no conformen una opción profesional, sus contenidos resultarían valiosos en tanto la forma de pensamiento que promueven, podría ser aplicable a otros ámbitos del saber.


Sin embargo, este retorno a las fuentes, propone sin duda, una mirada mucho más amplia e integradora que la que describía al inicio de este post.¿Deberían los niños aprender a programar en la escuela?En efecto, la propuesta reconoce tres espacios disciplinares que ordenan y recuperan el camino recorrido:


Diferenciación de espacios disciplinares

vinculados a la enseñanza de TIC en las escuelas

Ciencias de la computación
Competencias Digitales
TIC
Programación y algoritmos
Estructuras de datos
Arquitecturas y redes de computadoras
Modelización y formalización
Descomposición en sub problemas
Generalización y abstracción de casos particulares
Proceso de diseño, implementación y prueba
Uso de herramientas de Internet para la comunicación y el trabajo colaborativo.
Uso de aplicaciones para trabajos expresivos y creativos.
Normas de seguridad y comportamiento en línea.
Uso de Software para administración de datos.
Creación y presentacón de contenidos en diversos formatos y para audiencias diferentes.
Diseño y configuración de plataformas para diferentes usos.
Gestión de proyectos
Comprensión de las implicancias de las TIC en la sociedad en general.



El pensamiento computacional

En síntesis, sin abandonar los avances realizados en materia de Competencias Digitales y en el uso pedagógico de herramientas TIC, incorporar las Ciencias de la Computación como contenido curricular, implica proponer a los estudiantes, el ir más allá del rol de usuarios competentes, o incluso, del celebrado rol de “Usuarios reflexivos”. Supone abrir las puertas, hacia un contenido disciplinar con derechos propios cuya relevancia se justificaría, principalmente, en la trama del desarrollo económico a largo plazo.

Tal como se describe el documento de la Fundación Sadosky al que refiero, las Ciencias de la Computación suponen ciertos procesos de pensamiento muy particulares, los cuales se caracterizan especialmente por un alto nivel de abstracción. El pensamiento abstracto requiere del desarrollo de habilidades muy especificas como modelar, descomponer, generalizar y clasificar.

Se requiere modelar para poder representar objetos o problemas del mundo real, que permitan hacer foco sobre su dimensión esencial según sea lo que se requiera resolver. La descomposición, supone habilidad para subdividir un problema complejo en partes más pequeñas que permitan abordar una solución general con mayor facilidad. Generalizar y clasificar, son asimismo habilidades necesarias para organizar una solución, reconociendo tanto características comunes como diferencias.

Ahora bien ¿por qué sería tan importante el pensamiento computacional? Porque no parecería ser algo exclusivo de las Ciencias de la Computación. Por lo tanto, su inclusión dentro de la currícula podría ser, no solo prometedora, sino también, necesaria. Tan necesaria como aprender a leer, a escribir y a calcular...

¿Deberían los niños aprender a programar en la escuela? No solo queda abierto el debate. Hay también algunos proyectos en marcha.

Ampliaremos.


Fuentes
Pantoja, A. (1997). ¿Ha muerto LOGO? Una reflexión sobre las posibilidades creativas de LOGO en el futuro de la informática educativa. Cultura y Educación, 6/7, 157-172.

Fundación Sadosky (2013) CC – 2016, Una propuesta para refundar la enseñanza de la
computación en las escuelas Argentinas


Imágenes

Código en Basic: Domino Público

No hay comentarios.: