EXTRA, EXTRA!! Desde hace un año el colectivo Desprogramadas llama a los colectivos poco representados con una curiosidad por la Tecnología y la Programación a través de un espacio seguro, de cuidados y accesibles a todas. Cada 15 días en plena nueva normalidad se ciberjunta para desafíar las normas del aprendizaje de la programación.
El sábado 13 de junio el colectivo Desprogramadas ha tenido su segunda ciberquedada en plena pandemia, consistente en dar acceso a todas las personas infrarrepresentadas en la tecnología.
Su modus operandi consiste en unos ratos iniciales de presentación y contextualización, trabajar en un reto de programación y programar su trabajo interno. Con esto consiguen alinear todos los niveles porque cada reto tiene una curva de aprendizaje ascendente:
La forma de resolverlo puede ser de muchas maneras y con todas las tecnologías que se ocurran (dando pie a la creatividad de cada una), al final la compañera Thamara dió una opción bastante interesante, crear tres formas de programar varias veces el mismo reto para poder refactorizarlo, quedando el reto resuelto final modo God en esto:
const estaIncluidaEstaCiudad = ciudad => (ciudadesElegidas.includes(ciudad)) ? true : false
Mejorando en ciertos niveles las siguientes cosas:
- El valor de la semántica en el nombre de funciones y variables.
- Los estándares pertinentes de cada lenguaje.
- Funciones flecha, operadores ternarios.
- Condición de Yoda (estableciendo la inversa de la condición de tal manera que facilitamos la detección de errores de asignación, fallando en la compilación).
- El patrón Return Early, donde dentro de una condición en caso de que lo cumpla, retorna el valor lo más pronto posible.
- Cláusula de guarda para reducir la estructura [if, else].
Mientras en los niveles iniciales se asientan en las siguientes cosas:
- Qué es una variable.
- Filtrado de la salida y entrada de datos a través de if /switch.
- Qué es un editor y la diferencia con un IDE.
- Tener un ecosistema de desarrollo cómodo y acorde al nivel de aprendizaje.
Todo esto ha sido estructurado de tal manera que la persona con menos experiencia ha podido empaparse de las enseñanzas de las más veteranas, mientras que estas últimas tenían que saber explicar conceptos (demostrando así el conocimiento y la asimilación) y ayudarse a aumentar el nivel a través de la cooperación. Aquí se sigue un concepto innovador en la tecnología en general pero no en estos colectivos que es la mentorización para animar a la persona con menos experiencia y darle referencias y expectativas para que pueda lograr su objetivo, mientras que se establece una ccooperación para que las personas más avanzadas puedan aunar niveles y seguir formándose. Ni tan difícil :)
Próximamente se comentará lo dado en la siguiente lección. Muchas gracias por la lectura.