workflow
28 de marzo, 2026
para muchos en mi facultad, workflow es la forma en que se justifica la ausencia a una evaluación. la verdad es que es "a generic term for orchestrated and repeatable patterns of activity" (workflow | wikipedia). y es que si uno tiene un sistema con el que lleva tiempo acostumbrado es difícil salir de él.
generalmente los cambios en software son muy delicados, y es que:
With a sufficient number of users of an API,
it does not matter what you promise in the contract:
all observable behaviors of your system
will be depended on by somebody.
volviendo de este verano, u-cursos, la plataforma que usamos en la universidad para informarnos de las notas y los cursos, cambió su interfaz. no solo cambiaron la disposición de los botones, crearon 2 temas nuevos y renombraron los temas viejos
estoy muy acostumbrado a escribir a mano las url, así que para entrar a u-cursos escribía u-cursos.cl/?theme=dark. Resulta que ahora, para obtener un resultado similar, debo escribir u-cursos.cl/?theme=focus-dark. lo cual no es tan terrible, pero es gracioso cada vez que lo escribo mal y termino entrando en la página modo claro.
lo que si es terrible es que fusionaron el módulo horario con el módulo calendario. y ahí es cuando empezaron los problemas. porque todo mi sistema de calendarios se basa en clientes de ical. el maldito calendario de google puede importar algunos ical, pero nada fuera del ecosistema google soporta leer calendarios google, por lo cual uso clientes no google de calendario en el compu y en el celu. todo funcionó bien por años hasta el 27 de febrero de este año, mi calendario del celu me avisó que no pudo recuperar el horario de mis ramos. error http 401. intenté poner mis credenciales en el cliente de calendario, pero no me dejó sincronizar. entré a u-cursos y descubrí que habían fusionado los módulos, probé con la nueva url de sincronización, pero siguió sin funcionar. como el error era de autorización, probé con poner mis credenciales de la aplicación, aún así no lograba sacar los calendarios... así que el tema no tenía una solución normal.
como podía ver los calendarios en la página web, entendí que era posible acceder al archivo, pero me imaginé que solo funcionaba con las cookies de sesión y no con el sistema que sea que usan las apps de calendario para loggearse.
al final tuve que crear un proxy que usaba mis credenciales y usar esas cookies para fetchear el calendario y retornarlo, está en github: svandich/ucal. lo hice en nestjs porque es lo que aprendí a usar en un trabajo, creo que es bastante práctico, es typescript y te lleva a construir aplicaciones de una forma bastante ordenada. el código más fome lo hice con IA porque en 2026 ya no es necesario pensar en esas cosas, aunque le costó a la máquina no introducir errores. ojalá haga más lindo el readme uno de estos días.
bueno y la verdad es que no es que no se pueda importar el calendario, es que el único que se puede importar es el calendario personal, que tiene todos los ramos que tienes juntos, entonces no los puedo importar por separado. por qué querrías importar por separado cada curso? bueno porque puedes ajustar cosas por cada ramo, como qué ramos ignorar o de qué color ponerlos.
antes, importando todo
importando c/u
ahora puedo ver un bloque y por el puro color darme cuenta que tengo aux de termo, y que no es la clase faltable de evalua, y por lo tanto tenía que ir. historia basada en hechos reales.
finalmente, una reflexión de xkcd:
