Pensamiento Computacional en Matemáticas con Scratch
Pensamiento Computacional en Matemáticas con Scratch
Pensamiento
computacional
ARTíCuloS
Julio 2019
91 y aprendizaje
de las matemáticas
pp. 15-22
a través de Scratch
Víctor López
edeLmira BadiLLo
cristina simarro
digna couso
Presentamos una breve secuencia formativa realizada en en los últimos años ha habido una eclosión de 15
la asignatura de Aprendizaje de las Matemáticas con herramientas educativas vinculadas a las activi-
futuros maestros del grado de Educación Primaria. Se 91
dades de programación, robótica y otras activi-
propone a los estudiantes diseñar mediante el lenguaje de
programación por bloques Scratch un pequeño videojuego dades que se engloban dentro del paraguas lla-
del Pong, donde una pelota se mueve aleatoriamente y mado «pensamiento computacional». esta idea
rebota por toda la pantalla, y mediante una pala se debe aparece actualmente en muchos de los nuevos
evitar que la pelota se cuele por la parte inferior de la
pantalla. El diseño de este videojuego lleva a los
currículos y planes educativos. por ejemplo, la
estudiantes a enfrentarse en pequeños grupos a distintos idea de «usar las matemáticas y el pensamiento
retos, tanto matemáticos como computacionales, a partir computacional» se considera una de las ocho
de los cuales surgen diferentes estrategias de resolución. A
prácticas científicas clave del K12 next genera-
través de la discusión de las estrategias llevadas a cabo por
los estudiantes pretendemos identificar algunas de las tion science education standards (nrc, 2012),
oportunidades didácticas que ofrece Scratch en la y también es uno de los elementos centrales del
enseñanza y aprendizaje de la matemática escolar. reciente paradigma educativo stem o steam
Palabras clave: Scratch, Programación, Pensamiento (simarro, López, cornellà, peracaula, niell y es-
computacional, Geometría, Resolución de problemas.
tebanell, 2016). Las actividades de programación
y robótica se multiplican tanto en contextos for-
Computational thinking and mathematics learning using
males (en asignaturas de programación, vinculada
Scratch
a la enseñanza-aprendizaje de otros contenidos
We present a brief instructional sequence in Mathematics
Education course for pre-service primary school teachers. curriculares, a través de proyectos steam) como
Students have to design a simple Pong videogame using no formales (extraescolares, clubs de programa-
programming language Scratch, in which a ball moves ción, concursos y ligas de diseño de robots), y
randomly around the screen, and players have to move a
su presencia se observa en todas las etapas edu-
spade to avoid the ball slip down. The design process
brings students to face both mathematic and cativas (desde las beebots preescolares hasta las
computational challenges, and different strategies arise. competiciones universitarias de robots).
By discussing those strategies, we aim to identify some of detrás de este enfoque educativo subyace la
the learning opportunities offered by Scratch for
mathematics teaching and learning in school. idea de que aprender a pensar computacional-
Keywords: Scratch, Programming, Computational thinking, mente (y aprender pensando computacional-
Geometry, Problem solving. mente) es clave para la resolución de problemas
Julio
2019
y para el diseño de todo tipo de soluciones (Wing, a partir de 6 años crear y compartir una gran va-
2006), usando estrategias como la división de pro- riedad de creaciones (animaciones y narraciones,
blemas complejos en módulos de tamaño inferior, presentaciones, imágenes interactivas, simulacio-
la secuenciación de procesos largos y complejos nes, juegos, etc.), mediante la construcción de
en pasos, la organización de datos reconociendo bloques de programación a partir de piezas, como
patrones lógicos, la generalización de casos con- si se tratara de un sencillo rompecabezas. cada
cretos para llegar a situaciones abstractas y gene- pieza constituye una línea de código, con los que
ralizables, el uso de algoritmos para automatizar el usuario puede definir variables, cambios en la
soluciones, o la validación y revisión constante apariencia de los personajes, funciones condicio-
de las soluciones propuestas (selby y Woollard, nales («si», «solo si», «siempre que», etc.), funciones
2014). por un lado, este enfoque construccionista lógicas y operadores matemáticos («y», «o», «+»,
está en clara sintonía con el enfoque indagativo y «mayor que», etc.), así como los inputs que hagan
modelizador del ámbito científico (Wagh, cook- ejecutar cada elemento del programa («al pulsar
Whitt y Wilensky, 2017), pero por el otro, no se una tecla», «al mover el ratón», etc.). Los distintos
trata de habilidades excluyentes para los profe- colores (figura 1) representan diferentes tipos de
sionales stem, sino de competencias transver- funciones: azul para el movimiento de los objetos,
sales para la ciudadanía (zapata-ros, 2015). en morado para la apariencia, marrón para los even-
este sentido, autores como Brennan y resnick tos, verde para los operadores matemáticos y ama-
(2012) han puesto el énfasis en que aprender a rillo para los elementos de control. su interfaz de
pensar computacionalmente no pasa solamente programación permite ver a la vez el código que
16 por aprender conceptos computacionales (se-
cuencias, bucles, paralelismos, eventos, condicio-
se crea (las piezas en bloques) y un escenario con
personajes que interactúan según las reglas que
91
nales, operadores y datos), sino además por par- se le determina con este código. cada usuario
ticipar de las prácticas computacionales (incre- puede guardar y compartir sus pequeños proyec-
mentar e iterar, testear y depurar, reutilizar y com- tos, pero también reusar los proyectos de otros
binar, abstraer y modularizar) y de las perspectivas usuarios.
computacionales (expresar, conectar y cuestionar).
estas prácticas y perspectivas, además, ayudan a
entender la próxima naturaleza de las prácticas
profesionales científicas, matemáticas e ingenie-
riles, cada vez más inmersas en un mundo digital
y donde la modelización computacional ha rede-
finido la propia naturaleza de estas disciplinas
(Weintrop y otros, 2016).
Julio
2019
— el reto de definir y ejecutar el movimiento el movimiento de los dos principales objetos que
del balón y de la pala. intervienen en el juego: el balón y la pala. para
— el reto de definir la interacción entre el ello, se les plantea la siguiente demanda:
balón y la pala.
— el reto de refinar o ampliar el juego para
a) El lenguaje Scratch tiene un conjunto de bloques de
mejorar su funcionamiento e incorporar programación de color marrón llamado «Eventos», que son
comportamientos que añadan realismo y necesarios para ejecutar cada bloque de piezas. ¿de qué
motivación. maneras se puede hacer ejecutar el movimiento de la pelota
y el movimiento de la pala? ¿Qué diferencias existen y por
qué?
a través de los retos que se plantean al alum-
nado participante, a continuación, presentamos b) El lenguaje Scratch tiene un conjunto de bloques de
programación de color azul, que permiten definir el
y discutimos cuáles son las estrategias de resolu- movimiento de los personajes. ¿de qué maneras se puede
ción que emergen en los diferentes grupos de definir el movimiento de los objetos con Scratch y cuál es
más conveniente para definir el movimiento de la pala y el
trabajo, así como las oportunidades didácticas movimiento de la pelota?
que identificamos tanto para desarrollar el pen-
samiento matemático como el computacional.
a partir de esta doble demanda (definir cada
movimiento mediante bloques de programación
El reto de definir y ejecutar y a su vez definir la manera en cómo se ejecuta
el movimiento del balón y de la pala cada bloque), afloran múltiples discusiones. Los
estudiantes se percatan de las diferencias entre
18 el taller, de hecho, empieza planteando a los es-
tudiantes qué elementos debe tener el juego para
el movimiento del balón y de la pala: el balón se
mueve en todas direcciones, mientras que la pala
91 funcionar. en una actividad de exploración de solo lo hace en el eje horizontal. esto les lleva a
ideas previas seguida de una puesta en común preguntarse qué tipo de coordenadas ayudan a
en la pizarra digital (figura 3), los estudiantes describir mejor cada movimiento, apareciendo
identifican los objetos físicos; las magnitudes que así la distinción entre describir el movimiento
definen el comportamiento de estos objetos físi- mediante los ejes X e Y (coordenadas cartesianas)
cos; las reglas que determinan la interacción entre o mediante pasos en una dirección y giros res-
los personajes; así como otros elementos que pecto esta dirección (coordenadas polares).
permitirían mejorar el juego, haciéndolo más rea-
lista o más emocionante para un jugador.
una vez realizada la discusión inicial, se pro-
pone a los estudiantes el reto de definir y ejecutar
en la figura 4 se observan las dos propuestas introduce dentro de la pieza de control «por Julio
2019
para definir el movimiento de la pala, ambas pen- siempre» el movimiento de la pelota no es el es-
sadas para que el jugador controle este movi- perado. en otras palabras: que las piezas de có-
miento con las flechas laterales del teclado. mien- digo no cumplen la propiedad conmutativa.
tras un grupo aboga por definir el desplazamiento
lateral sumando y restando valores a la posición
X de la pala, el segundo grupo aboga por girar la El reto de definir la interacción
pala 180º y hacerla avanzar siempre hacia la di- entre el balón y la pala
rección en la que apunta. a su vez, este disenso una vez definidos estos dos movimientos (figuras
lleva a una nueva cuestión: ¿cuál es la mejor so- 4 y 5), los estudiantes pronto se dan cuenta que
lución desde el punto de vista computacional? con esto no basta, y que hay que definir la inte-
esto permite plantear una importante perspectiva racción entre balón y pala. para ello, se les plantea
computacional: ¿todo código en un programa la siguiente demanda:
informático debe tender al máximo de simplici-
dad?
además de definir el movimiento de la pala, Ahora que ya están definidos los 2 movimientos, debemos
definir la interacción entre los dos personajes: la pelota
la discusión se vuelve aún más intensa cuando debe rebotar sobre la pala, y en caso de no hacerlo, perder
se enfrentan al reto de definir el movimiento del el juego.
balón. a diferencia de lo que ocurre con la pala, c) El lenguaje Scratch tiene un conjunto de bloques de
el balón debe moverse solo por la pantalla, sin ir programación de color amarillo llamado «Control», que sirven
19
para estructurar, secuenciar las órdenes que recibe cada
controlando su movimiento con el teclado. al- personaje. Se pueden definir repeticiones (finitas o infinitas), y
gunos estudiantes, por ejemplo, proponen un pa- también condiciones del estilo «si … entonces .…». ¿de qué
maneras se puede definir la interacción que se da en el
trón de movimiento a partir de una secuencia de rebote? Ten en cuenta que Scratch no tiene una opción del
91
órdenes que simulen un movimiento caótico por estilo «si un personaje toca a otro, que rebote», sino que hay
que definir matemáticamente el rebote para poder introducir
toda la pantalla (figura 5, izquierda), pero pronto un algoritmo concreto en el lenguaje Scratch.
se dan cuenta que en cada partida el balón se
d) igual que has hecho en el apartado anterior, utilizando las
moverá igual. después de múltiples versiones, la piezas «Control», prueba a definir qué ocurre cuando el
mejor solución propone definir una dirección balón se cuela por debajo (no conseguimos hacerla
rebotar). Al igual que antes, Scratch no tiene una opción del
aleatoria inicial, que en cada partida sea distinta estilo «si un personaje toca un lateral, que pierda», sino que
y que permita al balón desplazarse libremente y hay que definirla. Prueba a traducir esta expresión matemá-
ticamente, para luego traducirla de nuevo al lenguaje
de forma indefinida. Scratch.
igual como ocurre con el movimiento de la
pala, desde el punto de vista computacional, los
estudiantes discuten sobre cómo combinar las La construcción de un algoritmo que defina
diferentes piezas de código. por ejemplo, se dan el rebote de la pelota sobre la pala supone posi-
cuenta que si la pieza «apuntar en dirección» se blemente el mayor reto matemático a lo largo
Figura 5. dos propuestas diferentes para definir el movimiento del balón, mediante definición de desplazamientos entre puntos
en el plano (izquierda) y mediante una dirección inicial aleatoria y una repetición de pasos (derecha).
Julio
2019
del taller. puesto que todos los grupos de estu- borde», igual que anteriormente se ha hecho con
diantes han usado las coordenadas polares para el «tocando pala». a su vez, la manera de repre-
definir el movimiento del balón (figura 5, dere- sentar en scratch que se pierde la partida también
cha), de forma intuitiva, el rebote es concebido es diferente en cada grupo. entre una amplia va-
inicialmente como un cambio en el signo del án- riedad de formatos originales para representar
gulo. es común durante la discusión en pequeños en el juego que se ha perdido, los estudiantes
grupos oir expresiones como: «cuando rebota, proponen que el balón desparezca, cambie de
pasa de apuntar a 40º a –40º, ya que es ángulo aspecto, o bien aparezca un texto o sonido que
20 inverso». esto tendría sentido si no fuera porque indique que se ha perdido.
91
en el lenguaje scratch, todo ángulo se define a
partir del eje vertical y, por lo tanto, el algoritmo
necesario para definir el rebote horizontal re-
quiere de una relación entre ángulos suplemen-
tarios. es decir, se requiere considerar que los
ángulos de entrada y de salida del rebote sumen
180º, lo que puede traducirse en lenguaje scratch
mediante un programa como el representado en
la figura 6 (derecha).
en la discusión sobre qué algoritmo permite
relacionar estos ángulos surgen diferentes estra-
tegias. algunos grupos de estudiantes siguen una
estrategia de ensayo y error, mientras que otros
buscan relaciones a través de simetrías en el plano.
en paralelo a la definición de qué le sucede al Figura 7. dos maneras de definir qué sucede cuando
balón al tocar a la pala, los estudiantes deben de- el balón se cuela por debajo: definiendo la posición y
finir también qué sucede cuando este se cuela (arriba) o definiendo tocar otro personaje (abajo)
por debajo de la posición de la pala. algunos
grupos de estudiantes optan por describir esta a lo largo de este reto, además, son múltiples
condición usando de nuevo los ejes de coorde- las discusiones, dudas y cuestiones sobre cómo
nadas. en este caso, para usar la relación de valor las distintas piezas deben ordenarse unas dentro
de Y inferior a –150, ya que define el semiplano de otras, secuenciarse, usarse en paralelo, etc. sin
que vendría a ser el borde inferior de la pantalla duda, este contexto de discusión y construcción
(figura 7, izquierda). otros grupos optan por in- de conocimiento es otra evidencia de la genera-
corporar al nuevo juego un nuevo personaje, en ción de interesantes oportunidades de aprendi-
este caso una simple barra horizontal que actúe zaje, tanto de ideas computacionales, como co-
de borde inferior, y definen la opción «tocando nectadas también al desarrollo del proceso de
Julio
2019
Figura 8. dos propuestas distintas de ampliación del juego: añadiendo dificultad creciente (izquierda) o realismo (derecha)
razonamiento y pensamiento conjetural del cu- vez que rebota, para así hacer que el juego sea
rrículo de matemáticas por competencias. por acelerado y con dificultad creciente. para ello, de-
ejemplo, los estudiantes no solo deben usar los finen la variable «velocidad» de manera que el ba-
controles de tipo «si … entonces…» y «por siem- lón ya no se mueve a 10 pasos por unidad de
pre…», sino que deben decidir cómo se combi- tiempo, sino a «velocidad» pasos por unidad de
nan entre ellos, ya que no es lo mismo un «por tiempo, y a su vez determinan que tras cada rebote
siempre si» que un «si por siempre». la velocidad incrementa en un punto (figura 8, iz-
quierda). otros grupos optan por modelizar com-
portamientos físicos que añadan realismo al re-
El reto de refinar y ampliar el juego bote. por ejemplo, un estudiante propone añadir
el desarrollo del trabajo en pequeños grupos ge- realismo reproduciendo un rebote que no sea
perfecto, sino con pequeñas desviaciones aleato-
21
nera diferentes ritmos de trabajo, que en gran
rias de ±10º, que simulan posibles irregularidades
91
medida vienen dados por la experiencia previa
de cada grupo en el lenguaje scratch, el pensa- de la superficie de la pala (figura 8, derecha).
miento computacional y los entornos de progra-
mación en general. así, a aquellos grupos que
han logrado los dos retos anteriormente presen- Conclusiones
tados, es decir, que ya disponen de una versión
funcional del videojuego de pong, se les proponen este taller realizado con estudiantes para maes-
diferentes retos avanzados. estos pueden ser en tros del grado de educación primaria ofrece múl-
torno a ampliar el juego para hacerlo más emo- tiples oportunidades de aprendizaje, que permiten
cionante, ya sea añadiendo vidas, puntos, obstá- identificar el potencial del lenguaje de progra-
culos, etc. por ejemplo, uno de los grupos se le mación scratch para la enseñanza y aprendizaje
ocurre que el balón se mueva más rápido cada de las matemáticas escolares.
Julio
2019
para resolver los retos que se les plantean, los cordoVa, p. (2013), Crear jocs amb Scracht,
estudiantes deben movilizar tanto ideas y razona- <https://crearjocs.blogspot.com.es/2013/07/
mientos del pensamiento matemático como del pong.html>.
pensamiento computacional (tabla 1). de hecho, eLLis, d. (2004), A Brief History of Video Games.
Official Price Guide to Classic Video Games, random
esta coordinación entre lo matemático y lo com-
House, 3-5.
putacional es especialmente interesante desde la gamBoa, g., e. BadiLLo y m. riBeiro (2015), «el
perspectiva del establecimiento de conexiones in- horizonte matemático en el conocimiento para la
tramatemáticas y extramatemáticas en el aula de enseñanza del profesor: geometría y medida en
matemáticas (gamboa, Badillo y ribeiro, 2015). educación primaria», PNA, 10(1), 1-24.
maLoneY, J., m. resnicK, n. rusK, B. siLVerman y
e. eastmond (2010), «the scratch programming
Agradecimientos language and environament», ACM Trans. Comput.
Educ., 10(4), article 16.
este trabajo ha sido posible gracias al proyecto nrc (2012), A framework for K-12 Science Education.
pecoFim (armiF2016 00031) y a los grupos Practices, Crosscutting Concepts and Core Ideas, the
national academies press, Washington, d.c.
de investigación educativa aceLec (2017s
seLBY, c., y J. WooLLard (2014), Refining an unders-
gr1399) y gipeam (2017sgr101). tanding of computational thinking, university of
southampton.
simarro, c., V. López, p. corneLLà, m. peracauLa,
Referencias bibliográficas m. nieLL y m. esteBaneLL (2016), «més enllà de
22 Benton, L., c. HoYLes, i. KaLas y r. noss
la programació i la robòtica educativa: el pensament
computacional en l’ensenyament steam a infantil
91 (2017), «Bridging primary programming and ma- i primària. ciències» Revista del Professorat de Ciències
thematics: some findings of design research in d’Infantil, Primària i Secundària, 32, 38-46.
england», Digital Experiences in Mathematics Educa- WagH, a., K. cooK-WHitt y u. WiLensKY (2017),
tion, vol. 3, n.º 2, 115-138. «Bridging inquiry-Based science and construc-
Brennan, K., y m. resnicK (2012), «new frame- tionism: exploring the alignment Between stu-
works for studying and assessing the development dents tinkering with code of computational mo-
of computational thinking, Proceedings of the 2012 dels and goals of inquiry», Journal of Research in
annual meeting of the American Educational Research Science Teaching, 54, 615-641.
Association, Vancouver, 1-25. Weintrop, d., e. BeHesHti, m. Horn, K. orton,
Burgués, c., y J. sarramona (coord.) (2013), Compe- K. Jona, L. trouiLLe y u. WiLensKY (2016),
tències bàsiques de l’àmbit matemàtic. Identificació i des- «defining computational thinking for mathe-
plegament a l’educació primària, generalitat de cata- matics and science classrooms», Journal of Science
lunya. departament d’educació. direcció general Education and Technology, 25(1), 127-147.
d’educació infantil i primària, Barcelona. Wing, J. m. (2006), «computational thinking», Com-
caLao, L. a., J. moreno-León, H. e. correa y g. munications of the ACM, 49(3), 33-35.
roBLes (2015), Developing mathematical thinking with zapata-ros, m. (2015), «pensamiento computacional:
Scratch. Design for teaching and learning in a networked una nueva alfabetización digital», Revista de Edu-
world, springer international publishing, 17-27. cación a Distancia, 46, 1-47.
VíCToR lóPEz
<[email protected]>
EdElMiRA BAdillo
<[email protected]>
diGnA CouSo
<[email protected]>
CRiSTinA SiMARRo
<[email protected]>
Universitat Autònoma de Barcelona