TITULO: Implementación de actividades para enseñar a los estudiantes de primer semestre de preparatoria cómo programar utilizando el lenguaje de ALICE AUTORAS EDITH AÍDA LOZANO GUZMÁN VERONICA DEL VIVAR PLASENCIA E-MAIL [email protected] CAMPUS GUADALAJARA [email protected] GUADALAJARA TEMA: TECNOLOGÍAS COMO APOYO AL APRENDIZAJE DE LAS DISCIPLINAS Contexto La implementación del programa Alice se realizó en el nivel de enseñanza media – primer semestre durante el periodo Agosto – Diciembre 2008, en él participaron todos los alumnos de los programas bilingüe y bicultural. Planteamiento El motivo para que se introdujera este programa dentro de los planes de estudio fue que los alumnos de nivel Preparatoria, dentro de la comunidad del ITESM Campus Guadalajara, mostraban cada vez menos interés en estudiar las carreras de sistemas computacionales, siendo esta área la de más índice de empleos en los últimos años. Una de las razones clásicas es que los alumnos no están dispuestos a sufrir con las matemáticas y los razonamientos, mientras otras carreras que también son atractivas, muestran más facilidad y trabajos aceptables. Esto llegó a preocupar a todos dentro de la comunidad del Tecnológico de Monterrey, Campus Guadalajara, de manera que se empezó a trabajar desde Abril de 2008, de forma coordinada con personal de las carreras de Ingeniería, en la modificación del programa de la materia de Introducción a las Tecnologías de Información. La intención era ver lo más relevante del programa académico incluyendo un período parcial completo que permitiera mostrar otro panorama del razonamiento a los estudiantes. Es decir, se necesitaba mostrar a todos los estudiantes de primer semestre (alrededor de 400, considerando Campus Guadalajara y prepa Tec Santa Anita) una nueva forma de ver el razonamiento. Después de una amplia revisión de opciones con personas de las carreras de Ingeniería en Sistemas y de Ingeniería en Mecatrónica, se decidió por el programa ALICE, un programa con las características para introducir a los alumnos en la lógica computacional. Todas las maestras de la coordinación más otros 3 maestros interesados tomaron un curso intensivo de 24 horas en el mes de Julio. Este fue impartido por el maestro Sergio Hernández, quien cuenta con amplia experiencia en el tema, pues desde hace tiempo ha enseñado en la materia de Introducción a la programación este programa ALICE. Después de haber tomado el curso, se dio a la tarea de reestructurar la materia y planear de tal manera que todo el tiempo después del 2º. Parcial se vería lo relacionado con el Razonamiento lógico. El período se dividió en 2 módulos: 1er módulo: Duración: 10 días Contenido: Introducción a la programación • • • Teoría sobre la resolución de problemas con enfoque hacia los algoritmos Práctica de algoritmos para la resolución de problemas comunes, como por ejemplo cambiar una llanta ponchada, tomar un asiento en un teatro, dirigir a un robot para tomar un objeto de una posición en un plano coordenado y conducirlo a otra posición esquivando barreras. Introducción al uso de estructuras de programación como : ♦ Secuenciales ♦ Condicionales ♦ Repetitivas (repite y mientras) Metodología: Presencial e Interactiva. El profesor exponía su cátedra y ponía a los alumnos a trabajar en pequeños ejercicios, tanto de manera individual como en equipo. Evaluación: Esta se dividió en ejercicios, tareas y examen. Los ejercicios de clase y las tareas se evaluaron para conocer la evolución del aprendizaje y dar retroalimentación que permitiera al alumno ir conociendo sus errores y rectificar. El examen consistió en evaluar los conocimientos adquiridos por el alumno mediante 10 preguntas. Estas 10 preguntas eran seleccionadas de forma aleatoria por la plataforma tecnológica Web Tec en la cual se colocaron 20 preguntas que formaban parte de la base de datos. 2do. Módulo: Duración: 30 días Contenido: Introducción a Alice mediante la presentación de las ventanas que componen el programa, así como la solución de problemas mediante la programación que emula a la programación orientada a objetos del lenguaje JAVA. (Ver Anexo 1A) Los ejercicios realizados consistieron en: Nombre del ejercicio LA OLA MACETA RIDING HORSE HADAS objetivo Colocar las 3 muñecas de Alicia en el escenario y mirando a la cámara, de manera que, mediante un procedimiento, giraran sus brazos de manera coordinada para simular la “ola” que se hace en los estadios deportivos. Acto seguido, las muñecas de los extremos se movían hacia la muñeca del centro para después desplegar un mensaje a manera de “globo” (como en las historietas) y emitir un sonido. Colocar una maceta y alrededor de ella, considerando diferentes distancias, colocar 3 mariposas. Al iniciar el proceso se toma la distancia de la mariposa más cercana y se deja a esta misma distancia a las otras 2. Enseguida, se ponen a girar 3 vueltas alrededor de la maceta. Luego se orientan mirando hacia la maceta y vuelan rápidamente hacia sus flores Se coloca un caballo y encima de él un jinete. Más adelante se coloca una valla. Se hace que el caballo avance hacia la valla y un poco antes de llegar haga un brinco que le permita librarla. Posteriormente, se hace que el caballo siga avanzando, seguido por la cámara, gire hacia ella y se aproxime hacia la misma. Este es un ejercicio con muchos elementos entre árboles, hadas, fuente, etc. Se trata de una secuencia que cuenta una historia. Se les dio a los alumnos todos los elementos colocados en su posición inicial y una práctica que indicaba paso por paso los métodos a seguir. Los estudiantes vieron como hacer un método propio MODIFICACION en el que podían hacer que el caballo moviera las DEL RIDING patas a manera de caminata. Incorporaron este HORSE método en aquellos segmentos del programa en el que el caballo avanzaba. Estructuras utilizadas SECUENCIAL SECUENCIAL Y REPETITIVA (REPITE) SECUENCIA, utilizando varias rutinas de elaboración simultánea. SECUENCIA, utilizando algunos métodos nuevos proporcionados al alumno. SECUENCIA y rutinas de elaboración simultánea que incluían sus métodos propios CONOS CON MOUSE CILINDRO CRECIENDO VACA Se colocan 3 conos de diferente color a suficiente distancia entre ellos, pero visibles todos por la cámara. Se crea un evento que permita mover a uno de ellos. El programa hace que el cono movible cambie su tamaño por 3 segundos para dar tiempo a que el usuario pueda moverlo. Enseguida, este cono se moverá y esconderá dentro de uno de los otros 2 conos que haya quedado más cercano. Se coloca un cilindro de algún color en el escenario y se modifica su tamaño para que empiece muy pequeño. Enseguida se evalúa un ciclo que hará que crezca mientras no llegue a un tamaño determinado Se coloca una vaca blanca al centro de un domo semitransparente. Otra vaca naranja está en las afueras del domo. El programa permite que el usuario pueda mover a la vaca naranja con el mouse. El programa corre y mientras la vaca naranja no se acerque al domo, la vaca blanca, gira sin parar. Al dejar de cumplirse esta condición, la vaca blanca desaparece y el programa pregunta al usuario de qué color quiere pintar a la vaca que entró, preguntando por un número. Enseguida la vaca naranja cambia de color y termina el programa. ALIEN GAME Existe un robot que se está moviendo aleatoriamente y hay un alien que puede seguirlo siendo manipulado por el jugador. INTERACCION Existe una gallina que puede brincar controlada por 2 teclas y tiene una acción al dar clic sobre ella. El método principal se encuentra vacío OLA CON INICIO Este tiene lo mismo que la OLA original, pero se pone un método que tiene un cubo que impide ver a las Alicias. También se coloca un círculo en el método, este se encuentra en un Ciclo de repetición que hace que crezca y disminuya su tamaño varias veces. Al dar clic sobre el círculo, se borran todos los elementos extra y se ve solo lo que se tenía en la OLA original. SECUENCIA y CONDICIONAL, utilizando un evento para arrastrar un objeto con el mouse. SECUENCIA y CICLO MIENTRAS SECUENCIA, CONDICIONAL, CICLO MIENTRAS Y VARIABLES NUMÉRICAS CICLO REPITE, función Random y eventos basados en teclas de letras SECUENCIA y EVENTOS A BASE DE TECLAS Y MOUSE. Inicio con un METODO diferente y EVENTOS para activar el METODO PRINCIPAL. CICLO REPITE Nota: Gran parte de los ejercicios se encuentran en el Anexo 2A el cual se presenta de manera comprimida. Para poder apreciarlos se debe descomprimir la carpeta, abrir el programa Alice y desde este último, abrir cada ejercicio. Metodología Cada clase se iba viendo un ejercicio al frente del grupo y luego se les dejaba algún otro ejercicio inventado por ellos para repasar. Evaluación La evaluación se llevó a cabo mediante los ejercicios realizados en clase y las tareas en las que los alumnos debían inventar sus propias animaciones utilizando todo aquello visto en clase. Para los exámenes, fue necesario realizar la animación que se les mostró en una máquina para que observaran lo que debían lograr y además se les dio una hoja con instrucciones que les permitían ver paso a paso la secuencia que se solicitaba. Se puede ver un ejemplo de examen en el Anexo 3 A. Incidentes Críticos • • • • • • • • • La capacitación fue muy buena, pero no todos los maestros la tomaron con compromiso. El programa Alice no corrió de manera óptima en todas las computadoras. En lo particular las computadoras Macintosh tuvieron muchos problemas para manejar algunas características como la opacidad de los objetos y el uso de variables. Algunos alumnos que habían salido muy bajos en la paquetería que se vio en los 2 primeros parciales, sorprendentemente salieron muy bien en programación y se mostraron muy entusiastas. Algunos de ellos hasta se empezaron a considerar buenos en Computación. La cantidad de alumnos por grupo (33 a 35) fue un poco difícil de manejar cuando se tenían que hacer explicaciones y razonamientos junto con ellos. Algunos maestros dejaron a los alumnos muy sueltos basándose en su autoaprendizaje, y si bien algunos salieron adelante, no todos tuvieron el aprendizaje mínimo requerido. El tiempo no fue el suficiente para reafirmar conocimientos, ni tampoco para ver todas las herramientas con las que cuenta Alice. El tamaño de los archivos debe ser limitado porque llega un momento en que la capacidad del programa no es suficiente para correr los ambientes. Hubo proyectos finales ya casi terminados y que al tratar de abrirlos se perdieron completamente por lo que era necesario guardar diferentes versiones. Para realizar algunos ejercicios en clase fue necesario darles a los alumnos los archivos con los objetos ya colocados en el mundo, puesto que era casi imposible lograr que los alumnos crearan un mundo con las mismas características para todos y así poder realizar una animación bajo las mismas circunstancias. Y es que el programa Alice está realizado sobre un concepto tridimensional que caracteriza a los objetos por tener profundidad, alto y ancho, característica que coloca a los objetos en diferentes posiciones (coordenadas x, y,z) Conclusiones El programa Alice logró en los alumnos una motivación extrínseca que permitió exploraran diferentes características del software sin necesidad de que el maestro les explicara. Se observó que varios alumnos se interesaron en la programación por lo que se puede inferir que si existe un gusto por la computación, pero faltan herramientas para explotar esas habilidades de una manera más atractiva. Las estructuras de programación vistas en el primer módulo quedaron mucho más claras cuando se realizaron las animaciones de clase. Debido a que el programa de Alice tiene comandos en inglés, fue notorio el mayor entendimiento y gusto observado en los alumnos del programa Bicultural.