
GitHub, mi herramienta imprescindible
Sí, soy un enamorado de las tecnologías de mi amigo Octocat. De hecho, se han convertido en estos dos últimos cursos en mi pilar central en el que desarrollo mi docencia y donde concentro apuntes y prácticas y proyectos personales. Me ofrece tantas ventajas, que voy a iniciar mi especial sobre tecnologías favoritas explicando cómo uso GitHub en mi día a día.
Octocat y yo
Me encanta empezar por GitHub. Es una herramienta tan importante, que nos aporta tanto, que se merece estar en el lugar que le corresponde.
Usar un sistema de control de versiones tiene muchas ventajas. No voy a entrar a explicarlo con mucho detalle, pero si eso lo unimos con las ventajas que nos ofrece GitHub como herramienta de apoyo docente, la cosa puede ser espectacular. Desde hace dos cursos uso Git y GitHub como pilar en todos mis módulos. Primero, porque lo considero imprescindible para impartir módulos y cursos de desarrollo de software. Segundo, porque me han tocado módulos donde entra en el temario. Tercero, y más importante, porque no imagino salir al mercado laboral sin un mínimo de soltura manejándolo.
GitHub me ofrece tantas ventajas que poco a poco las iré enumerando y confirmaréis cómo Octocat es uno más en mis clases y, muchas veces, mucho más importante que el propio profesor 🤨. ¿Despegamos?

GitHub en clase
Comencemos con el propio objetivo de usar Git y GitHub: como sabemos, es un sistema de control de versiones con la posibilidad de usarlo remotamente. De esta manera mi código siempre está disponible para todo el mundo, y puedo tener una copia de seguridad de las prácticas, apuntes, etc.

En mi día a día como profesor y formador, aparte de desarrollador, es importante que cuando estamos enseñando o practicando con un código llevemos un diario y registro de cambios que facilite al alumnado seguir lo que se ha hecho en la clase (y a los inspectores/as de turno ver que trabajas...). De esta manera lo conseguimos de forma muy fácil. Cada commit es un momento clave en clase. De esta manera podemos seguir los distintos puntos de la clase, autocompletando y documentando lo que sucede en ella. Cada rama nos ofrece diversas alternativas de soluciones o de tecnologías aplicadas, incluso mejoras o cuestiones propuestas del alumnado. Todo lo hecho en el aula siempre queda patente para que experimenten sobre ello.
Además, el código siempre está disponible para el alumnado en todo momento: pueden hacer un fork, experimentar, variarlo, ver el seguimiento, compararlo, etc. Nos permite que tanto alumnado como profesorado trabajemos conjuntamente y colaboremos. Pueden hacerme pull request para corregir errores, propuestas de mejoras o completar código entre varias personas. Incluso lo he usado en exámenes: les das la estructura de código o plantilla que deben completar, subir y usar como base de nuestro sistema de desarrollo y despliegue continuo... ¿Qué más puedes pedir? ✌
Ventajas
- Diario de clase.
- Aportar soluciones alternativas.
- Colaborar en desarrollo entre alumnado.
- Compartir tus desarrollos.
- Plantillas de exámenes.
- CI/CD en el aula. :::
GitHub y COVID
Si GitHub es útil en mi día a día, más lo ha sido en tiempos de COVID. Y por este motivo lo destaco un poco más. He vivido todo tipo de modalidades docentes en menos de un año. Confinamiento, telemática, presencial, semipresencial asíncrona, síncrona, con unos en un lado y otros en otro lado... A veces no sabíamos ni dónde, ni cómo 🤯. Lo que sí sabíamos es que estaba el repositorio para salvarnos, para seguir las clases y "navegar" a través de ellas. Ha venido a complementar la labor que hemos intentado hacer en nuestro día a día.

GitHub educativo
Desde que el año pasado, como jefe de departamento, iniciamos el proceso para formalizar nuestros acuerdos con GitHub, hemos ido trabajando todas las ventajas que nos ofrece a nivel de centro para incorporarlas en el aula. Finalmente somos centro asociado de referencia, primero de Castilla-La Mancha, y con ello GitHub tiene mucho protagonismo en nuestros módulos.

Como he dicho, GitHub tiene un sensacional y potente programa educativo para centros, profesorado y alumnado con muchas ventajas. Te comento:
GitHub Educación
- Como centro o campus asociado, podemos tener disponibles aulas virtuales para compartir código, realizar test, servidor, etc.
- Como docentes, tenemos una Toolbox increíble que nos da acceso a poder usar distintos programas con licencias especiales que son muy útiles para nuestra labor.
- Como estudiantes, tienes acceso al Student Developer Pack con muchas licencias y programas muy punteros para completar tu formación o usarlos en tus prácticas.
- Comunidad para intercambiar opiniones e ideas con el resto del mundo.
- Recursos para clase: material formativo, chuletas, etc. :::
Tutorial Git/GitHub
Pero está claro que esto no surge de la noche a la mañana, es por ello que lo primero que hay que hacer al comenzar un nuevo curso es el tutorial de Git/GitHub para el alumnado. Para ello dedicamos un tiempo importante en dominarlo. Es una inversión asegurada: todo lo que obtenemos son ventajas para el resto del curso. Nuestra idea es que esté tan automatizado como la imagen que tenemos en la puerta del aula.

Tutorial
Este es nuestro tutorial de Git/GitHub, colabora y aporta en lo que quieras 😉.
Octocat siempre conmigo
Espero haberte convencido un poco con todo esto. Las posibilidades son infinitas. Octocat es mi gran amigo y aliado dentro y fuera de las aulas. A nivel personal, lo he usado como base para todo lo que hago, incluso para el despliegue automatizado de mi propia web como puedes ver en su dominio.
Lo que más valoro es su sencillez y, a la vez, potencia 💪. Sé que puede haber distintas alternativas, pero nos ofrece mucho gracias a sus licencias educativas, lo que lo hace ideal no solo por usar GitHub, sino por todo el software al que te abre las puertas.
Si algo tengo claro es que mucho tienen que cambiar las cosas para que deje de usarlo. Además, como futurible "Advisor", siempre es un placer ayudar a su integración en el aula. Si tienes alguna duda o quieres que te ayude en algo, solo tienes que contactar conmigo.
¡¡Muchas gracias, Octocat!!

Repositorio
Puedes pasarte por: https://github.com/joseluisgs. ¡Colabora y usa lo que quieras! 😉
