Beruflich Dokumente
Kultur Dokumente
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
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:
SISTEMAS
& TELEMÁTICA 65
y con KPL2:
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.
SISTEMAS
& TELEMÁTICA 67
La Tabla 1 resume los resultados combinados de dos encuestas realizadas en los talleres.
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