Portava temps que em rondava pel cap la idea d'un bot que comprovés algunes mètriques del sistema i si algun valor es dispara llavors em publiqui una alerta a Mastodon. El que va començar com a un projecte senzill ha acabat una mica més treballat, capaç de comunicar entre bots i fer de centraleta d'alarmes i missatges de log.
En aquest article explico què fa i com posar-lo en marxa 🚀
Seguint amb el primer article sobre les èines del programador Python, aquí parlo de cobrir el codi amb un estil definit mitjançant un autoformatter i un linter, assegurar la funcionalitat amb tests, i que aquestes comprobacions es passin automàticament en cada push a un Pull Request de GitHub. De fet, aquest és el setup que tenim al meu equip i ens garanteix uns mínims de coherència i qualitat al nostre codi.
L'altre dia li donava una volta al mòdul de Python que mantinc, amb les llibreries bàsiques que uso en els meus projectes personals. Tenia ganes d'aplicar les comprovacions que en el meu equip apliquem al nostre codi, com a pràctica i com a repàs personal, i ja de pas documentar-ho en una sèrie d'articles.
En aquest primer parlo de l'estructura bàsica d'un mòdul en Python i de les èines que hi utilitzo, Poetry i el Makefile, com a preparació de la segona part en la que parlaré d'autoformat, linter, tests i un xic d'automatització.
Cada cop que penso sota quina llicència publico un programa, se'm fa una muntanya i no em sé decidir. Port ja uns dies pensant que estaria bé fer un petit resum per trobar-ne les diferències i ajudar a triar entre el ventall que tenim, com a exercici per a mi mateix i ja de pas compartir-ho.
MIT, GNU, Apache... quina és la llicència que em convé?