Learning to design programs also means acquiring two kinds of universally useful skills. Program design certainly teaches the same analytical skills as mathematics, especially (pre)algebra and geometry. But, unlike mathematics, working with programs is an active approach to learning.
Aprender a diseñar programas también implica adquirir dos tipos de habilidades universalmente útiles, ya que fortalece el pensamiento analítico propio de las matemáticas, especialmente del (pre)álgebra y la geometría, pero a diferencia de estas, propone un enfoque activo de aprendizaje basado en la experimentación, la práctica y la retroalimentación constante. De esta manera mi propia experiencia registrada en el taller autonomo, evidencia cómo el aprendizaje no solo consiste en saber, sino en reconocer lo que aún se ignora, identifico que no sé algo cuando no puedo responder con fluidez o claridad, cuando mis ideas se dispersan y no logro concretar una respuesta precisa, al enfrentar herramientas nuevas como HedgeDoc, logro identificar de manera concreta mis vacíos, como cuando intenté cambiar el color de la letra sin saber cómo hacerlo. Así, el aprendizaje se construye de manera progresiva, a partir de la identificación de lo que se sabe y lo que no, permitiendo avanzar con mayor conciencia, precisión y autonomía en la adquisición de nuevos conocimientos.