lunes, 10 de noviembre de 2014

Educación tecnológica y la enseñanza de lenguajes de programación

Por Cesar Linietsky

Una frase muy repetida por informáticos en los años 80 decía: “quién en el año 2000 no sepa algún lenguaje de programación será un analfabeto”. Llegó el año 2000 y la mayoría de la población del mundo no sabía ningún lenguaje de programación. La profecía informática no se cumplió por suerte. Probablemente la explicación de este fracaso se pueda explicar mejor desde la educación  tecnológica. Pero, al parecer, se vuelve a plantear otra vez la importancia de la enseñanza de la programación. El programa program.ar, con amplio apoyo oficial, viene a sostener esta necesidad, con un uso de recursos económicos importantes. Si uno visita la página, observará que no se explica en qué lugar del curriculum debe aparecer esta práctica, en qué materia o en qué tiempo. Es cierto que la mayoría de los alumnos dispone de recursos para hacerlo.
En primer lugar quiero aclarar que no me opongo a la enseñanza de la programación en el contexto de la educación tecnológica. En la práctica lo hice, como docente en la Escuela Técnica ORT, desde 1988 hasta 2012 (cuando me jubilé) con adolescentes, pasando por lenguajes como el Pascal, el Basic y lenguajes específicos de programación de dispositivos como PLCs, Lego, y últimamente con un lenguaje de programación simulado el Robomind. Esto, siempre en el contexto de la enseñanza de control automático.
Como profesional, trabajé como programador en lenguaje “autolisp”, una variante del lenguaje Lisp, que utiliza el Autocad, y también el lenguajes de gestión de bases de datos como. Dbase, Clipper, Foxpro, etc. Es decir, es un tema más o menos conocido para mí, y coincido con las publicidades en que siempre me pareció divertido hacerlo. También me parece divertido jugar al truco, pero esto no puede ser un argumento para incluirlo en la escuela, aunque, como cualquiera que lo juegue, sabe que promueve el desarrollo de muchas habilidades.


¿Cuál es el lugar de la programación en la Educación Tecnológica?
Los NAP de Educación Tecnológica, proponen tres ejes de trabajo: los procesos, los medios técnicos y un tercer eje con una perspectiva sociotécnica y evolutiva del hacer tecnológico. Cuando se trata de procesos sobre materiales, los medios técnicos pueden ser herramientas, con sus procedimientos de uso y los conocimientos requeridos por las personas que los usan, o pueden ser máquinas, con sus procedimientos de uso, los conocimientos requeridos, y en relación con los procedimientos, se pone énfasis en las formas en  que la energía mecánica es transportada y transformada en las máquinas para alcanzar la ejecución de los movimientos requeridos por las herramientas que las máquinas contienen y que generalmente reproducen gestos técnicos que en instancias anteriores eran ejecutados por personas. En ese contexto se suele trabajar en el diseño de máquinas a partir del  conocimiento de las posibilidades que brindan los mecanismos. Para esto se suelen utilizar recursos como Mecanno, Lego, Rasti, etc. Los mecanismos también aparecen en relación con las transformaciones de la energía mecánica. También en relación con el trabajo con información suelen utilizarse mecanismos, como engranajes  en propuesta de diseño de diferentes instrumentos de medición.
Cuando se trata de procesos vinculados a la información, los insumos suelen ser datos. Las operaciones que se realizan sobre ellos pueden ser matemáticas, lógicas, se pueden almacenar, y se puede recuperar información, etc. Durante mucho tiempo se recurrió a representaciones de estos procesos, mediante diagramas de flujo u otras representaciones, como estructugramas, o mediante el uso de pseudocódigos, lenguajes que describían las secuencias de operaciones de los procesos que se realizaban sobre los datos hasta obtener el resultado deseado, es decir alguna información.
Los lenguajes de programación y las computadoras eran los soportes de los medios técnicos, saber programar era una condición para diseñar los procesos que se deseaba que las computadoras realizaran como máquinas virtuales programables. La programación supone ciertas formas de pensamiento. Los lenguajes suelen describirse como de alto o bajo nivel, los de alto nivel son los parecidos a los lenguajes humanos, y los de bajo nivel, parecidos a lo que sucede en las máquinas. Desde la escritura del programa, hasta su ejecución en las computadoras, hay un complejísimo proceso, de base electrónica y matemática, los distintos niveles de interpretación del código escrito van requiriendo conocimientos diferentes, con  especialistas para cada uno de ellos. Es decir el sistema de actividad en el que incluímos al programador, requiere de un sistema de producción de lenguajes de programación, que son productos que se venden, softwares diferentes. Más el complejísimo sistema de producción de computadoras, ni hablar de los sistemas de distribución y comercialización, sumados a los complejísimos sistemas vinculados a Internet.
Una capacidad interesante de los lenguajes de programación, es que incluyen una capacidad de seguir desarrollándose, es decir, un programador, puede “escribir” o definir, funciones o procedimientos, mejorando, o automatizando algunos procesos específicos, desarrollados por los mismos programadores, en lenguajes de alto nivel, es decir, el programador puede “tecnificar” su trabajo..

Comprensión
El concepto de educación tecnológica de “tecnificación”, es central para la comprensión de estos fenómenos, que son los que hacen que cualquier usuario, pueda utilizar una computadora sin conocimientos previos, o con muy pocos. Por ejemplo, muchísimas de las actividades del ANSES para jubilados son ofrecidas en la página web del ANSES. Es decir, aquel pronóstico de los años 80 ha sido falso, y se ha falseado muy rápidamente. Es decir, es casi admitida una gran capacidad de acceso a internet, que siempre requiere una computadora.
Así como en los procesos de producción la explicación se fortalece con el concepto de tecnificación, que explica, como los medios técnicos van integrando, en las sucesivas modificaciones, gestos y acciones humanas que instancias anteriores las hacían las  personas, en los procesos sobre la información sucede lo mismo, las tecnificaciones sucesivas, han llevado a las grandes computadoras, instaladas en edificios propiedades de instituciones o grandes empresas, se han ido tecnificando, haciendo su uso cada vez más simple, sus tamaños cada vez más pequeños y sus velocidades cada vez mayores. 

En Educación Tecnológica creemos que comprender esta complejidad supone comprender estos procesos de cambio, tanto en los procesos de producción, donde las tecnologías de la información han incidido de la mano del control automático y la robótica, en un  proceso de búsqueda de eficiencia y de reemplazo del trabajo humano. El eje tres de los NAP propone esta perspectiva de continuidades y cambio. La propuesta de la Educación Tecnológica apunta a una comprensión del mundo artificial, que requiere del conocimiento de los dispositivos y del conocimiento de cómo las transformaciones de los dispositivos van modificando los sistemas de actividad humana en el mundo del trabajo y en la vida cotidiana. La propuesta supone un recorrido desde las primeras actividades con herramientas, pasando por el mundo de las máquinas y el universo de las tecnologías de la información.

Pretender que el uso de programas de altísimo nivel (esto supone simplicidad), como los propuestos en la página program.ar, útiles para comprender algunas operaciones de los procesos sobre la información, posibilitan la comprensión de un sistema técnico en el que desde un teclado o una pantalla de un teléfono celular se puede acceder a un sistema de conmutación internacional, donde automáticamente se controlan centrales de comunicación en diferentes países, kilómetros de fibras ópticas y satélites,  para que un micrófono y un parlante de un aparato en un país, se comunique con otros de otro país, es falso.

Convertir un recurso didáctico, útil para la enseñanza de un aspecto de determinados procesos en educación tecnológica, en algo central y definitivo, que requiere de grandes inversiones e instituciones y proyectos de alcance nacional, y publicidad en la que participen importantísimos deportistas, locutores, famosísimos divulgadores científicos, etc. que ignoran y desconocen las propuestas de la educación tecnológica  obliga a preguntarse qué hay detrás de eso. La respuesta se relaciona con la posibilidad de crear un mercado para que los productores de herramientas informáticas puedan introducir sus productos en el sistema educativo. Esto no creo que esté mal, se están produciendo en el país interesantísimos recursos  para la enseñanza de la educación tecnológica, que incluyen dispositivos de control, estructuras, mecanismos y robots. Que el árbol de la programación no deje ver el bosque de la Educación Tecnológica, y que un negocio postergue el desarrollo de una propuesta educativa en desarrollo es lo grave. En el noticiero de canal siete, oficial, se proyecta la publicidad de la centralidad de la enseñanza de la  programación (ver program.ar), pero los procesos colectivos de definición de los contenidos de la Educación Tecnológica, que confluyeron en los NAP, no son noticia. 

El debate de “¿por qué todos deben aprender a programar?”, que es el titular del video publicitario de program.ar, supone la voluntad de vender la enseñanza de la programación. Recurrir a recomendaciones de Ginóbili, o Pergolini, sólo pueden concebirse como estrategias publicitarias no pedagógicas. En un documento presentado en la página para ser discutido: http://program.ar/wp-content/uploads/2014/08/Materialpreparatorio.pdf, se menciona al program.ar como una iniciativa del estado nacional. Se menciona la consulta a expertos, luego de fundamentar su importancia, y de enumerar las  ventajas de las ciencias de la computación, curiosamente se propone hacerlo como área extracurricular. En general se usan argumentos similares a los utilizados en los 90 para proponer un área escolar informática. También se recomienda hacerlo desde los primeros años. Se omite la Educación Tecnológica en todo el documento. Se continua insistiendo con una materia específica informática

Uno de los problemas con los que tropieza la Educación Tecnológica, es la confusión entre tecnología e informática, que esta campaña publicitaria vuelve a instalar. Hay atrás de este movimiento claros intereses económicos vinculados con venta de productos, cursos, capacitaciones, etc. en el sistema educativo. Lamentablemente no existen tantos intereses económicos que promuevan la educación tecnológica. 

2 comentarios:

  1. Plantear la discusión como Educación Tecnológica vs Informática, sería un error. El principal problema con que tropieza la formación en tecnologías -todas- desde la escuela en general es que su conocimiento no es considerado por parte de gran parte de quienes toman las decisiones con la misma jerarquía que el de las áreas tradicionales (Sociales, Exactas, Comunicación, Expresión, etc) y no consigue ampliar su espacio. Insisto. No es ET vs Informática, es ET +Informática.
    En mi opinión, no enfocaría entonces en el desagrado que producen las propuestas de esta "programación ligth", sino que reclamaría ampliando la apuesta y diciendo que esto viene a confirmar la necesidad una nueva Área, la tecnológica, la que debería por fin tener un amplio espacio en las escuelas. Sumemos más conocimiento tecnológico en las escuelas; no nos conformemos ni dividamos el poco lugar que se le da.
    ¿Y porqué no incluir todo en ET? Dado la amplitud del abordaje de las tecnologías y su impacto en la sociedad de ET, sería difícil tratar con la necesaria especificidad los temas estrictamente asociados a la Informática. No es factible y la presencia cotidiana de la tecnología digital así lo justifica. Es por eso que esa Área Tecnológica a la que hacía referencia debería estar formada por Edu Tecnológica e Informática. Las dos. Sumando, ampliando, sin dividir.
    Saludos

    ResponderEliminar
  2. Estimado César, me gustaría compartir algunas ideas acerca de su artículo. Antes que nada me presento: me llamo Fernando Schapachnik, soy profesor de Cs de la Computación en la UBA y miembro de la Iniciativa Program.AR por parte de la Fundación Sadosky del Ministerio de Ciencia.

    Me gustaría comenzar por coincidir con el Prof. Leithner en que no se trata de debatir una dicotomía sino más bien un complemento a los saberes que hoy en día aborda la ET.

    En el mundo actual el contacto con la informática es inevitable, casi omnipresente. No podemos comprender fenómenos como que la computadora (o el celular, que también es una computadora) "se cuelga", que Google devuelve resultados de búsquedas en fracciones de segundo, cómo se calcula el camino que nos muestra el GPS, o qué significa realmente "hackear" el voto electrónico si no abordamos su especifidad. Esta especifidad se corresponde con una rama del conocimiento humano específica: la programación, que a su vez forma parte de las Ciencias de la Computación.

    Así como el aprendizaje profundo y significativo de la Química y de la Física requiere de un abordaje experimental, de "manos en la masa", lo mismo sucede con la programación: para entender hay que aprender a programar. De eso se trata la propuesta de Program.AR

    Lo invitamos a tomar contacto con nosotros para poder seguir profundizando este interesante intercambio a través de info arroba programar.gob.ar.

    Un cordial saludo,
    Fernando

    ResponderEliminar