¿Por qué enseñar programación con bloques?

Los entornos de programación basados ​​en bloques se están convirtiendo cada vez más en la primera experiencia de programación para muchos estudiantes1, a medida que más y más escuelas comienzan a introducir y ampliar cursos y planes de estudio de informática. Uno de los lenguajes de programación basados ​​en bloques más populares se llama Scratch2(scratch.mit.edu). Cada día, se cargan más de 1.500 nuevos proyectos de programación en el sitio de Scratch3. VEXcode funciona con bloques Scratch.

Estudiantes haciendo robótica.

Una de las principales motivaciones detrás de la creación de Scratch es que muchos estudiantes jóvenes encuentran demasiado difícil programar con lenguajes de programación basados ​​en texto4, ya que a estos estudiantes les resulta difícil dominar tanto la mecanografía como la sintaxis. Como resultado, los lenguajes de programación basados ​​en bloques se han diseñado para estudiantes desde preescolares, pero la mayoría están diseñados para estudiantes de entre 8 y 16 años. La programación basada en bloques, incluido VEXcode, presenta varias ventajas para los programadores principiantes5.

  1. Legibilidad:Los lenguajes de programación basados ​​en bloques tienen comandos que son mucho más fáciles de leer que los comandos basados ​​en texto.
  2. Memorización:Los lenguajes de programación basados ​​en bloques tienen todos sus comandos visibles para el usuario. Con los lenguajes de programación basados ​​en texto, a menudo es necesario memorizar los comandos. Además, los usuarios deben memorizar la sintaxis asociada con los comandos de texto. No hay ninguna sintaxis asociada con los comandos basados ​​en bloques.
  3. Mecanografía/ortografía:Los estudiantes más jóvenes tienen dificultades para usar el teclado. Los errores ortográficos se convierten en errores de compilación con un lenguaje de programación basado en texto. Los lenguajes de programación basados ​​en bloques utilizan arrastrar y soltar. Por lo tanto, no es necesario mecanografiar ni dominar la ortografía.

Aunque está demostrado que es más fácil para los usuarios novatos comenzar a programar con un lenguaje de programación basado en bloques, aún es importante preguntarse si los lenguajes basados ​​en bloques son efectivos para enseñar conceptos de informática. La respuesta corta es sí. Las investigaciones han demostrado que los lenguajes de programación basados ​​en bloques han sido eficaces en la enseñanza de conceptos informáticos como algoritmos, variables, lógica condicional y comprensión de códigos6.

Por supuesto, existen algunas desventajas al utilizar lenguajes de programación basados ​​en bloques. Por ejemplo, los estudiantes a veces pueden sentir que usar bloques no es una experiencia de aprendizaje “auténtica”7. En otras palabras, los programadores reales no utilizan bloques. Este es un aspecto importante a tener en cuenta, pero también es importante tener en cuenta los desafíos bien documentados que los lenguajes de programación basados ​​en texto presentan a los programadores novatos.

Como educadores, sabemos que las herramientas que utilizamos para enseñar conceptos cambian a medida que cambian los estudiantes. Se enseñan matemáticas K - College. Las herramientas que se utilizan para enseñar a un niño de primer grado son muy diferentes a las herramientas que se utilizan para enseñar a un niño de tercer año en la universidad. Las investigaciones han demostrado que los lenguajes de programación basados ​​en bloques son más fáciles de usar para los principiantes y son un medio eficaz para enseñar temas importantes de informática. Sin embargo, esto no significa que los estudiantes deban o necesiten permanecer siempre en un entorno de programación basado en bloques. En cambio, una mejor conclusión es que una modalidad de programación, bloques o texto, no es inherentemente mejor que la otra8. Cuál sea el adecuado para su salón de clases dependerá tanto de su nivel de comodidad como educador como de la preparación de sus alumnos. Así como los estudiantes dominan las tablas de multiplicar a diferentes ritmos, algunos estudiantes dominarán la programación con bloques más rápido que otros. La oportunidad de comenzar con la programación basada en texto los mantendrá interesados ​​y desafiados. Herramientas como VEXcode y Text le permiten conocer a cada estudiante en su nivel de instrucción individual.


1Weintrop, David. "Programación basada en bloques en la educación en informática". ACM. 01 de agosto de 2019. 10 de septiembre de 2019 / https://cacm.acm.org/magazines/2019/8/238340-block-based-programming-in-computer-science-education/fulltext

2Resnick, Mitchel, Brian Silverman, Yasmin Kafai, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum y Jay Silver. "Rascar." Comunicaciones de la ACM 52 (2009): 60.

3Resnick, Mitchel, Brian Silverman, Yasmin Kafai, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum y Jay Silver. "Rascar." Comunicaciones de la ACM 52 (2009): 60.

4Kölling, Michael, Neil CC Brown y Amjad Altadmri. "Edición basada en cuadros". Actas del Taller en Educación Informática Primaria y Secundaria - WiPSCE '15 (2015).

5Kölling, Michael, Neil CC Brown y Amjad Altadmri. "Edición basada en cuadros". Actas del Taller en Educación Informática Primaria y Secundaria - WiPSCE '15 (2015).

6Weintrop, David y Uri Wilensky. "Comparación de la programación basada en bloques y en texto en las aulas de informática de la escuela secundaria". Transacciones ACM sobre educación en informática 18 (2017): 1-25.

7Weintrop, David. "Programación basada en bloques en la educación en informática". ACM. 01 de agosto de 2019. 10 de septiembre de 2019 / https://cacm.acm.org/magazines/2019/8/238340-block-based-programming-in-computer-science-education/fulltext

8Weintrop, David y Uri Wilensky. "Cómo las modalidades basadas en bloques, basadas en texto y híbridas de bloque/texto dan forma a las prácticas de programación de los principiantes". Revista internacional de interacción niño-computadora 17 (2018): 83-92.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: