A la portada

EDUCACION

Reflexiones sobre Qué y Cómo Enseñar Computación

El hombre es el único animal que tropieza
dos veces con la misma piedra, folklore popular.

Al parecer lo único que se aprende de estudiar
historia es que nadie aprende de la historia, folklore erudito.

Todo está altamente interrelacionado,
Ted Nelson, el inventor de Xanadu.

Comenzando con el nombre de nuestro entorno ya tenemos un problema. ¿Es Ciencia de la Computación y/o Ingeniería en Computación? ¿Es el apellido correcto computador, computación, computacional o informática? ¿Dónde calzan los sistemas de información o son otra área? Yo aún no tengo respuestas claras. Tal vez el problema es intrínseco. Como dice el chiste: la Ciencia del Computador (Computer Science) tiene dos problemas: Computador y Ciencia. ¿Han escuchado alguna vez una ciencia de las lavadoras o de otra máquina? ¿Necesitan las matemáticas o la física decir que son una ciencia? En definitiva es un problema de mayoría de edad, de madurez, y por ende, de inseguridad. En todo caso es claro que lo que hacemos tiene raíces tanto de la ingeniería como de la ciencia básica. Esta inmadurez ha tenido impacto en la enseñanza de la computación, la que también está afectada por los problemas educativos generales tanto en ciencia como ingeniería.

Me gustaría comenzar citando a Peter Freeman [FRE97]:

Si comprometemos el núcleo de la computación, corremos el riesgo de perder habilidades básicas de largo plazo. Si fallamos en tomar en cuenta las preocupaciones de los profesionales del área, corremos el riesgo de quedar obsoletos. La clave es alcanzar el balance correcto, pero hay más de una manera de lograrlo.

Es decir, hay que preocuparse tanto de la forma como del contenido. Si se generan buenos profesionales, éstos serán agentes de cambio [GGT97]. Ese debiera ser uno de los objetivos principales de la universidad y creo que ha sido también para mi una motivación personal importante para hacer lo que hago.

La mayoría de lo que aprendemos en nuestra vida sirve poco en ella, principalmente conocimiento técnico. Lo importante es la formación asociada a ese aprendizaje, el desarrollo de capacidades lógicas y analíticas, el poder abstraer y conceptualizar y resolver problemas. El objetivo no es conocimiento per se, es formativo. Es aprender a aprender constantemente. Creo que este proceso se puede hacer mejor, integrando conocimiento y nuevas herramientas en cursos novedosos, donde el alumno entiende mejor la meta final. Los objetivos principales deben ser flexibilidad, adaptabilidad, enfatizar conceptos y facilitar el aprendizaje continuo.

Todas las ciencias han evolucionado dentro de un contexto real, no por sí solas, siendo el origen del cálculo el ejemplo más clásico. Por otra parte, en el pasado hubieron personas que conocían gran parte del conocimiento científico humano. Hoy en día esto es muy difícil, forzando al trabajo en grupo y multidisciplinario. Estos dos hechos debieran ayudar a plantear nuevas formas de enseñar.

A continuación analizo la universidad actual y luego presento dos propuestas relacionados con el qué y el cómo enseñar.

Rediseñando la Universidad

El primer concepto que deberíamos revisar es el de universidad. La universidad tradicional se basa en tres pilares: la docencia, la investigación y la extensión (relación con la sociedad). Un problema ya antiguo, es la utilidad de la investigación básica, de las torres de cristal. Los nuevos tiempos exigen compromisos distintos entre la universidad y la sociedad [DEN97]. Más importante es el impacto de la globalización mundial, las nuevas tecnologías audiovisuales, la Web y bibliotecas digitales, laboratorios virtuales, etc. ¿Debemos aceptar que enseñar es un negocio y que los estudiantes son nuestros clientes? [TSI99]. Posiblemente lo segundo es cierto, pero me cuesta aceptar lo primero. Tsichritzis se basa en los problemas financieros y estructurales de la universidad. En todo el mundo los presupuestos de la universidad pública disminuyen progresivamente. Aunque de muchas formas las universidades son monopolios regionales, en el futuro malas universidades pueden tener problemas debido a educación a distancia desde otros países (o hasta educación directa, por ejemplo en Latinoamérica hay muchos MBA españoles). Ya muchos países de habla inglesa comienzan a notar la expansión de universidades estadounidenses o inglesas. Es tiempo de defender nuestros nichos de mercado y una forma es re-usar el contenido que producen [TSI99]. Con respecto a la temática estructural, una universidad produce, programa y distribuye contenido, pero no tiene porque producir todo el contenido, programarlo o distribuirlo. Puede importar y exportar tanto contenido, como su programación y distribución, aprovechando las nuevas tecnologías ya mencionadas, y posiblemente especializándose en algunos contenidos. En particular el uso de la Web para educación a distancia debe redefinir cual es el verdadero rol del profesor.

Diseñando el Contenido

Necesitamos nuevos profesionales. Por ejemplo, ingenieros telemáticos, que reúnen el mundo de las telecomunicaciones con el de la informática. Algo así como un híbrido entre un ingeniero electrónico y de computación. Hay que evitar la especialización y destacar aspectos humanos, como ontología del lenguaje, aspectos humanos del desarrollo de software, ética profesional, comunicación oral y escrita, etc. Para diseñar un contenido coherente necesitamos un modelo. En la Figura 1 se muestran las relaciones entre los tres elementos involucrados: personas, procesos y tecnología [IEEE97]. También mostramos los mundos que unen estos elementos y que puede ser considerada como una visión dual: mercado, industria y universidad. La ciencia de la computación está centrada en la tecnología, mientras que podríamos decir que el área de los sistemas de información está centrada en los procesos.

Figura 1: Modelo para Diseño del Contenido.

Una deficiencia de nuestros curricula es que en general se ven las relaciones desde un punto de vista (por ejemplo, como afecta la tecnología a las personas) y no el inverso. Por otra parte, no es posible cubrir todas las temáticas en un tiempo limitado y una solución posible es diseñar nuevas carreras. Por ejemplo, un ingeniero de la información que haría el puente entre el proceso de negocios y las personas que lo realizan y la tecnología asociada [BYN99]. Temas importantes que destacan en esta propuesta son, omitiendo los temas tecnológicos y de procesos:

Este modelo aunque simple, sirve para descubrir las deficiencias y por ende mejorar los programas de estudio existentes. Por ejemplo, la falta de temas como el modelamiento de sistemas [IEEE97].

Integrando Temas e Ideas

En las propuestas de ACM e IEEE para curricula en computación o sistemas de información se hace demasiado énfasis en los contenidos y menos en el como enseñar [ACM91,UNE94,ACM97]. Sin embargo creo que tan o más importante que el contenido es el como enseñar, en base a tres motivaciones principales. La primera es suavizar el paso desde la educación secundaria a la universitaria, donde el alumno pasa de un sistema de educación controlado a uno más libre y con más responsabilidad propia. La segunda es la innovación en la forma de enseñanza, que no ha cambiado en siglos. La tercera es la necesidad de integración del contenido, para aumentar la motivación. Estas tres motivaciones están relacionadas, como veremos a continuación, y nuestra propuesta se centra en la última de ellas, con elementos de las dos primeras.

Con los años uno va perdiendo la capacidad de manejar muchas tareas al mismo tiempo. Hay varias razones que no tienen que ver con la edad. Primero, al aumentar el número de tareas, también aumenta el tiempo que invertimos en cambiar de una tarea a otra (lo que haciendo una analogía con un computador, es el tiempo de cambio de contexto) y segundo, aunque la mayoría de los cambios de contexto son planificados, muchas veces son debidos a interrupciones. Por supuesto, también hay razones externas o estados de ánimo transitorios, que no son controlables. En nuestro desarrollo personal, hay etapas claras en las que aumentamos el número de cambios de contexto y no siempre estamos preparados para ello. Por ejemplo, cuando pasamos del colegio a la universidad y de la universidad al trabajo. El primero es crítico, porque también es una inserción en un ambiente menos controlado y que depende más de las motivaciones y responsabilidades que uno mismo define. Muchos estudiantes universitarios de primer año fracasan porque no se pueden adaptar al nuevo sistema, en especial debido al aumento de cambios de contexto que no pueden controlar. Exámenes, tareas y compromisos siguen uno tras otro sin tener tiempo a planificarlos adecuadamente, pensando repetidamente si habrá tiempo para hacerlo todo. Un resultado parcial del sobretiempo en cambios de contexto es que actualmente los estudiantes faltan mucho más a clases y tratan de aprobar una materia usando la ley del mínimo esfuerzo. Una acción concreta es disminuir el número de cambios de contexto. Esto se puede lograr enseñando menos materias por semestre pero con mayor profundidad. Adicionalmente, no hay que exagerar en la cantidad y tipo de evaluaciones. Existe la creencia errada que los alumnos que más trabajan son los más inteligentes, pero sólo significa que son los más fuertes física y emocionalmente. Estos cambios permitirían una mejor planificación del tiempo disponible y posiblemente una mayor participación de los estudiantes.

Por otro lado, si en la mayoría de los casos, cuando ingresamos en el mundo laboral, debemos trabajar en grupo, ¿por qué la educación sigue siendo principalmente individual? Además de ser casi siempre unidireccional, siendo el profesor el que guía la clase y hace las preguntas. Un argumento importante es que es más fácil evaluar a una persona por su trabajo individual que por su participación en un grupo. Sin embargo, aunque sea más fácil, creo firmemente que debiera motivarse más el trabajo en grupo, donde el profesor juega más bien un rol de comunicador y moderador en base a un contenido ya estudiado previamente por el alumno, permitiendo la comunicación bidireccional entre todas las partes. Esto es lo que se llama educación cooperativa.

Finalmente, tenemos la falta de motivación, por motivos variados y en parte producto de los tiempos actuales. Esta falta es parcialmente producto de que el estudiante no sabe porque está estudiando una materia dada. Esto ha ocurrido por la especialización del conocimiento convirtiendo cada materia en un compartimento estanco, inclusive dentro del mismo tema. Una solución posible a este problema es aumentar la integración de las materias usando retroalimentación de temas entre ellas, rescatando las interacciones causales o funcionales que se hayan perdido. Esto se puedo lograr a través de proyectos intercursos, fomentando a su vez el trabajo en grupo y multidisciplinario. Esto puede ser un primer paso hacia una educación cooperativa.

El contenido del curso debe estar basado en las necesidades reales de las carreras de ingeniería. En base a los contenidos de los cursos de cada carrera se deben determinar que temas, herramientas y ejemplos típicos es necesario que aprenda un alumno. Esto debiera extenderse a todos los cursos básicos de matemáticas, física, computación y química.

Es necesario un conjunto afiatado de tres o cuatro profesores de alto nivel (posiblemente elegidos a través de un concurso y remunerados en forma especial) que permitan una continuidad en el curso, habiendo previamente discutido y trabajado sobre el material de apoyo. Este último debe incluir herramientas como Web, tutores disponibles vía correo electrónico o talk a horas predeterminadas, software de matemáticas simbólicas (por ejemplo, Maple), etc.; incluyendo apoyos tradicionales como ayudantías, laboratorios y apuntes. Además se debe realizar un estudio de experiencias similares si ellas existen, sus resultados, herramientas disponibles, infraestructura necesaria, etc.

El esquema de clases debería considerar cátedras y ayudantías en forma alternada (por ejemplo mañanas y tardes), incluyendo bastante tiempo de trabajo personal opcional. En forma permanente deberían tratarse dos temas en paralelo (o tres en forma excepcional): más temas sería volver al sistema antiguo, menos temas significaría una carga excesiva en un sólo profesor. Por ejemplo podrían haber 16 horas de cátedra por mes distribuidas en dos semanas. A esto deberían sumarse 10 horas de ayudantías y unas 4 horas de laboratorio (física, computación). La evaluación se haría en forma continuada y en base a controles cortos (de a lo más una hora).

Para implementar este curso son necesarios varios meses de trabajo intensivo con apoyo de personal calificado para el diseño de los distintos módulos temáticos, la preparación del material, etc. Además, sería conveniente tener primero una sección experimental para evaluar los resultados y compararlos con el sistema actual. Una variante intermedia podría ser una primera mitad del año integrado y luego una separación de materias si se quiere tener un régimen anual. Sin embargo esto es menos transparente, implica usar métodos mixtos de evaluación y no permite que buenos alumnos puedan avanzar más rápido. Otra forma de experimentar el material del curso (por ejemplo, el comienzo del material) es haciendo una escuela de verano de un mes con alumnos seleccionados.

A continuación se enumeran las ventajas principales en orden aproximado de importancia:

Las desventajas principales son: se necesita coordinar fuertemente a un grupo de profesores, trabajar con anterioridad en el material del curso, y realizar clases en forma intensiva en períodos cortos. Por esta última razón estimo que es mejor hacerlo en sólo un semestre, pues un año completo desgasta mucho al equipo docente.

Inducción seguida de derivación de algoritmos para ordenar números

Conjuntos seguidos de estructuras de datos para almacenarlos

Secuencias seguidas de recurrencias

Funciones seguidas de su graficación computacional y el uso de planillas de cálculo

Límites y derivadas seguidas de cinemática simple

Integrales seguidas de trabajo y energía con apoyo de software de matemática simbólica

Vectores seguidos de cinemática en dos y tres dimensiones

Matrices y resolución de ecuaciones seguidos de su resolución numérica vía computador

Tabla 1: Ejemplos de Integración de Materias.

Experiencias similares existen combinando matemáticas discretas y computación, para carreras de computación [TBCG92]. Estos ejemplos no incluyen física y no son dirigidos a un plan básico común de dos años para ingeniería. Ejemplos de integración de contenido se presentan en la Tabla 1. Temas que son más generales o previos a temas integrados permiten tener material para paralelizar la cobertura de ellos. Por ejemplo uso del computador (sistema operativo, procesador de texto), herramientas básicas de programación, etc.

Comentario Final

Aunque mis propuestas son preliminares, creo que son un primer paso para diseñar mejores curricula, más completos y coherentes, y enseñarlos de una manera distinta, motivando al estudiante y explicándole claramente porque está aprendiendo cada tema y las interrelaciones con su entorno. En resumen, integrando todo, volviendo de cierta manera al renacimiento, al pensamiento enciclopédico e ilustrado. También queda claro que hay que incentivar el pensamiento crítico y enfatizar en los aspectos de diseño.

En pocas palabras, mi mensaje es que no olvidemos las relaciones a todo nivel y de todo tipo que existen, que revisemos siempre las hipótesis que hacemos y que hay que rediseñar de verdad y no sólo hacer reingeniería. Tanto en la vida personal como en la vida profesional, aceptamos tantas cosas como ciertas, como hipótesis fundamentales, las cuales nunca cuestionamos. Del mismo modo, las ideas expresadas aquí deben ser tomadas sólo como un punto de vista más a ser considerado. Sin embargo, espero que estas líneas apelen a vuestro sentido común, ese sentido tan importante y a la vez tan escaso, y de paso crear un poco de conciencia en los múltiples problemas de nuestra área y de nuestro quehacer cotidiano.

Agradecimientos

Agradezco los comentarios y motivaciones de Omar Alonso, Juan Alvarez, Karin Becker, Tania Bedrax-Waiss, Carlos Castillo, Helena Fern ndez, Terry Jones, Miguel Nussbaum, Greg Rawlins y Jorge Vidart.


Referencias Bibliográficas

[ACM91] ACM-IEEE Curricula Recommendations for Computer Science, volumen I, http://www.acm.org/education, 1991.

[ACM91] ACM-IEEE Curricula Recommendations for Computer Science, volumen I, http://www.acm.org/education, 1991.

[ACM97] ACM/AIS/AITP Curriculum for Undegraduate Degree Programs in Information Systems, http://www.acm.org/education, 1997.

[BYN99] Ricardo Baeza-Yates, Miguel Nussbaum, The Missing Link: The Information Architect, Technical Report, 1999.

[DEN97] Peter J. Denning, A New Social Contract for Research, Comm. of ACM 40(2), Febrero 1997, pp. 132-134.

[FRE97] Peter Freeman, Elements of Effective Computation, IEEE Computer, Noviembre, 1997.

[GGT97] David Garlan, David P. Gluch y James E. Tomayko, Agents of Change: Educating Software Engineering Leaders, IEEE Computer 30(11), Noviembre 1997, pp. 59-65.

[IEEE97] IEEE Special Issue, Status of Software Engineering Education and Training, IEEE Software, Nov/Dic 1997.

[TSI99] Dennis Tsichritzis, Reengineering the University, Comm. of the ACM 42(6), Junio 1999, pp. 91-100.

[TBCG92] A. Tucker, W.J. Bradley, R.D. Cupper, A. Bernet y G. Scragg, Fundamentals of Computing I, McGraw-Hill, 1994.

[UNE94] UNESCO-IFIP, A Modular Curriculum in Computer Science, UNESCO Publications, 1994.

Punteros Relacionados

http://www.dcc.uchile.cl/~rbaeza/manifest/educ.html

A la página principal del Debate.