0% encontró este documento útil (0 votos)
67 vistas9 páginas

Enseñanza de La Programacion Con Swift

Este documento presenta los resultados de una secuencia didáctica donde estudiantes de educación media superior aprendieron programación con Swift Playground. Los estudiantes resolvieron acertijos y proyectos para practicar conceptos como algoritmos, depuración, funciones y ciclos. La mitad logró generar nuevas funciones en sus proyectos finales a pesar de poca experiencia previa programando. La mayoría opinó que las actividades fueron buenas y deberían continuar, aunque no quedó clara la utilidad de la programación.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
67 vistas9 páginas

Enseñanza de La Programacion Con Swift

Este documento presenta los resultados de una secuencia didáctica donde estudiantes de educación media superior aprendieron programación con Swift Playground. Los estudiantes resolvieron acertijos y proyectos para practicar conceptos como algoritmos, depuración, funciones y ciclos. La mitad logró generar nuevas funciones en sus proyectos finales a pesar de poca experiencia previa programando. La mayoría opinó que las actividades fueron buenas y deberían continuar, aunque no quedó clara la utilidad de la programación.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 9

6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

Enseñanza de la Programación con Swift Playground: una experiencia en la


Educación Media Superior

Computer Programming Learning with Swift Playground: An experience in


High School Education

Avila Vázquez Roberto, Profesor de Taller de Cómputo, Sección Bachillerato, Coordinación de


Educación Tecnológica, Colegio Madrid A.C. México, [email protected]

Pérez García Jesús Román, Profesor de Taller de Cómputo, Departamento de Tecnologías de


la Información, Colegio Madrid A.C., México, [email protected]

Línea temática (marcar con X):


__Tendencias educativas X Tecnologías para la educación
__Gestión de la innovación educativa __Innovación académica en salud
__Formación a lo largo de la vida

Resumen
El trabajo presenta los resultados de una secuencia didáctica donde los alumnos tienen su primer
contacto con la programación en Swift a través del uso de la suite de Playground “Aprende a
Programar”. Se presentó a los jóvenes una estrategia de gamificación no competitiva para evitar que
tuvieran sesgos negativos hacia la programación y conocieran lo que implicaba el aprendizaje de la
materia. Se realizaron cuatro sesiones en las cuales resolvían los acertijos propuestos por la
plataforma y al final presentaron un proyecto final donde debían de generar funciones nuevas a través
de la programación de una mascota virtual, partiendo de un script probado previamente. Se aplicó
una encuesta a 34 de los 102 participantes. La mitad de los proyectos presentados lograr generar
nuevas funciones y ejecutarlas de manera correcta considerando que el 61.8% de los alumnos
encuestados no tenía una experiencia previa programando. 76% de los participantes consideró que
deben de seguirse realizando esta clase de actividades y 90% de los encuestados consideraron
buenas las actividades realizadas. Se considera que debe realizarse un esfuerzo para evidenciar el
uso de la programación en la vida profesional ya que no quedó clara su utilidad a los encuestados.
6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

Abstract

The work presents the results of a didactic sequence where students have their first contact with
programming in Swift through the use of the Playground suite "Learn to Code". They worked with a
non-competitive gamification strategy to avoid negative biases towards programming, but with
conscience about the main concepts of the subject. Four sessions were held in which they solved the
riddles proposed by the platform and finally presented a final project where they had to generate new
functions through the programming of a virtual pet, based on a previously tested script. A survey was
applied to 34 of the 102 participants. Half of the submitted projects manage to generate new functions
and execute them correctly, considering that 61.8% of the students surveyed did not have previous
experience. 76% of the participants considered that this kind of activities should continue to be carried
out and 90% of the respondents considered the activities good or excellent. It is considered that an
effort should be made to demonstrate the use of programming in professional life since it was not clear
its usefulness to the respondents.

Palabras clave: Educación STEM, Aprendizaje de la Programación, Swift, iPad

Key words: STEM, Programming Learning, Swift, iPad


6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

1. Introducción

La enseñanza de la programación se vuelve cada día un reto que debe ser abordado en la educación
media superior para afrontar los retos del futuro. En profesiones cada vez más lejanas de la ingeniería
como la medicina el derecho o la música requerirán en muy pocos años habilidades de programación
para el ejercicio de sus actividades cotidianas. En este contexto, la enseñanza de la programación en
la educación media superior se vuelve indispensable para una formación global y completa para los
jóvenes de nuestra generación.

Ante este reto, el Colegio Madrid toma la decisión de cambiar el programa de Taller de Cómputo para
primer año de Bachillerato, de tal forma que incluya un bimestre de introducción a la programación.
Se tomó la decisión de incorporar en la enseñanza el aplicativo Swift Playground, mediante la
resolución de Aprende a Programar 1 y utilizando las herramientas de Aprende a programar 3 para
realizar un proyecto final. En este documento se presentan los resultados sobre el proyecto que
realizaron los estudiantes y la percepción general de su proceso de aprendizaje.

2. Desarrollo

2.1 Marco teórico

La Coordinación de Educación Tecnológica del Colegio Madrid toma como referencia los Estándares
para Alumnos de la Sociedad Internacional para la Tecnología en la Educación (ISTE, 2016) y el
Programa de Estudios del Colegio de Ciencias y Humanidades (CCH, 2016). Los Estándares ISTE
(por sus siglas en inglés) establecen cinco competencias que deben ser desarrolladas en los
estudiantes: aprendiz empoderado, ciudadano digital, constructor de conocimiento, diseñador
innovador, pensador computacional, comunicador creativo y colaborador global. Estas competencias
son desarrolladas a través de los temas que marca el programa de estudios de CCH: Búsqueda de
información en Internet, elementos básicos de funcionamiento de Hardware y Software, uso de
herramientas multimedia y resolución de problemas mediante hoja electrónica de cálculo. Pensando
en reforzar la competencia de Pensador Computacional, se seleccionó un bimestre de la materia
anual del Taller de Cómputo (representando una cuarta parte del total de horas asignadas) para
dedicarlo a la Introducción a la Programación.
La enseñanza de la programación es un reto particularmente complejo en la enseñanza media
superior (Rudder, 2007), debido a la necesidad de habilidades cognitivas bien desarrolladas por parte
de los estudiantes y una gran preparación por parte de los docentes. Los primeros intentos formales
para introducir programación en enseñanza no universitaria fueron realizados por Papert con el
programa Logo (Solomon, 1976). De esa primera experiencia se han desarrollado diferentes
propuestas como la programación a bloques realizada en Scratch (Moreno, 2016; Papadakis, 2016) o
Raptor (Carlslile, 2005). Las propuestas llegan incluso al desarrollo de programas propios para la
enseñanza de la programación, como es el caso de Reduct (Arawjo, 2017).
6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

Dentro de los programas para la enseñanza de la programación, se eligió el uso de la suite de


Playground para iPad, dedicada al desarrollo de habilidades para el uso del lenguaje Swift. Esta
elección se ha realizado previamente como introducción para la enseñanza de la programación en
médicos (Kubben,2017). Playground apoya la gamificación de la programación a través de su
dinámica e interfaz, estrategia que de acuerdo con la literatura ha tenido resultados favorables como
los esfuerzos de Leutenegger (2007) o el uso de Code Hunt (Tillmann, 2014).
Kölling (1999) identifica los principales elementos que tiene un programa bien diseñado de enseñanza
de la programación: conceptos claros, orientación al concepto de objeto, seguridad, alto nivel (en el
sentido computacional, opuesto al lenguaje de máquina), modelo de ejecución simple, sintaxis legible,
sin redundancia, pequeño (en la longitud de los comandos), de fácil transición a otros lenguajes,
documentación de ayuda adecuada y ambiente de desarrollo agradable. Swift en general y el uso que
hace Playground en particular presenta varias de las características mencionadas anteriormente: es
un lenguaje de alto nivel en el que sus comandos son cortos y se puede incorporar elementos
gráficos además de comandos, la interfaz gráfica de Playground es agradable y guía a los estudiantes
para realizar sus actividades y la ejecución de los programas es relativamente rápida si no se
cometen errores. Por tanto, se implementó esta opción en nuestro curso, realizando una evaluación
final en Aprende a Programar 3 y un cuestionario final para ponderar las actividades del curso.

2.2 Planteamiento del problema

Para estructurar el curso se identificaron seis temas básicos para integrar esta actividad: Importancia
de la Programación, Concepto de Algoritmo, Depuración, Funciones y Ciclos, Código Condicional y
Operaciones Lógicas. Posteriormente se estableció una secuencia didáctica de seis sesiones, con
dos más para tener tiempo de realizar el Proyecto Final. Establecimos la siguiente idea central: La
programación basada en Swift proporciona herramientas para la resolución de problemas y la
expresión individual mediante la aplicación y comprensión de los conceptos de algoritmo, depuración,
funciones, ciclos, condicionales y operaciones lógicas. Establecimos los siguientes objetivos:
 Aplicar los conceptos de algoritmo, depuración, funciones, ciclos, condicionales y
operaciones lógicas por separado en actividades de gamificación no competitiva.
 Aplicar los conceptos de algoritmo, depuración, funciones, ciclos, condicionales y
operaciones lógicas en la realización de funciones dentro de un proyecto final.
 Generar nuevas funciones a partir de los ejercicios y proyectos proporcionados durante la
secuencia.
Tomando en cuenta lo anterior se establecieron los siguientes aprendizajes:
 El alumno reconocerá el ejemplo de algoritmo en situaciones de la vida cotidiana a través de
un diagrama de flujo.
 El alumno aplicará el concepto de depuración para resolver una actividad planteada en la
suite Playground.
 El alumno aplicará el concepto de función para incorporarlo a un programa ya establecido en
Playground.
6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

 El alumno aplicará el concepto de ciclo para la resolución de problemas en un entorno lúdico


en la Suite Playground.
 El alumno conocerá el concepto de condicional y lo aplicará en la resolución de problemas en
un entorno lúdico en la Suite Playground.
 El alumno realizará una investigación sobre operadores lógicos y lo presentará en un archivo
de texto.

2.3 Método
Para lograr los objetivos se planearon las siguientes actividades (Se marca una E para equipo y una I
para individual):
1. Introducción: (E) Los alumnos investigan el concepto de diagrama de flujo y realizan un
diagrama de una actividad cotidiana. (I) Posteriormente desarrollan la actividad de
introducción Hola Byte.
2. Depuración: (E) Los alumnos investigan el concepto de depuración y lo ejemplifican en un
video. (I) Posteriormente realizan la actividad de Aprende a Programar 1 correspondiente a
este tema.
3. Funciones y ciclos: (E) Los alumnos generan una secuencia de baile. Posteriormente
optimizan la secuencia usando el concepto de ciclo. Graban el resultado de su actividad. (I)
Finalmente realizan las actividades de Aprende a Programar 1 que son los retos
correspondientes a esta actividad.
4. Operaciones lógicas y Condicionales: (I) Los alumnos investigan sobre el concepto de
operador lógico y los principales operadores (AND, OR, NOT). Posteriormente realizan la
actividad de Aprende a Programar 1 sobre funciones condicionales.
5. Repaso: (I) Los alumnos copian y ejecutan un código generado por el profesor el cual genera
un botón que modifica un contador que se muestra en pantalla. Con otro botón se reinicia el
contador a cero.
Para entregar sus evidencias de Playground la suite tiene la opción de poder generar video de
manera automática, así que los alumnos entregaban un video de menos de 3 minutos con los
resultados de cada una de sus actividades de programación.
El Proyecto Final se desarrolló en dos partes y en equipo, que consistía en simular una mascota
virtual. En la primera parte los alumnos tomaron como base un proyecto realizado previamente para
que observaran las funciones que podían realizar y que debían de teclear de nuevo para asegurar la
atención en la actividad y que fueran cuidadosos al programar. Si ejecutaban el código correctamente
procedían a realizar el diagrama de flujo de las funciones que encontraran en el programa. En la
segunda parte los alumnos debieron de desarrollar entre tres y cinco funciones nuevas (dependiendo
del tiempo que se tuviera con cada grupo). Para realizar sus evidencias debieron generar un video y
entregar un archivo en formato PDF con el código que generaron (parte de la funcionalidad de
Playground) además de complementar sus diagramas de flujo con las funciones adicionales.
6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

Se recopilaron las evidencias de todas las actividades, videos en el caso de las actividades y archivos
de texto o video en el caso de las actividades fuera de la plataforma. Finalmente, 34 de los 102
alumnos que participaron en la clase realizaron un cuestionario de doce preguntas para evaluar la
actividad y obtener información adicional sobre el contexto en el cual se realizó la secuencia.

2.4 Resultados

De los 102 alumnos 35 no entregaron sus actividades completas. Este resultado se debe en parte a
que la actividad les resultó atractiva, aunque los formatos de las actividades y el uso de la plataforma
Google Classroom permitió que entregaran sus actividades, aunque fuera a destiempo y con menor
calificación. El hecho de que la mayor parte de los estudiantes entregaran sus actividades permitió
que la secuencia se desarrollara de manera completa y se cumplieran los objetivos planteados.
Se entregaron treinta proyectos finales, con las características resumidas en la Tabla I:

Objetivo Alcanzado Frecuencia


Completó el código proporcionado sin nuevas 5
funciones
Generó nuevas funciones pero con errores de 9
sintaxis
Generó nuevas funciones y logró ejecutarlas de 11
manera correcta
Generó nuevas funciones a partir de comandos 3
que investigó por su cuenta
Generó nuevas funciones a partir de comandos 2
que investigó por su cuenta y el número
solicitado de funciones

Tabla 1: Grado de avance del Proyecto Final

Vemos claramente que los alumnos fueron capaces de aplicar los conceptos aprendidos en nuevas
funciones, pero no tuvieron en su mayoría iniciativa para generar funciones con elementos
innovadores que requirieran investigación. La mayor parte de las funciones generadas cambiaron
íconos que se añadían en otras funciones o cambiaban el tamaño de los íconos. Aquellos que
generaron nuevas funciones innovadoras incorporaron sonido, otra movilidad o un patrón de íconos

nuevo. Se muestra un ejemplo de los proyectos terminados en: https://youtu.be/thTjrgVHsyE


6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

De la encuesta realizada se obtuvieron los siguientes resultados:


 61.8 % no tenía experiencia previa programando
 90% considera buenas las actividades realizadas en esta secuencia
 Considerando una escala de Likert de 1 a 10, considerando uno sencilla y diez muy difícil, la
dificultad promedio fue de 6.4, con moda en 8 y 9.
 26% de los alumnos considera que programar no será importante para su vida profesional.
 En una escala de Likert del 1 al 10, donde 1 es poco hábil y 10 muy hábil, consideran que su
habilidad programando es de 4.8.
 76.5% de los alumnos considera que debe seguirse realizando esta clase de actividades el
siguiente ciclo.
Los principales beneficios que reportaron los alumnos fueron que aprender jugando era muy útil, que
la actividad los relajaba, que podían ver de inmediato el resultado de la actividad, que la dinámica era
variada y que no se bloquearon al hacer las actividades. Entre las principales dificultades se
encuentra la falta de tiempo para realizar las actividades, que muchos no tienen paciencia para
realizar estas dinámicas, no entendieron bien el concepto de ciclo y formular los códigos
correctamente.

2.5 Discusión

Los resultados muestran una clara aceptación de la actividad, un enorme avance considerando las
resistencias propias de una actividad de enseñanza de programación. Es claro que algunos alumnos
perciben como negativa la actividad, especialmente porque pretenden dedicarse a áreas que
consideran alejadas de las habilidades de programación. Esta creencia no fue abordada en el diseño
de la actividad, por lo que debe incluirse una actividad que clarifique la importancia de la
programación en áreas como las artes plásticas y la música, la economía y las ciencias sociales. Este
resultado es particularmente significativo considerando que fue la primera experiencia de
programación para la mayoría de los estudiantes.
Otro éxito que se logró de la actividad es que los alumnos consideran que ni son buenos ni son malos
programando. De esa manera a pesar de la dificultad manifiesta de la actividad, no se generó una
percepción negativa de la programación a los alumnos, lo que sin duda facilitará la percepción de la
disciplina a aquellos que necesiten las herramientas en su formación profesional. La percepción
podría estar relacionada con el manejo del estrés en el aula, ya que no se percibió la clase ni
demasiado estresante ni relajada. Especialmente importante fue que en ningún momento la clase se
convirtiera en una competencia, sino que se dejara que cada alumno avanzara a su ritmo y
permitiendo que los alumnos menos adelantados entregaran sus trabajos en otros momentos. De
esta manera el alumno puede enfocarse en su aprendizaje y no en comparar su trabajo con otros
compañeros, que en muchos casos permitió la cooperación entre pares para solucionar problemas.
Los resultados del proyecto son los esperados. Fueron capaces de reproducir lo que se les
proporcionaba, pero no de generar ideas nuevas a partir de la investigación en su mayoría. No se les
6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

mencionó explícitamente la dificultad y novedad que debían de tener las funciones para motivo de
evaluación, de manera que los resultados reflejan el interés de los estudiantes por la materia. A pesar
de los intentos de motivación en el diseño, debe admitirse que solamente se percibió como una
materia académica más y cumplieron estrictamente los requerimientos sin investigar las posibilidades
del proyecto. Este resultado indica que deben encontrarse estrategias para que los estudiantes se
encuentren más motivados por la materia y las actividades que en ella se realizan.

3. Conclusiones

El uso de herramientas de gamificación no competitiva es percibida como agradable para la


enseñanza de la programación. Permitió generar una experiencia positiva al estudiante sobre la
materia y desarrollar sus habilidades sin disminuir el nivel de exigencia. Se debe mejorar la
percepción de los estudiantes sobre la programación al no considerarla útil para su desarrollo
profesional. Los proyectos finales presentados en esta actividad cumplieron con los requerimientos
solicitados pero no motivaron al estudiante a profundizar en el contenido de la actividad. Se debe
profundizar en temas como ciclos y decisiones para que el avance de los estudiantes sea mayor que
el de la experiencia presentada. Se confirma que la elección de Aprende a Programar de Playground
es una herramienta útil como primer acercamiento a la enseñanza de la programación para
estudiantes de bachillerato.

Referencias
Arawjo, I., Wang, C. Y., Myers, A. C., Andersen, E., & Guimbretière, F. (2017, May). Teaching
programming with gamified semantics. In Proceedings of the 2017 CHI Conference on Human
Factors in Computing Systems (pp. 4911-4923). ACM.
Carlisle, M. C., Wilson, T. A., Humphries, J. W., & Hadfield, S. M. (2005). RAPTOR: a visual
programming environment for teaching algorithmic problem solving. Acm Sigcse
Bulletin, 37(1), 176-180.
Kölling, Michael (1999) The Problem of Teaching Object-Oriented Programming, Part 1: Languages.
Journal of Object-Oriented Programming, 11 (8). pp. 8-15
Kubben, P. L., Looije, P., Scherpbier, A., & van Merode, F. (2017). Teaching computer programming
to medical doctors, nurses and hospital staff: a pilot study. Open Acces J Neurol
Neurosurg, 4(2), A.
Moreno, J., & Robles, G. (2016). Code to learn with Scratch. In A sistematyc literatura review. IEEE
Global Engineering Education Conference, EDUCON, Abu Dhabi (pp. 150-156).
Leutenegger, S., & Edgington, J. (2007, March). A games first approach to teaching introductory
programming. In ACM SiGCSE Bulletin (Vol. 39, No. 1, pp. 115-118). ACM.
Papadakis, S., Kalogiannakis, M., Zaranis, N., & Orfanakis, V. (2016). Using Scratch and App Inventor
for teaching introductory programming in secondary education. A case study. International
Journal of Technology Enhanced Learning, 8(3-4), 217-233.
6° CONGRESO INTERNACIONAL DE INNOVACIÓN EDUCATIVA- PONENCIA DE INVESTIGACIÓN

Rudder, A., Bernard, M., & Mohammed, S. (2007, March). Teaching programming using visualization.
In Proceedings of the Sixth IASTED International Conference on Web-Based Education (pp.
487-492).
Solomon, C. J., & Papert, S. (1976). A Case Study of a Young Child Doing Turtle Graphics in LOGO.
AI Memo 375. Massachussets Institute of Technology
Tillmann, N., De Halleux, J., Xie, T., & Bishop, J. (2014, March). Code Hunt: Gamifying teaching and
learning of computer science at scale. In Proceedings of the first ACM conference on
Learning@ scale conference (pp. 221-222). ACM.

Reconocimientos

Damos un especial agradecimiento a la profesora Rosa María Catalá Rodes (Directora General) y a la
profesora Ana María Jiménez Aparicio (Directora de Bachillerato) por su incondicional apoyo a la
educación tecnológica de nuestros estudiantes. Un reconocimiento especial al profesor Natzín García
Macías por su apoyo para presentar el presente trabajo.

También podría gustarte