Como ya os contamos en la entrada anterior, la semana pasada nuestros alumnos se adentraron en el mundo del back end (Node/Express, buenas práctica y testing). En esta sexta semana, Federico Badiola continuó con el segundo módulo del Bootcamp, impartiendo MongoDB. MongoDB es el motor de bases de datos no relacional más popular del año 2018 según Stackoverflow. Fede trabaja en Devo, una empresa especializada en Big Data, en el departamento de I+D. Se dedica a investigar soluciones para simplificar las actividades de sus clientes maximizando su eficiencia. En sus ratos libres, mantiene la popular aplicación de Liga Fantasy: Futmondo.
Estudios y trabajo durante la semana
Los alumnos iniciaron la semana reforzando los contenidos de Express, sobre todo poniendo énfasis en la asincronía de JavaScript. Al mismo tiempo iban aprendiendo a utilizar MongoDB: creando esquemas, estructuras de la base de datos en el código, guardando datos y accediendo a ellos. De este modo, consiguieron empezar a montar sus propias APIs para poder guardar información en sus bases de datos, acceder a estos, modificarlos y borrarlos. Por ejemplo: se les pidió que construyeran una API de películas de cine. En la aplicación, un usuario podía registrarse y subir las películas que había visto. Después podía acceder a la información de las fichas de cada película, así como ordenarlas y filtrarlas por diferentes categorías (autor, año, rating, nombre de la película y directo).
Al final de la semana aprendieron a securizar el log-in y el registro de la API que habían programado mediante hasheo de contraseñas con Bcrypt. Y a securizar la propia API a través de tokens con JWT. Fede se aseguró, quedándose después de las clases para profundizar en la materia, de que todos los alumnos fueran teniendo un entendimiento más profundo del código y de los algoritmos.
Las opiniones de nuestros alumnos
Paula Rodrigo nos comenta que le está encantando el back end porque todo funciona mediante lógica. “Es mucho menos agradecido que el front end, ya que le falta toda la parte visual que al final es lo que entra por los ojos, pero es muy divertido enfrentarse a nuevos retos que despiertan y agilizan tus capacidades lógicas”.
Rafael Ortega, el Sherpa de Codenotch, nos explica qué es para él el back end. “La programación back end es muy parecida a un puzzle, con varias piezas que hay que encajar. Cuanto más complicado es el problema más piezas hay que encajar y menos combinaciones existirán entre estas piezas”.
El jueves por la tarde, Fede concertó una llamada con un jefe de proyectos de la empresa en la que trabaja. El jefe de proyectos explicó a los alumnos las características que tiene que tener un programador junior para trabajar en una empresa como la suya. Sus palabras alentaron tremendamente a nuestros alumnos, ya que se vieron identificados con la descripción que éste hacía del posible candidato. A veces resulta altamente reconfortante verte reflejado en el espejo de alguien que te precede para seguir construyendo el camino hacia tu meta con un paso más decidido.
La semana que viene nuestros alumnos continuarán viendo con Fede estructuras de datos con listas, pilas, colas y mapas hash, y probarán sus conocimientos mediante katas (ejercicios prácticos de programación) de Codewars. Asimismo, comenzarán a ver bases de datos relacionales en mySQL con un nuevo profesor, Javier Pérez, y aprenderán a programar una base de datos para una escuela.