You are on page 1of 9

Informe de Vigilancia Tecnolgica

Tendencias en la enseanza de la programacin de computadores

SENA
Servicio Nacional de Aprendizaje
Alfonso Prada Gil
Direccin General
Juan Felipe Rendn Ochoa
Direccin Regional Antioquia
Jorge Antonio Londoo Londoo
Subdirector Centro de la
Innovacin la Agroindustria y la
Aviacin
Adel II Gonzlez Alcal
Dinamizador TecnoParque Nodo
Rionegro

Pregunta de Cules son las tendencias actuales, para la enseanza de la


enfoque programacin de computadores?
Enseanza de la programacin, desarrollo de la lgica de
Frases claves programacin, software for learning programming, literacy
programming.
Fuentes de Sitios web especializados, bases de datos indexadas, diarios
informacin especializados, informes de expertos.
Ficha Tcnica

Todas las personas inquietas por la enseanza de la programacin de


Dirigido a
computadores, con especial nfasis en la comunidad del SENA.
El informe muestra las tendencias actuales y describe la forma de
Alcance acceder a ellas, para que el lector se motive a profundizar por cuenta
propia en las alternativas mostradas.
Estructura de Trminos de uso comn para facilitar la lectura y el entendimiento
redaccin del contenido.
Carcter de la Informacin abierta de inters general que puede ser divulgada y
publicacin compartida libremente.
lenguajes de programacin, los cuales han ido
Introduccin evolucionando buscando que en algn
momento las mquinas puedan entender a un
humano y lo que ste le pide de una forma
En la actualidad la computacin es un
natural. Por ahora, programar implica
elemento clave en el desarrollo de las
dominar la lgica del hardware y utilizar un
actividades humanas, campos como la
conjunto de instrucciones y estructuras
medicina, la agricultura, las artes y el
dispuestas para ello, en donde la creatividad,
transporte por mencionar algunos, son
la persistencia y la capacidad de inferencia
beneficiados por computadores que permiten
entre muchas otras habilidades, son
hacer de forma eficiente muchas actividades,
necesarias para lograr desarrollar programas
algunas de ellas imposibles de realizar para
que den solucin a problemas planteados.
los seres humanos. Sin embargo, estas
Hoy por hoy, algunos pases consideran a la
mquinas (hardware) requieren de programas
programacin una herramienta bsica de la
(software) para que se logren hacer las tareas
formacin y han optado por incluirla dentro
que con tanta naturalidad se observan ejecutar
de los planes acadmicos de los nios, los
y a la vez, esos programas requieren de seres
jvenes y los adultos, en algunos casos
humanos creativos y con los conocimientos
abriendo programas gratuitos para que
necesarios para conseguir que las mquinas
cualquier persona se inscriba en ellos y
les obedezcan y ejecuten las acciones
aprenda a desarrollar software.
planeadas.

En este proceso el software surge de la


imaginacin y la creatividad de los seres Pases con programas profesionales
humanos quienes se basan en las reconocidos en la programacin de
computadores.
potencialidades del hardware para sacarle el
mayor provecho (para algunos, programar es
El siguiente mapa muestra los pases en
un arte). Un programa es un conjunto de
donde se encuentran instituciones educativas
instrucciones escritas que deben seguir unas
reconocidas por sus programas en ciencias de
reglas, un orden y una estructura, sin las
la computacin.
cuales es imposible comunicarse con la
mquina. Para esto, se han creado los

Centro de la Innovacin la Agroindustria y la Aviacin 2|Pgina


Edad donde se incorporan fundamentos
de programacin de computadores.

La escolaridad hace referencia a la poltica


pblica de educacin y a la forma en que se
conciben los planes de formacin acadmica,
Estados Unidos, China, Reino Unido, los cuales deben reflejar la visin que las
Canad, Hong Kong, Australia. administraciones estatales proveen para el
futuro social del pas y la direccin que se
El siguiente es el listado de las diez mejores debe tomar desde lo educativo. En este
instituciones educativas globales, para sentido, ya se encuentran polticas pblicas de
estudiar un programa de ciencias de la educacin que explcitamente incorporan
computacin. desde la formacin primaria en unos casos y
en otros desde la secundaria, contenidos de
ciencias de la computacin, no con el enfoque
tradicional de usuario final, sino como
creadores de software con todo lo que esto
implica.
Massachusetts Institute of Technology
El siguiente es un listado de los pases que se
Stanford University
destacan por incorporar el enfoque de las
Harvard University
ciencias de la computacin en los planes
University of California Berkeley
pblicos de estudio: Estonia, Israel,
Tsinghua University
Finlandia, Reino Unido, Australia, Holanda,
University of Texas Austin
Estados Unidos (Ciudades principales), Italia,
Nanyang Technological University
Singapur, Alemania, Corea del Sur, Nueva
Princeton University
Zelanda y Grecia.
University of California San Diego
National University of Singapore Este es el mapa que ubica los principales
pases con polticas estatales de educacin
bsica y secundaria que involucran el

Centro de la Innovacin la Agroindustria y la Aviacin 3|Pgina


desarrollo de habilidades de construccin de ThinkBit pensado para trabajar con
software en ciencias de la computacin. arduino http://www.thinkbit.org/sobre-
thinkbit/
Galileo sistema de Intel hardware y
software
http://www.intel.la/content/www/xl/es/d
o-it-yourself/galileo-maker-quark-
board.html
Code Enfocada a las escuelas de forma

Los grados de escolaridad en los cuales global https://code.org/

intervienen se asocian a las edades de los https://hourofcode.com

estudiantes, las cuales van desde 6 a 16 aos Logo es un clsico que an sigue vigente

de edad, destacando que se les ensea lgica http://el.media.mit.edu/logo-foundation/

de programacin, algoritmia y lenguajes de http://education.mit.edu/portfolio_page/s

programacin. tarlogo-tng/
MSchools enfocada en la educacin
primaria
http://mschools.mobileworldcapital.com/
Programas y plataformas informticas Programamos comunidad de docentes y
ms usadas para ensear a programar
computadores. alumnos http://programamos.es/
Lifelong kindergarten conjunto de
Existen herramientas de software y herramientas visuales
plataformas creadas para ayudar a ensear y https://llk.media.mit.edu/
entender la programacin de computadores, Scratch plataforma con software para
partiendo de los conceptos de la lgica, aprender https://scratch.mit.edu/
pasando por la algoritmia y llegando a los GameSalad recursos para aprender
lenguajes usados en la industria. El siguiente haciendo videojuegos
es un listado de aquellos que se encuentran http://gamesalad.com/
referenciados en el mbito mundial:
Stencyl recursos para desarrollar
videojuegos http://www.stencyl.com/

Centro de la Innovacin la Agroindustria y la Aviacin 4|Pgina


AppInventor plataforma para tratado a nivel global, encontrando las
desarrollar en Android siguientes alternativas:
http://appinventor.mit.edu/explore/
Iniciar la formacin con los conceptos
Kodu plataforma para aprender
tericos, mediante analogas al mundo
construyendo juegos de pc
real explicar los elementos y llevar la
http://www.kodugamelab.com/
algoritmia desde diagramas de flujo
Pencil Code para desarrollo de la lgica
realizando pruebas escritorio para su
de programacin http://pencilcode.net/
prueba.
CodeCademy plataforma para aprender
Iniciar la formacin con programas
a programar
visuales de construccin de bloques, en
https://www.codecademy.com/
donde se explican los conceptos
Actua plataforma con contenidos para
algortmicos paralelamente al uso de la
el desarrollo de programas
herramienta y al desarrollo de tareas que
http://actua.ca/en
se ejecutan visualmente en la misma.
Greenfoot para java
Iniciar la formacin con los conceptos
http://www.greenfoot.org/
algortmicos paralelamente a un lenguaje
CodeFight plataforma para comprar las
de programacin usado en la industria, se
habilidades personales en un lenguaje de
eligen lenguajes de sintaxis simple y se
programacin https://codefights.com/
desarrollan todos los ejercicios y
ejemplos en ella.
Algoritmia fundamental o algoritmia
en el lenguaje de programacin? La eleccin de alguna de las estrategias
anteriores se puede determinar segn la edad
Una disyuntiva comn entre quienes
y los conocimientos previos de las personas a
desempean el rol de ensear a programar, es
las que se pretenden ensear, tambin se debe
determinar la conveniencia de iniciar la
tener presente el enfoque para el cual se est
formacin usando un lenguaje de
enseando, no es lo mismo formar a alguien
programacin formal o dejarlo hasta cuando
para que conozca que es la programacin y
se hayan sentado bases ms slidas de
como se realiza, que preparar personas que
fundamentos esenciales. Este aspecto ha sido
van a derivar su sustento del desarrollo de
software.

Centro de la Innovacin la Agroindustria y la Aviacin 5|Pgina


La programacin requiere de disciplina, El siguiente es un listado de los lenguajes
constancia y la capacidad de inferencia, esto usados en cursos donde ensean a programar
significa que alguien que est positivamente computadores alrededor del mundo:
determinado a aprender a programar debe
disponer de buen tiempo para practicar y Ruby lenguaje de cdigo abierto y

practicar, aprender de las equivocaciones y dinmico https://www.ruby-lang.org/es/

generar nuevo conocimiento a partir de las Visual Basic Express lenguaje de

herramientas que vaya dominando. Este es Microsoft con sintaxis sencilla

un proceso que requiere acompaamiento, https://msdn.microsoft.com/es-

pero que depende en gran porcentaje de la co/library/xk24xdbe(v=vs.90).aspx

persona que est aprendiendo, quien debe ir Python lenguaje elegante, de sintaxis

mejorando sus habilidades en el proceso. dinmica y de cdigo abierto


https://www.python.org/
Swift Lenguaje eficiente de cdigo
Lenguajes de programacin que se abierto diseado para desarrollos (IOS)
usan para ensear a programar
computadores https://swift.org
JavaScript lenguaje usado en
Los lenguajes de programacin han
automatizacin de sitios web con sintaxis
evolucionado en su forma. En sus inicios
dinmica https://www.javascript.com/
nacieron siendo ceros y unos, luego fueron
Java lenguaje de cdigo abierto lder en
una mezcla de nmeros y palabras cortas
la industria para desarrollo de
(ensamblador), hasta llegar a los lenguajes de
aplicaciones web
alto nivel en donde se asemejan ms al
https://www.java.com/es/
lenguaje humano. En este ltimo es en donde
Go lenguaje creado por google y otras
se han instaurado paradigmas como la
contribuciones https://golang.org/dl/
orientacin a objetos, a aspectos y a
C lenguaje usado en cursos de
componentes. Los lenguajes se asocian a
ingeniera como fundamento
sistemas operativos, encontrando que algunos
http://www.open-
pueden llegar a ser multiplataforma
std.org/JTC1/SC22/WG14/www/docs/n1
(Windows, Linux, Mac, Android).
256.pdf

Centro de la Innovacin la Agroindustria y la Aviacin 6|Pgina


Rust lenguaje de cdigo abierto semnticas cortas (Ruby, Python, PHP,
eficiente con visin minimalista del JavaScript y otros similares)
contenido https://www.rust-lang.org/
Tendencia 4 Llegar al lenguaje formal, solo
C# lenguaje estrella de la lnea de
despus de haber sentado las bases lgicas
Microsoft, de cdigo propietario con
necesarias para que la curva de aprendizaje
sintaxis elegante
se agilice y se disminuya la desercin.
https://msdn.microsoft.com/en-
us/library/67ef8sbd.aspx Tendencia 5 Pasar a paradigmas orientados
a objetos slo tras haber desarrollado con
suficiente soltura el paradigma estructurado.
Tendencias actuales, para la ensea de
la programacin de computadores Tendencia 6 Ingresar a desarrollos robustos
en WEB y de dispositivos mviles, tras
Tendencia 1 Incorporar de la programacin dominar y aplicar los conceptos orientados a
de computadores y los contenidos de las objetos.
ciencias de la computacin, en los planes
curriculares de la educacin pblica bsica, Tendencia 7 Desarrollar las habilidades de
secundaria y terciaria como poltica estatal. arquitectos de software con MDA
(Arquitecturas dirigidas por el modelo) tras
Tendencia 2 Motivar el aprendizaje de la haber desarrollado las competencias en las
programacin utilizando programas visuales tendencias anteriores.
de diseo por bloques, en donde se
desarrollan las habilidades del pensamiento
Conclusin
lgico y la inferencia mediante la
construccin de ejercicios con alto contenido
La enseanza de la programacin de
ldico. (Scratch, AppInventor, Kodu y otros
computadores ha sido incorporada en los
similares)
planes de estudio a nivel global, desde la
Tendencia 3 Utilizar como primer lenguaje primaria y hacia a delante en la escala
de programacin formal herramientas acadmica, dado que representa una gran
dinmicas, de sintaxis simple y de estructuras oportunidad para mejorar las habilidades de
los estudiantes al desarrollar competencias

Centro de la Innovacin la Agroindustria y la Aviacin 7|Pgina


especficas del pensamiento que se extrapolan Manifiesto del reino unido para
a otras reas acadmicas y a la vida cotidiana. ensear ciencias de la computacin
Para este, efecto se usan conceptos ldicos y http://www.theguardian.com/education/2
de videojuegos, explicando las bases de la 012/mar/31/manifesto-teaching-ict-
lgica de programacin pasando a lenguajes education-minister
formales de estructuras sintcticas simples y Campaa de alfabetizacin digital
llegando a conceptos avanzados. http://www.theguardian.com/education/2
012/jan/11/digital-literacy-michael-gove-
Es necesario evaluar las competencias previas
speech
de los interesados en iniciar la formacin en
Futuro de la educacin primaria en la
programacin de computadores para
programacin
determinar la mejor estrategia a seguir, de
http://blogthinkbig.com/aprender-
forma que este proceso sea gradual y
programar-futuro-educacion/
motivante, en donde se avance conforme las
Listado de pases con mejores
habilidades previas y se llegue a las deseadas.
instituciones en ciencias de la
Esto implica que cada formacin es un
computacin
proceso individual centrado en el estudiante y
http://www.businessinsider.com/countrie
que requiere de un acompaamiento
s-with-the-best-colleges-for-computer-
apropiado para ir avanzando gradual y
science-2015-10
positivamente en el mundo de la
Mejores universidades en la enseanza
programacin.
de ciencias de la computacin
http://www.usnews.com/education/best-
Lecturas de profundizacin sugeridas global-universities/computer-science
Las 50 ciudades para estudiar ciencias
Programacin en las escuelas de la computacin
http://www.eldiario.es/turing/Ninos- http://www.computersciencedegreehub.c
programadores-ensenanza- om/50-great-cities-studying-computers-
programacion- technology/
escuelas_0_293970921.html El caso de Estonia y la programacin
en primaria
http://www.forbes.com/sites/parmyolson/

Centro de la Innovacin la Agroindustria y la Aviacin 8|Pgina


2012/09/06/why-estonia-has-started- Currculo oficial del reino unido para
teaching-its-first-graders-to- ensear a programar
code/#4cf7d6df5790 https://www.gov.uk/government/publicat
Programando en las primarias del ions/national-curriculum-in-england-
reino unido computing-programmes-of-
https://www.theguardian.com/technology study/national-curriculum-in-england-
/2014/sep/04/coding-school-computing- computing-programmes-of-study
children-programming 15 lenguajes de programacin que
Un currculo de programacin para deberas conocer
preparatoria http://mashable.com/2015/01/18/progra
http://mashable.com/2013/09/22/coding- mming-languages-
curriculum/#8t6rPknH98qM 2015/#_VqbQMTWGEqX
Pocas mujeres estudian ciencias de la Entendiendo la alfabetizacin en
computacin programacin
http://readwrite.com/2014/09/02/women- http://www.licsjournal.org/OJS/index.ph
in-computer-science-why-so-few/ p/LiCS/article/view/24/26
Retraso de Canad para ensear a los Conceptos de programacin entorno a
nios a programar la herramienta Scratch
http://www.cbc.ca/news/technology/back http://www.computer.org/csdl/proceedin
-to-school-canada-lagging-in-push-to- gs/digitel/2010/3993/00/3993a219-
teach-kids-computer-coding-1.3185926 abs.html
Las escuelas necesitan saber mejor de
ciencias de la computacin
http://www.cbc.ca/news/canada/newfoun
dland-labrador/schools-need-better-
computer-science-education-group-says-
1.3135626
Informe de la educacin en Europa
http://www.informatics-
europe.org/images/documents/informatic
s-education-europe-data-2009-2014.pdf

Centro de la Innovacin la Agroindustria y la Aviacin 9|Pgina