Como comentamos en nuestra entrada de blog del mes pasado, uno de nuestros objetivos clave para el próximo año es reestructurar los tracks, tanto para que los estudiantes los disfruten más como para facilitar la mentoría. Hemos avanzado muchísimo en este sentido durante el último año con el proyecto Track Anatomy, liderado por Maud de Vries, y a raíz de él hemos identificado algunos problemas fundamentales en la forma en que se estructuran los tracks, que creemos que hay que abordar con prioridad. Durante los dos últimos meses, el equipo de liderazgo ha estado debatiendo cómo deberíamos enfocar esto y qué hace falta para llevar nuestros tracks al estado necesario para ofrecer un aprendizaje de los modismos de cada lenguaje en un plazo razonable.
Hoy me hace muchísima ilusión anunciar que ponemos en marcha un proyecto junto a James Evans y Gary Lupyan, de la Universidad de Chicago, patrocinado por la Fundación Sloan, que nos permitirá centrarnos de lleno y dedicar energía a repensar los tracks de Exercism desde cero y a aplicar esos cambios en varios lenguajes. Además, me alegra anunciar que hemos contratado a Erik Schierboom para liderar el proyecto.
Antecedentes
Durante los dos últimos años, James y Gary han investigado cómo los lenguajes que usa un programador afectan a su eficiencia, su creatividad y su colaboración. Con el respaldo de una subvención de la Fundación Sloan, han determinado que una parte crucial de esta investigación es entender cómo aprenden los programadores distintos lenguajes y cómo los conocimientos que ya se tienen ayudan o dificultan un aprendizaje nuevo. Es exactamente la pregunta que nos hemos estado haciendo sobre los tracks de lenguajes en Exercism. ¿Cómo influye la experiencia previa de una persona en los recorridos que necesita en nuestros tracks y en el estilo y el contenido de la mentoría ante la que responde mejor?
James, Gary y la Fundación Sloan han decidido invertir parte de sus recursos en permitir que Exercism dedique energía a rediseñar nuestros tracks para que se centren más en lo que hace único a cada lenguaje y sean más personalizados en función de la experiencia previa de cada estudiante.
El proyecto
Vamos a escribir mucho más sobre esto en las próximas semanas y meses, pero quiero esbozar los objetivos principales que esperamos alcanzar con este proyecto y cómo afectarán a Exercism.
Repensar el núcleo de los tracks: Nuestros tracks pretenden enseñar lenguajes de programación, no programación en sí. Tenemos la intención de plasmar esto en nuestros tracks, repensando nuestros recorridos principales para centrarlos específicamente en enseñar los modismos que hacen único a cada lenguaje. Queremos diseñar y desarrollar nuevos ejercicios, cada uno centrado en un modismo concreto. Por ejemplo, en Ruby podríamos tener un ejercicio que enseñe enumeración en lugar de bucles, o, en JavaScript, el concepto de Prototypes o Binding.
Desarrollar una cobertura completa de análisis automatizado de los ejercicios del núcleo: Queremos que un estudiante pueda recorrer el núcleo de un track con rapidez. Al diseñar los ejercicios, nos centraremos deliberadamente en cómo ofrecer un 95 % de cobertura de análisis automatizado de las posibles soluciones. Esto significa que los mentores interactuarán con ese 5 % de estudiantes que realmente necesita su ayuda, o bien con ejercicios complementarios más interesantes y variados. Como parte de esto, queremos desarrollar herramientas que permitan a nuestros mentores contribuir a los analizadores automatizados sin tener que adentrarse en la base de código.
Ofrecer mentoría automatizada y pistas de mentoría a medida en función de la experiencia previa: Una vez completados los pasos anteriores, queremos explorar cómo adaptar el feedback que recibe un estudiante a su experiencia previa, ya sea en las respuestas automatizadas que recibe o en las pistas que damos a los mentores. El feedback que alguien necesita al aprender un lenguaje concreto depende en gran medida de sus conocimientos previos. Sus puntos de anclaje son distintos y sus conocimientos previos pueden ser más difíciles de desaprender, así que, si tenemos en cuenta la experiencia previa de cada persona, podemos ofrecer a los estudiantes una experiencia personalizada y más útil.
Añadir la posibilidad de programar en el navegador: En paralelo al replanteamiento de los tracks principales, vamos a añadir una de nuestras funcionalidades más solicitadas: la posibilidad de resolver ejercicios en el navegador. Esto no sustituirá al uso de la CLI, que creemos que es una forma de aprender increíblemente valiosa, pero ofrecerá a la gente la posibilidad de probar y explorar lenguajes rápidamente sin tener que instalar cada lenguaje y sus herramientas.
La financiación
La financiación que recibimos de la Fundación Sloan a través de James y Gary permitirá a Jeremy, Nicole, Charles y Karlo dedicar la mayor parte de su tiempo durante los próximos 12 meses al trabajo de producto, al desarrollo y a la arquitectura necesarios para alcanzar los objetivos anteriores.
También nos permitirá contratar a Erik para que lidere el lado del «plan de estudios» del proyecto. Erik es un colaborador destacado de Exercism desde 2016: mantiene los tracks de C#, F# y Scala, construye analizadores, diseña ejercicios, contribuye a project-specifications y hace mentoría. También le apasionan los lenguajes de programación y ha completado una parte importante de los tracks de Exercism. Y, algo crucial, es una persona querida y respetada por toda la comunidad de Exercism, y por tanto está en una posición perfecta para ayudarnos a entender cómo podemos diseñar tracks y sistemas que dejen brillar las diferencias y las similitudes de 50 lenguajes de programación distintos.
Cómo participar
Vamos a formar un equipo específico para ayudar con este proyecto. Este equipo se encargará de definir los modismos en los distintos tracks, diseñar nuevos ejercicios del núcleo, ayudarnos a diseñar frameworks y estándares para los analizadores y reflexionar sobre cómo los conocimientos previos afectan al aprendizaje.
Si eres mentor y mantenedor con experiencia y te gustaría participar, nos encantará saber de ti. Escríbeme por Slack.
Conclusión
Estamos muy ilusionados con esta nueva fase. Creemos que ayudará a Exercism a dar pasos enormes hacia delante y a servir mejor tanto a nuestros estudiantes como a nuestros mentores. Estamos enormemente agradecidos a James, Gary y la Fundación Sloan por su apoyo.