Utilizamos cookies propias y de terceros para mejorar nuestros servicios mediante el análisis de sus hábitos de navegación. Si continua navegando, consideramos que acepta su uso. Puede cambiar la configuración y obtener más información aquí.

Artículos

Artículos

Un ajedrez en tiempo real

19 · Sep · 2018

Los alumnos que acceden a Skylab Coders tienen trayectorias profesionales y educativas distintas. En el diseño de cada promoción procuramos que esa diversidad enriquezca al grupo. Robert había programado muchos años en Estados Unidos y vino a Skylab Coders a conseguir un nivel profesional de Javascript, como el que tiene en otras tecnologías.

En este proyecto (lo puedes ver aquí), Robert creó un juego que permite partidas en tiempo real entre varios jugadores. No es habitual ver una aplicación como esta como proyecto final, pero es una de las posibilidades que ofrece el stack de tecnologías que enseñamos.

Para crearla, Robert utilizó la tecnología de SocketIO, que genera esta inmediatez en las jugadas. Es una aplicación web que se ejecuta en el entorno del navegador. Consiste en un frontend ReactJS que se conecta con una API en NodeJS. La API usa ExpressJS para canalizar solicitudes, y Mongoose para interactuar con MongoDB. La aplicación está escrita en Javascript y aprovecha las características de las versiones ES6 y ESNext.

Compartir es la clave

La personalización del curso de Skylab nos permite hacer que cada alumno llegue a su máximo, independientemente de su nivel previo. Es muy importante que cada uno aporte en su medida y comparta su conocimiento para el beneficio de todos. La experiencia de Robert en programación sirvió para que sus intervenciones en el curso dieran profundidad y perspectiva en Javascript para el resto de sus compañeros.

... tú sabes mucho!

Ésta fue la frase final de la presentación de Robert, dirigida al profesor titular. Es muy importante para nosotros que el profesorado sepa mucho más allá del temario que impartimos, para poder argumentar con fundamentos todas las cuestiones que aparecen durante el curso. No debemos responder solo el como, sino dar a los alumnos la perspectiva, el porqué y las razones profundas de las distintas materias.

Es por ello que necesitamos que también los profesores asistentes sean alumnos que han destacado en su promoción por su nivel y capacidad docente.

Calidad de código

La calidad del código quiere ser uno de los sellos de Skylab Coders. La separación por capas y el test de las aplicaciones forma parte de los mínimos académicos que exigimos a nuestros estudiantes (y que las empresas valoran de ellos).

TDD (Test Driven Development) es una disciplina muy buscada en un programador, aunqué la presión del día a día en una empresa hace que su uso sea poco frecuente. Nosotros usamos el testing como una herramienta docente para solidificar los conocimientos en Javascript. Deben conocer bien el funcionamiento de todas las piezas de una aplicación, como funciona la sincronía y la asincronía de los procesos tanto en el cliente como en el servidor, etc. Para ello, utilizamos testing desde el primer día. Primero con Javascript y luego utilizando distintas herramientas que facilitan su implementación como: Mocha o Chai.

Es habitual ver en un proyecto final de Skylab Coders casi 2.000 lineas de test, buscando que los puntos clave de la aplicación estén bien cubiertos. De este modo, las aplicaciones son más robustas y permiten ir minimizando los problemas conforme el desarrollo va avanzando.

Si te interesa ver el código que hay detrás de esta aplicación, puedes verlo en el perfil de Github de Robert.