Você está na página 1de 10

Programación básica para adolescentes

Guillermo Londoño Acosta


glondono@icesi.edu.co

Gustavo Adolfo Paz Loboguerrero


gapl20@yahoo.com

Fecha de recepción: 10-02-2007 Fecha de selección: 10-05-2007 Fecha de aceptación: 30-04-2007

ABSTRACT RESUMEN
Adolescents don’t show interest in Los adolescentes están perdiendo
the computer programming, they interés por la programación de las
consider it difÞcult and boring. This computadoras, la consideran una
paper explores the idea to teach the temática complicada y poco motiva-
new generations of adolescents to dora. Es necesario iniciar en la pro-
program in a way that attracts them, gramación a las nuevas generaciones
that is both easy and amusing. de una manera fácil, divertida y muy
gráÞca; como por ejemplo, aprender
This paper shows the experience at
los conceptos básicos de la programa-
the Icesi University with high school
ción construyendo juegos de video,
students to teach basic programming
con herramientas que oculten la
by developing video games, with tool
complejidad y permitan conocer y
easy to use.
aprender a utilizar esos elementos
KEY WORDS básicos.
KPL, BASIC, programming, Este artículo muestra el material
teaching, KPL Project, games, desarrollado y los resultados de la ex-
Morrison&Schwartz, Phrogram periencia que hemos tenido en el pro-

SISTEMAS
& TELEMÁTICA 61
grama de Ingeniería de Sistemas de PALABRAS CLAVE
la universidad Icesi, con estudiantes KPL, BASIC, programación, ense-
de grados 10 y 11, en la enseñanza de ñanza, Proyecto KPL, juegos,
los elementos básicos de la programa- Morrison&Schwartz, Phrogram,
ción, a través de la construcción de Alice
juegos de video en 2D.
Clasificación Colciencias: B

62 SISTEMAS
& TELEMÁTICA
INTRODUCCIÓN menos importante para la creciente
En los años ochenta los jóvenes mayoría de usuarios y de poco interés
tenían la oportunidad de conocer para los adolescentes.
el mundo de la programación de Hoy en día, lenguajes como Java, C#
computadoras a través de un lenguaje y VBasic.NET, con sus populares en-
de programación para aÞcionados, tornos de desarrollo Eclipse, JDeve-
fácil de aprender y de utilizar, de loper, Visual Studio.NET, etc., no son
propósito general y con características adecuados para que un adolescente,
avanzadas pero simples para los estudiante de secundaria, se inicie en
principiantes; aunque los expertos el mundo de la programación. Esta
lo criticaban por su lentitud y carencia en la actualidad de un len-
sencillez. Este lenguaje, llamado guaje básico estándar ha conducido a
BASIC, se adecuaba muy bien a las la eliminación de la enseñanza de la
computadoras personales de la época, programación en muchos colegios, y
y era el lenguaje estándar usado por aquellos que lo hacen con lenguajes
los adolescentes como mecanismo complejos como C, Java, etc., están
para introducirse en el mundo de la logrando que muchos jóvenes pierdan
programación. Un adolescente podía todo interés por la programación.
experimentar y conocer, de forma
autodidacta, los elementos básicos Nuestros adolescentes se han con-
de la programación. vertido sólo en usuarios de paquetes
como Office; algunos piensan que
En los años noventa la complejidad un ingeniero de sistemas se dedica
de las computadoras personales y a estudiar OfÞce y otros paquetes
la llegada de los ambientes gráÞcos en profundidad, perciben la infor-
exigían nuevas características a los mática como el uso de aplicaciones,
lenguajes de programación, que BA- pues desconocen el poder de la pro-
SIC no tenía. Lenguajes ya no para gramación para comunicarse con las
aÞcionados como C, C++ y VisualBa- computadoras y lograr que hagan lo
sic permitían desarrollar aplicacio- que uno quiere, como por ejemplo
nes complejas, que explotaban toda construir juegos de video, tema de
la potencialidad de las computadoras su total interés.
personales y de las interfaces gráÞcas
usuario. El desarrollo de las compu- La diferencia entre dar instrucciones
tadoras personales permitió un gran a una persona y dar instrucciones
crecimiento de muchas compañías a una computadora está en la com-
de software. Mientras que las com- plejidad de cada instrucción y en el
pañías de software para micros de lenguaje utilizado. El computador
los ochenta vendían cientos o miles no puede suponer ni imaginar nada,
de copias de sus programas, las com- las instrucciones que le damos son
pañías de software de esta década más elementales, precisas, en un
vendían decenas e incluso centenas estricto orden y sometidas a reglas
de miles de copias. Las computadoras de un lenguaje más restrictivo que
personales se convirtieron en herra- los lenguajes utilizados por los hu-
mientas usadas principalmente para manos. No estamos acostumbrados
ejecutar aplicaciones escritas por a dar instrucciones en forma tan
otros; la programación empezó a ser lógica, precisa, ordenada y con un

SISTEMAS
& TELEMÁTICA 63
lenguaje tan restrictivo; este es un programación de Microsoft, y Walt
excelente ejercicio mental para un Morrison, antes ingeniero de NCR.
adolescente. A Þnales del 2006 fue adquirido por
Phrogram Company (www.phro-
Con el objetivo de motivar de nuevo
gram.com).
a los estudiantes de grados 10 y 11
por la programación, nos dimos a la KPL1 es un entorno de programación
tarea de desarrollar un material para moderno compuesto por un editor,
los colegios que permita a un adoles- un compilador, un depurador, un
cente de grado 10 o grado 11 conocer entorno gráÞco de ejecución y una
y aplicar los principios básicos de la biblioteca de estructuras, funciones
programación en la construcción de y procedimientos que permiten mani-
un juego de video en 2D. pular fácilmente imágenes, sonidos y
dispositivos periféricos como el ratón
KPL COMO ENTORNO y el teclado.
DE PROGRAMACIÓN
La versión 2 de KPL, liberada a Þ-
Existe un entorno de programación nales del 2006 y llamada Phrogram,
moderno llamado KPL, siglas en inglés fue desarrollada sobre el framework
de Kids Programming Language, con .NET, incluye no sólo un potente mo-
un lenguaje de programación tan sim- tor 2D como el de la versión original,
ple y legible como BASIC, que facilita sino que introduce un motor 3D ba-
la programación de juegos y programas sado en DirectX 9.0c, el cual permite
educativos con gráÞcos y sonido. el uso de controles y joysticks para el
KPL1 fue desarrollado con la direc- manejo de los juegos, y en un futuro
ción de Jonah Stagner y sus colegas, cercano los juegos desarrollados en
Jon Schwartz, antiguo director de KPL2 se podrán ejecutar en el XBox

Figura 1. Entorno de programación de KPL.

64 SISTEMAS
& TELEMÁTICA
360. También se han introducido cos, o problemas relacionados con el
nuevas características en el lengua- manejo de información en una orga-
je, como la programación basada en nización, o para animar imágenes en
clases y el manejo de archivos. la pantalla del computador al cons-
truir juegos de video, o en muchos
A Þnales del 2005 escogimos KPL1
otros campos. Todos estos dominios
como entorno de programación para
de aplicación requieren los mismos
la construcción del material, y como
elementos básicos de programación.
herramienta en los talleres dictados
Empleamos los juegos de video para
a los estudiantes de grados 10 y 11,
aprender a programar, puesto que
y a los estudiantes de primer semes-
este es un tema de mucho interés
tre de Ingeniería de Sistemas de la
para los adolescentes; además, les
Universidad Icesi. Este entorno de
permite ver resultados gráficos e
programación es bastante amigable,
inmediatos de sus programas y esti-
sencillo de aprender, y ha permiti-
mula su creatividad, mientras se les
do que la programación usando el
enseñan conceptos básicos como el
lenguaje de KPL sea ampliamente
de variable, operador, tipo de datos,
aceptada por todos los participantes
instrucción de selección y de repe-
en los talleres.
tición, arreglo, estructura, método,
LA RAZÓN PARA EMPLEAR función y clase.
JUEGOS Estos son algunos ejemplos de juegos
La programación se puede utilizar clásicos que se pueden lograr con
para resolver problemas matemáti- KPL1:

Figura 2. Ejemplos de juegos realizados en KPL1.

SISTEMAS
& TELEMÁTICA 65
y con KPL2:

Figura 3. Ejemplos de juegos en 3D hechos en la versión 2 de KPL llamada Phrogram.

MATERIAL DESARROLLADO 5. Elementos básicos de la progra-


PARA LOS COLEGIOS mación: identificador, tipo de
En diciembre de 2005 invitamos dato, palabra reservada de un
estudiantes de grados 10 y 11 de lenguaje, operador, variable, lite-
varios colegios de Cali a la charla ral, arreglo, instrucción de selec-
“Aprender Algoritmos Desarrollando ción, instrucción de repetición.
Juegos de Video”. Esta invitación 6. Gif animados.
tuvo tanta acogida que decidimos 7. Movimiento de imágenes con el
construir un material que permitie- teclado.
ra a los estudiantes de los colegios 8. Estructuras.
conocer los elementos básicos de la
9. Funciones y métodos.
programación construyendo juegos
de video. El material está publicado Contenido avanzado
en http://www.icesi.edu.co/colegios/ 1. Juegos con dos jugadores.
kpl/index.htm
2. Uso del ratón en los juegos.
El material para el taller tiene una 3. Desplegar estados del juego.
parte básica y una parte avanzada 4. Cuadros ßuidos.
con el siguiente contenido: 5. Mover el fondo.
Contenido básico 6. Ajuste dinámico de la velocidad
1. Introducción a la programación. de las animaciones.
2. Manejo del lápiz. 7. Manejo de disparos y explosio-
nes.
3. Usar la geometría y la trigonome-
tría en la construcción de Þguras 8. Uso de sonidos.
geométricas trazadas por las 9. Uso de vectores.
imágenes animadas. A lo largo de todo el taller se constru-
4. Técnicas básicas de animación en ye un juego en el que se van aplicando
2D: Traslación, rotación y colisio- gradualmente todos los conceptos
nes. discutidos.

66 SISTEMAS
& TELEMÁTICA
TALLERES REALIZADOS la ciudad de Cali. Este fue un taller
Hemos realizado cinco talleres con de 40 horas, dictado en las salas
estudiantes de grados 10 y 11, cuatro de la Universidad Icesi durante un
abiertos a los colegios en general y período de dos meses, en el que los
uno dirigido sólo a los estudiantes estudiantes asistían tres horas por
de grado 11 del colegio Jefferson de semana.

Figura 4. Fotos del taller con el Colegio Jefferson en 2006-1.

Para este año 2007: imágenes, con el Þn de darle un


mayor dinamismo a la realización
1. Vamos a utilizar Phrogram. de las clases. Los sonidos y las
2. Haremos los cambios necesarios imágenes son una parte vital de
para que todos los programas los juegos de video que hacen que
desarrollados en KPL1 incluyan cobren más vida, y por ende, se
las nuevas características de logre mayor interés de los adoles-
Phrogram. centes en la programación.
3. Vamos a complementar la pro- 4. Vamos a desarrollar nuevos
gramación de juegos mediante ejemplos que exploten toda la
la inclusión de talleres sobre potencialidad del motor 3D de
producción y edición de audio e Phrogram.

SISTEMAS
& TELEMÁTICA 67
La Tabla 1 resume los resultados combinados de dos encuestas realizadas en los talleres.

Tabla 1. Resultados de encuestas realizadas sobre el taller.

Número de Encuestados: 22 Calificación


Bajo 1 – Alto 5
1. Motivación para estudiar el taller
Calificación 1 2 3 4 5 Total
Votos 0 0 2 8 12 22
2. Conocimiento alcanzado en programación
Calificación 1 2 3 4 5 Total
Votos 0 0 9 9 4 22
3. Motivación para hacer otro taller de programación
Calificación 1 2 3 4 5 Total
Votos 1 0 5 6 10 22
4. Calificación del material
Calificación 1 2 3 4 5 Total
Votos 0 0 1 6 15 22
5. Utilidad del Taller
Calificación 1 2 3 4 5 Total
Votos 0 0 2 9 11 22
6. Calificación del Taller
Calificación 1 2 3 4 5 Total
Votos 0 0 0 9 13 22

CONCLUSIONES te y poco motivador para una mente


Hace treinta años los adolescentes gráÞca como la de los jóvenes.
disponían de tecnologías basadas en
texto y pobres en gráÞcos, sonido, En los últimos años hemos tenido po-
animación, etc.; para ellos tenía mu- cas innovaciones en la enseñanza y el
cho sentido la frase “Una imagen vale aprendizaje de los principios básicos
más que mil palabras”. Hoy en día de la programación. Los profesores
los jóvenes utilizan diversos medios en los colegios y en las universidades
para obtener información, aprender son reacios a cambiar su forma de
y entretenerse. Los adolescentes de enseñar algoritmos y programación.
hoy tienen una mente muy gráÞca y Afortunadamente ya están apare-
utilizan tecnologías con texto, imá- ciendo entornos de programación
genes, sonido, animación e interac- modernos como KPL o como Alice,
tividad. La frase más adecuada para que permiten, mediante nuevos
los jóvenes de hoy es: una animación enfoques, desarrollar el pensamien-
interactiva vale más que mil imáge- to algorítmico en los estudiantes.
nes. Desafortunadamente seguimos En la universidad Carnegie Mellon se
enseñando los principios básicos de construyó una herramienta llamada
la programación utilizando el texto Alice,1,2 un entorno de programación
como único medio, lo cual es frustran- que permite gráÞcos en 3D, progra-

68 SISTEMAS
& TELEMÁTICA
mación visual, animación e interac- • Southwestern University
tividad, y permite el desarrollo de • Tompkins Cortland Community
aplicaciones de una manera fácil y College
rápida, debido a que oculta la comple-
• University of Colorado
jidad al desarrollador. Alice permite
concentrarse en el diseño de la solu- • University of Illinois
ción y no en la forma de implementar • University of Mississippi
los algoritmos, la interfaz gráÞca, la • Virginia Tech
animación, la interactividad, etc.
• And several high schools
Alice se está utilizando como herra- Por ejemplo, en la Universidad de
mienta en los cursos introductorios Saint Joseph los estudiantes toman
a ciencias de la computación, para el curso CSC 1301 Building Virtual
enseñar los conceptos fundamentales Worlds, de tres créditos, como intro-
de programación, en las siguientes ducción a la programación utilizando
instituciones educativas norteame- el software Alice. En este curso los
ricanas:3 estudiantes usan mundos virtuales,
• Bucknell University animados, interactivos y en 3D, para
entender los elementos básicos de
• California Lutheran University
la programación. Luego toman el
• California State University at curso CSC 1401 de introducción a la
Humboldt programación de computadores, de
• Camden County College cuatro créditos, utilizando un lengua-
• Carnegie Mellon University je como java, en el cual aprenden el
concepto de variable, estructura se-
• Clemson University
lectiva y repetitiva, arreglo, método,
• Colorado School of Mines objeto y clase.
• Community College of Philadel- Con en el apoyo de National Science
phia Fundation (NSF) se llevó a cabo un
• Cornell University proyecto de investigación en Saint
• Duke University Joseph’s University (SJU) and Ithaca
• Georgetown College College (IC),7 sobre la efectividad del
uso de Alice en la enseñanza de los
• Haverford College conceptos básicos de programación, y
• Ithaca College en especial de la programación orien-
• Manor College tada a objetos. El estudio se enfocó
• Mississippi Valley State Univer- en estudiantes con poca fundamenta-
sity ción en matemáticas y en programa-
ción que tomaron el curso CSC 1301
• Plymouth State University y demostró que los estudiantes que
• Saint Edward’s University tomaron el curso CSC 1301, mejora-
• Saint Joseph’s University ron sus caliÞcaciones de C a B en el
curso CSC 1401, comparándolas con
• Saint Lawrence College
las obtenidas históricamente por los
• San Diego State University estudiantes que también tenían las
• Sierra Nevada College características ya mencionadas y no

SISTEMAS
& TELEMÁTICA 69
tomaron el curso CSC 1301. Además, 5. http://www.kidsprogrammin-
el porcentaje de estudiantes que glanguage.com/
avanzaban a cursos superiores de 6. http://www.phrogram.com/
programación pasó del 47% al 88%.
7. Moskal, Barb; Lurie, Deborah y
También señala el estudio que los
Cooper, Stephen. Evaluating the
estudiantes que toman el curso CSC
Effectiveness of a New Instruc-
1301 tienen mayor facilidad para
tional Approach. Pensilvania:
entender conceptos más avanzados
Carnegie Mellon University,
de programación.
2006. 5 p.
Herramientas como KPL y Alice nos http://www.alice.org/publicatio-
brindan la posibilidad de explorar ns/pubs/EvaluatingTheEffecti-
nuevos enfoques para el aprendizaje venessOfANewApproach.pdf
de los conceptos básicos de la progra-
mación. Tanto en los colegios como en CURRÍCULOS
las universidades un primer curso
Guillermo Londoño Acosta. Fí-
de programación con un enfoque pe-
sico de la Universidad del Valle.
dagógico que enfatice en desarrollar
Magíster en Física del Instituto
la capacidad de abstracción para
Venezolano de Investigaciones
entender un problema, diseñar una
CientíÞcas (IVIC), Caracas, Ve-
solución algorítmica e implementarla
nezuela. Profesional asociado
en una computadora, contribuiría
a Investigación del Instituto
mucho a la formación de un adoles-
Venezolano de Investigaciones
cente, no importa si eventualmente
CientíÞcas (IVIC), Caracas, Vene-
decide llegar a ser un ingeniero de
zuela. Asistente de Investigación
sistemas o no; estas habilidades y
conocimiento lo beneÞciarán por el de la Universidad de Wisconsin,
resto de su vida, pues tendrá que Milwaukee, U.S.A. Magíster en
desenvolverse en un mundo inmerso Ingeniería de Sistemas de la
en la tecnología. Por otra parte, el Universidad del Valle. Cursos
conocimiento de los elementos bási- de especialización en Ingeniería
cos de la programación debe ser del del Software en la Universidad
dominio de toda persona que desee Politécnica de Madrid. Actual-
explotar la potencialidad de herra- mente Director del Programa
mientas de productividad personal de Ingeniería de Sistemas de la
como Excel. Universidad Icesi, y Profesor en
el Área de Modelado de Sistemas
BIBLIOGRAFÍA de Información.
1. http://www.alice.org Gustavo Adolfo Paz Loboguerre-
2. http://www.aliceprograming. ro. Estudiante de Ingeniería de
net Sistemas e Ingeniería Telemática
en la Universidad Icesi. Actual-
3. http://www.aliceprogramming.
mente Monitor del Taller KPL
net/overview/overview.html
que se realiza en la misma Uni-
4. http://www.icesi.edu.co/colegios/ versidad y coautor del material
kpl/index.htm desarrollado.

70 SISTEMAS
& TELEMÁTICA

Você também pode gostar