El viernes de la semana pasada distribuimos a los estudiantes en equipos con la tarea de entregar, este viernes, un proyecto hecho con React que ataque a datos externos a través de una API, con un 100% de cobertura de testing y usando el patrón FLUX para gestionar los datos que se mueven dentro de la aplicación. Muchos lo creen imposible, pero esta semana es balsámica y consigue que el equipo se compacte de nuevo.
Los primeros días los estudiantes tienen que testear que las APIs que han escogido tienen la información que van a necesitar, ver que los datos se puedan manipular correctamente, y realizar los diseños de la aplicación.
Sin materias nuevas
… a no ser que los profesores detecten que hay que reforzar algún punto. En ese caso, el profesor titular detendrá los proyectos y realizará alguna sesión aclaratoria. Si no, buscamos que sean los propios equipos se enseñen los unos a los otros y así emulamos el funcionamiento del día a día de un equipo de desarrollo web en una empresa: la información tiene que fluir entre ellos.
El hecho que no haya materias nuevas hace que todos los alumnos tengan siete días para asentar los contenidos de las cuatro semanas anteriores. Empezando un proyecto desde cero ayuda a ver las pequeñas partes que hay que ir uniendo y es mucho más sencillo tener perspectiva de nuevo.
Si no han cambiado antes, es en esta semana cuando as conversaciones cambian. Todos están resolviendo los mismos problemas en el mismo momento e incluso en las comidas solo se habla de código: como resolver un problema de CORS, como mockear los datos de una API, como implementar la funcionalidad de marcar como favorito…
En ISDI Coders no hay competición
Es vital, en este momento del curso, que el grupo se compacte. No buscamos que los proyectos incluyan filigranas técnicas. Buscamos que todos los miebros de cada equipo asienten todas las materias. Si un equipo opta por dejar a alguien atrás en pro de lucir sus habilidades técnicas será frenado durante la semana. El momento de lucir es el proyecto final. El propósito de este proyecto es asentar los conocimientos y adentrarnos en juntos el back-end de las siguientes tres semanas.
Un buen jugador de equipo es aquel que hace mejor al equipo. Tenemos que cultivar en el aula esta forma de trabajar ya que es el perfil de estudiante que las empresas vienen a buscar a nuestras aulas. No buscan destellos técnicos sino a personas que encajen en un equipo y sepan aportar para que todos sean mejores. Esta es la semana en la que hay que poner esto en práctica.
Proyectos iguales pero muy distintos
El viernes de esta semana vemos proyectos aparentemente muy distintos entre ellos, y muy parecidos a los que hemos visto en las más de 30 ediciones anteriores del bootcamp…
Por un lado, lo que vemos nosotros son proyectos idénticos entre ellos. En apariencia no lo son, pero lo que nos importa es lo de dentro. Como decíamos anteriormente: aplicaciones web que van a buscar datos de una API externa (meteorología, mapas, cocktails, recetas, películas, series, música, etc). Todos ellos han llegado lo más cerca posible del 100% de cobertura de código, deben tener 0 (cero) code smells, la consola está completamente limpia de errores, están subidos a herramientas como Heroku, la arquitectura de las carpetas tiene que ser impecable y tienen que haber usado FLUX como patrón.
Por otro lado, vemos proyectos mejores que en ediciones anteriores. En cada curso necesitamos que los alumnos lleguen más profundo, más lejos y mejor. Hasta este punto, habremos introducido alguna nueva materia, habremos probado nuevas formas de transmitir el conocimiento, nos habremos inventado alguna dinámica nueva, habremos implantado alguna herramienta para mejorar el código, y necesitamos que los proyectos sean un poco mejores que en la edición anterior.
Es en este momento donde nuestros alumnos han superado el nivel de programación de casi el resto de escuelas. Y nos quedan aún seis semanas de curso para que estén lo mejor preparados posible para conseguir el mejor empleo como web developers.
Revisión
La presentación de los proyectos nos suele ocupar todo el día. Es, para nosotros, un momento de hacer aflorar las mejores prácticas, hacer que todos vean las mejores soluciones que el resto han aplicado, que cada grupo explique sus aproximaciones a los problemas, pulimos cosas y damos todo el feedback posible. Son ocho horas de ver código. Uno por uno, desmenuzamos todos los proyectos y vemos qué podríamos haber hecho mejor en forma y fondo.
Hay deberes para el lunes
La semana de proyectos no ha acabado hasta que no tengamos un 100% de cobertura. Aquellos grupos que no lo hayan conseguido, tienen que venir el lunes con esa métrica conseguida. El testing es uno de los pilares de nuestro modelo educativo y no podemos bajar el nivel. Conseguir un buen empleo como developer está en juego! Buen fin de semana! 😉