Hay una escena que se repite en muchas casas. El niño lleva un tiempo haciendo cosas en Scratch —arrastrando bloques de colores, montando un juego— y en algún momento el padre o la madre piensa: "esto está muy bien, pero ¿cuándo pasa a programar de verdad? ¿Cuándo empieza con Python?". Como si Scratch fuera la sala de espera y el lenguaje escrito, la consulta del médico.
Es una intuición razonable, pero parte de un error de fondo. Trata bloques y texto como dos peldaños de la misma escalera, cuando en realidad son dos herramientas que quitan fricciones distintas. Los bloques no son un Python descafeinado ni una versión "para pequeños" del código real. La pregunta útil no es "¿cuándo saltamos de Scratch a Python?", sino "¿qué fricción conviene quitarle ahora para que aprenda a pensar, y cuándo toca añadir la que faltaba?".
Qué comparten (más de lo que parece)
Lo primero que conviene entender es que Scratch y Python enseñan, en su núcleo, lo mismo: secuencias, bucles, condicionales, variables, eventos, descomponer un problema en partes. Eso es pensamiento computacional, y no depende de si lo expresas arrastrando bloques o escribiendo palabras. Un bucle es un bucle tanto si dice "repetir 10" con un bloque como si dice for i in range(10): con texto.
Por eso es un error creer que el niño que "solo" hace Scratch no está aprendiendo conceptos reales. Los está aprendiendo. Lo que cambia entre una herramienta y otra no es la idea, sino la fricción que hay entre la idea y verla funcionar.
Qué te quita Scratch: la barrera de la sintaxis
La gran ventaja de los bloques es que eliminan una clase entera de problemas: los de sintaxis. Los bloques solo encajan de la forma gramaticalmente correcta, así que el niño no puede olvidarse de un punto y coma, escribir mal una palabra clave o cerrar mal un paréntesis. Como explica David Weintrop en Communications of the ACM, los entornos de bloques favorecen el reconocimiento sobre la memorización: el niño elige de una paleta lo que puede hacer, en lugar de recordar de memoria cómo se escribe cada instrucción.
Esto no es un truco para infantilizar: reduce de verdad la carga cognitiva del principiante. Hay evidencia empírica de que el formato de bloques disminuye la carga mental al comprender código, precisamente porque libera al aprendiz de pelearse con la forma para que pueda concentrarse en el fondo: la lógica. Cuando un niño de 9 años se atasca en Scratch, se atasca en "¿por qué mi personaje no salta?" —un problema de razonamiento—, no en "me falta una comilla" —un problema de mecanografía—.
Qué te da el texto (y por qué acaba llegando su momento)
Si los bloques son tan buenos quitando fricción, ¿por qué no quedarse ahí para siempre? Porque esa misma fricción que se elimina es, más adelante, parte de lo que hay que aprender. El código escrito da tres cosas que los bloques limitan: precisión, potencia y autenticidad. Con texto puedes expresar ideas más complejas de forma más compacta, usar librerías, conectar con el mundo real y trabajar con las mismas herramientas que usan los profesionales.
Y hay un matiz motivacional que los propios estudiantes perciben. En una investigación de Weintrop y Wilensky, los alumnos veían los bloques como más fáciles pero también como menos "auténticos" o "potentes" que el texto. Llega una edad en la que el niño quiere programar "de verdad", y darle ese salto en el momento adecuado es parte de mantenerlo enganchado. Python es, para eso, una entrada natural: la propia Python Software Foundation lo presenta como un lenguaje pensado para que un principiante lo aprenda con facilidad, y existe un esfuerzo educativo oficial con recursos para su uso en el aula.
El error más frecuente: confundir el orden con la prisa
Aquí es donde muchas familias —y bastantes cursos— se equivocan, y lo hacen en las dos direcciones opuestas.
El primer error es saltar al texto demasiado pronto para que parezca "serio". Suena a progreso, pero suele salir caro. La evidencia apunta justo al revés: en el estudio de referencia de Weintrop y Wilensky con estudiantes reales, quienes empezaron con bloques obtuvieron mayores ganancias de aprendizaje y más interés en seguir estudiando informática que quienes empezaron directamente con texto. Forzar la sintaxis antes de tiempo no acelera; frustra.
El segundo error es el contrario: quedarse en los bloques indefinidamente por comodidad, sin dar nunca el paso. Los bloques son un suelo bajo excelente, pero también tienen techo. Un niño que ya sostiene proyectos con criterio y pide más está listo para la siguiente fricción.
La buena noticia —y esto deshace el miedo de fondo— es que empezar por bloques no dificulta el aprendizaje posterior del texto. La Fundación Raspberry Pi reseñó un estudio de 15 semanas donde empezar por bloques daba ventaja inicial y no perjudicaba en absoluto la transición posterior a un lenguaje textual; de hecho, el enfoque híbrido fue el que mejores resultados dio. Los conceptos aprendidos con bloques se transfieren. No se "desaprende" Scratch para aprender Python: se construye encima.
No es casualidad que el propio currículo español siga ese orden. El Real Decreto 157/2022 introduce en Primaria "soluciones digitales sencillas… (programación informática por bloques, robótica educativa…)", y el Real Decreto 217/2022 da protagonismo en la ESO a una programación más avanzada. Bloques primero, texto después. La dirección es esa, y por una razón.
Cómo se ve una buena transición
La clave es entender que el paso de bloques a texto no debería ser un acantilado, sino una rampa. Y hay herramientas diseñadas justo para eso, de "doble modalidad", que enseñan el texto detrás de los bloques:
- Con micro:bit se puede empezar en MakeCode arrastrando bloques y, con un clic, ver ese mismo programa convertido en Python o JavaScript real —el editor de Python incluso ofrece ayudas que suavizan el paso a escribir código—.
- Herramientas como MIT App Inventor han explorado incluso la conversión en ambos sentidos entre bloques y texto, para que el salto sea gradual.
Al margen de la herramienta concreta, una buena transición comparte tres rasgos: deja al niño leer código antes de pedirle que lo escriba, mantiene proyectos que ya sabe hacer para que la novedad sea solo el lenguaje (no el proyecto entero), y trata los primeros errores de sintaxis como lo que son —parte del aprendizaje— y no como un fracaso.
Cuándo encaja Learning Buddies
En Learning Buddies no tomamos partido por "bloques" o "texto" como si fuera una guerra. Tomamos partido por algo anterior: que el niño construya. Nuestra convicción de fondo es la de siempre —se aprende creando, no consumiendo—, y esa idea es indiferente a si el proyecto se monta con bloques o se escribe con código. Lo que importa es que al final el niño tenga algo propio que ha hecho, modificado, roto y arreglado.
Por eso el foco de la plataforma está entre los 8 y los 14 años, con un peso especial de los 9 a los 14: la franja donde el aprendizaje por proyectos rinde más y donde, precisamente, tiene sentido esa transición ordenada de los bloques al texto. No prometemos convertir a un niño de 8 años en programador de Python en un mes; eso sería vender humo. Ofrecemos proyectos para hacer, no vídeos para ver, en el momento en que esa forma de aprender funciona de verdad. Y como creemos que la diferencia entre crear y consumir se ve antes de explicarse, el primer proyecto es gratis.
La idea para llevarse a casa
Si tuviéramos que resumirlo en una frase: no es Scratch contra Python, es Scratch y luego Python —con un puente en medio y sin prisa por cruzarlo antes de tiempo—.
Los bloques no son un juguete que haya que superar cuanto antes. Son la forma más eficaz de que un niño aprenda a pensar sin pelearse con la puntuación. El texto no es "lo de verdad" que invalida lo anterior: es la fricción que se añade cuando ya hay una base sólida sobre la que sostenerla. La pregunta no es cuándo abandonar Scratch. Es qué está aprendiendo a construir tu hijo ahora mismo, y si la herramienta le está ayudando a pensar o solo a mecanografiar.
Los bloques enseñan a pensar sin la fricción de la sintaxis. El texto añade esa fricción cuando ya es aprendizaje, no obstáculo. El error no es elegir uno u otro: es equivocarse en el orden.
Fuentes
- Weintrop, D. & Wilensky, U. Comparing Block-Based and Text-Based Programming in High School Computer Science Classrooms. ACM TOCE. dl.acm.org
- Weintrop, D. & Wilensky, U. To Block or Not to Block, That Is the Question: Students' Perceptions of Blocks-Based Programming. IDC 2015. dl.acm.org
- Weintrop, D. Block-Based Programming in Computer Science Education. Communications of the ACM. cacm.acm.org
- Sun, L. et al. The effect of embedded structures on cognitive load for novice learners during block-based code comprehension. International Journal of STEM Education. link.springer.com
- Raspberry Pi Foundation. Block-based programming: does it help students learn? raspberrypi.org
- Python Software Foundation. Python For Beginners — Getting Started. python.org · Python in Education. education.python.org
- micro:bit Educational Foundation. Let's code · Python Editor. microbit.org
- Van Wyk, N. & Van der Merwe, T. Improving App Inventor usability via conversion between blocks and text. Journal of Visual Languages & Computing. sciencedirect.com
- España, BOE. Real Decreto 157/2022, enseñanzas mínimas de Educación Primaria. boe.es
- España, BOE. Real Decreto 217/2022, enseñanzas mínimas de ESO. boe.es