La ciencia de la computación no es solo para universitarios

Causa más tristeza que sorpresa que la Ciencia de la Computación, que ha sido una disciplina sólida por más de medio siglo, haya encontrado tan poco espacio dentro de los currículos escolares desde Kindergarten hasta grado 11°. Resultado de lo anterior es que a medida que los estudiantes avanzan en su proceso educativo por los grados de primaria, inocentemente equiparan la Ciencia de la Computación al uso de computadores o a aprender a programarlos. Como dijo Edsger Dijkstra, científico de la computación holandés, “la Ciencia de la Computación tiene tanto que ver con los computadores como la astronomía con los telescopios”.

La Ciencia de la Computación es el estudio de los fundamentos teóricos de la información y de la computación. Dado lo expuestos que están los estudiantes con la ciencia del mundo físico tanto vivo como inerte, no hace ningún sentido ignorar completamente la disciplina que gobierna la mayor parte de la tecnología (TIC) y la naturaleza de la “forma” en la que, en nuestras vidas saturadas de tecnología, intercambiamos diariamente información.

Además de una comprensión básica de la definición esencial de lo que es la Ciencia de la Computación, los estudiantes pueden y deben exponerse a algunos de los elementos fundamentales de esta, los cuales se relacionan estrechamente  con los objetivos generales del aprendizaje para el Siglo XXI. Estos elementos incluyen pensamiento algorítmico, lógica Boleana, abstracción funcional, así como organización y manejo de datos. La solución de problemas, el pensamiento crítico y la organización y manejo de la información pueden reforzarse mediante la incursión en estos aspectos de la Ciencia de la Computación. Lo maravilloso es que la mayoría de los conceptos de esta ciencia se refuerzan trabajando con las matemáticas y algunos de ellos lo hacen, con  las matemáticas de nivel escolar.

La ventaja que tiene esta exposición temprana a los elementos fundamentales de la Ciencia de la Computación es que dará a los estudiantes de Educación Media (9°-12°), que opten por tomar cursos en programación, bases más sólidas de pensamiento algorítmico y de estructuras de datos, elementos básicos de la mecánica de la programación de computadores. Adicionalmente, ofrecerá a los estudiantes mayor claridad de su propio interés en este campo, apoyado en una mejor compresión de la Ciencia misma.

A continuación, algunas sugerencias para incorporar al currículo estos conceptos.

 

Pensamiento algorítmico

De manera sencilla, un algoritmo consiste en una serie de pasos bien definidos, necesarios para realizar una tarea. Esto es esencial para comprender, cómo y por qué funcionan, de la manera en que lo hacen, los sistemas de las tecnologías de la información.

Descomponer detalladamente una tarea constituye un aspecto importante del pensamiento algorítmico. En mis talleres de robótica, por lo general dedico una o dos sesiones al pensamiento algorítmico antes de exponer a los estudiantes a la programación. Un ejercicio divertido incluye escribir, en lenguaje sencillo, un conjunto detallado de pasos con el que cada uno de ellos guíe a otro compañero, que tiene los ojos vendados, para que realice una tarea específica. Con frecuencia, en este ejercicio, propongo ideas de manejo de excepciones con las que se deben realizar acciones que involucren iteraciones (ciclos repetitivos) y condicionales. Esta manera de escribir “seudocódigo” expone a los estudiantes a una habilidad especial, empleada con frecuencia por los programadores, cuando inician un nuevo programa que les demanda pensar con un algoritmo antes de comenzar a escribir el código de este.

Afortunadamente tenemos acceso a entornos de programación que facilitan a los docentes trabajar estas ideas en el aula. Alice, por ejemplo, es una herramienta excelente para apoyar el desarrollo de pensamiento algorítmico, así como lo es Scratch del Laboratorio de Medios de MIT. La retroalimentación visual que obtienen los estudiantes tanto de Alice como de Scratch, les permite relacionar el programa que realizan con la acción que ven en pantalla y esto les ayuda a refinarlo, parte esencial tanto de la solución de problemas como de la programación. Anteriormente, entornos como Logo ayudaban también a alcanzar estas metas y adicionalmente, posibilitaban a los niños experimentar fácilmente con ideas de: a) repetición, b) funciones y subrutinas, c) pasar y recibir parámetros e inclusive, d) recursión (recurrencia).

El pensamiento algorítmico ayuda a los estudiantes a pasar del problema al programa. Esto implica estar en capacidad de definir y enunciar con claridad un problema; descomponerlo en sub problemas más pequeños y manejables; y, describir una solución en un conjunto de pasos bien definido. Esta es una habilidad importante que los estudiantes pueden transferir a otras asignaturas cuando enfrenten en estas situaciones en las que deban solucionar problemas.

 

Lógica boleana para pensamiento crítico

La lógica Boleana o Álgebra Boleana, es una forma de lógica simbólica que constituye la base de la aritmética de los computadores. El trabajo pionero de George Boole en este campo se publicó en el libro “Una investigación sobre las leyes del pensamiento”. En él describe cómo la lógica del pensamiento humano puede reducirse a unas pocas “operaciones” lógicas, sencillas y generales, muy similares a las operaciones matemáticas básicas.

A los estudiantes se les puede iniciar en la idea de lógica en asignaturas como Lenguaje o Matemáticas. Premisas, frases condicionales, negaciones y hacer inferencias (sacar conclusiones) de un conjunto de frases de uso diario, pueden usarse como introducción “suave” a la idea de lógica, aún antes de trabajar con símbolos y operaciones. Ejemplo de lo anterior es:

Si Alemania le gana a Argentina, entonces Alemania gana el mundial Sudáfrica 2010.
Si Lionel Messi no juega, entonces Alemania vencerá a Argentina.
Messi no juega.
¿Cuál es la conclusión?

La belleza de la lógica Boleana radica en la simplicidad de sus operaciones: y, o y no. Cuando me enfrenté por primera vez a las ideas de la lógica simbólica, recuerdo que pensé que esta era una forma poderosamente útil para que personas de cualquier edad aprendieran a pensar y a argumentar lógicamente. También, a encontrar errores no solo en argumentos de tipo político sino en los del día a día con padres, hermanos, amigos y pares. Esta podría ser, ciertamente, una forma de enseñar a los niños a pensar crítica y analíticamente.

 

Estructuras de datos y bases de datos

Las Estructuras de datos, van de la mano con los algoritmos como aspectos esenciales de la programación. Para ponerlo fácil, los datos son la “materia” que se manipula o trabaja en un programa, mediante operaciones y expresiones.

Para posibilitar este proceso de manipulación, los científicos de la computación organizan los datos en estructuras conocidas como arreglos (matrices), listas, árboles, tablas, pilas, colas y “montículos” (heaps). Del mismo modo, una Base de Datos, es una colección organizada de datos que usualmente se guarda como registros en tablas.

Afortunadamente tenemos acceso a software de Hojas de Cálculo como el Excel de Microsoft y a administradores de Bases de Datos, tales como Access de Microsoft, que se pueden usar para introducir a los estudiantes en los fundamentos de estructuras de datos para su organización y administración. De los programas antes mencionados, también existen alternativas gratuitas o de bajo costo.

Las Hojas de Cálculo permiten enseñar a los estudiantes cómo organizar datos de maneras simples e intuitivas para poderlos acceder y recuperar con facilidad. Debe estimularse en los niños el uso frecuente de Hojas de Cálculo para una diversidad de tareas de organización de datos. Por ejemplo, los estudiantes pueden listar y organizar los sitios Web que visitan tanto para llevar a cabo trabajos del colegio como para buscar información sobre un tema determinado. Solicite a los estudiantes añadir en otra columna de la Hoja de Cálculo palabras clave o etiquetas. Pueden organizar en distintas Hojas de Cálculo los datos de los sitios Web para las diferentes unidades de una asignatura, de manera que esa organización ayude a diferenciar los datos que no necesariamente deben estar juntos, pero ayudan a conservar en el mismo sitio materiales relacionados.

Las Hojas de Cálculo pueden usarse también para almacenar y organizar datos, para planear una salida de campo o un evento, o para recolectar datos para proyectos de ciencias naturales o de ciencias sociales. Las Hojas de Cálculo de Google, posibilitan el que varios estudiantes trabajen simultáneamente en la misma Hoja de Cálculo.

Los docentes pueden usar también las Hojas de Cálculo para iniciar a los estudiantes en principios de ordenar de manera ascendente o descendente y para clasificar datos. Preguntas como las que se encuentran a continuación pondrán a los estudiantes a pensar sobre las bases de la organización de datos de maneras que faciliten su manipulación: ¿cuándo es necesario ordenar o clasificar datos y cuándo los datos desordenados son igualmente útiles? ¿Ayudará la clasificación a archivar y a recuperar los datos en el futuro? Si esto es así ¿cómo debo ordenar los datos?

Los estudiantes de educación media (grados 10° y 11° – 15 a 17 años) que han trabajado con Hojas de Cálculo, pueden avanzar y trabajar con Bases de Datos usando herramientas de administración de estas, tales como Access de Microsoft. Durante el proceso del diseño de Bases de Datos, los estudiantes aprenden a analizar la información con la que están trabajando y a identificar las dimensiones subyacentes del contenido, para organizarlo de manera que tenga significado y permita buscarlo y recuperarlo.

Ellos aprenden a identificar las relaciones entre diferentes tipos de datos. Mediante el simple acto de consultar “quering” en Bases de Datos, los estudiantes pueden hacer aflorar sus conocimientos de lógica Boleana y de constructos como: Y, O y NO, al tiempo que se forman una idea de cómo funciona el proceso de búsqueda en Internet.

Los docentes pueden solicitar a sus estudiantes que participen en proyectos sencillos con objetivos claramente definidos. Una Base de Datos en la biblioteca, que permita recuperar por género libros infantiles, es uno de los ejemplos. Este tipo de proyecto demandará de los estudiantes analizar la naturaleza de los elementos de los datos que se van a organizar, diseñar la Base de Datos, alimentar las tablas con los datos y, finalmente, formular y realizar consultas sencillas. El diseño de Bases de Datos, también ayuda a los estudiantes a desarrollar habilidades de análisis, pensamiento crítico y solución de problemas.

Ahora que todos batallamos con la sobreabundancia de datos e información, estar en capacidad de clasificarlos y organizarlos, no solo para que hagan sentido sino para accederlos de manera intuitiva y poder recuperarlos, ciertamente es una competencia que los niños de esta Era de la Información deben desarrollar en las Instituciones Educativas, desde edad temprana.

Las tres competencias y conceptos arriba descritos, pensamiento algorítmico, lógica Boleana y estructuras de datos, pueden integrarse fácilmente en los currículos de Matemáticas, Lenguaje, Sociales, Ciencias Naturales e Informática/Sistemas de grados de Básica Primaria y Secundaria; esto permitiría exponer a los estudiantes a unas pocas ideas, pero básicas, de la Ciencias de la Computación.

 

eduteka