☝️ Este artículo se centra en por qué usamos GitHub. Aquí cómo iniciar sesión.
GitHub es el proveedor de autenticación que usamos en Codely, pero… ¿por qué?
Problema: Queremos ofrecer mejor UX global en Codely
Al empezar a publicar cursos en Codely sólo existía la plataforma de cursos, lo que entendemos por Codely Pro. Con lo cuál, la gestión de usuarios era sencilla. Te registrabas en la plataforma con email y contraseña, y a funcionar.
A día de hoy, la plataforma de cursos tiene unas limitaciones que hacen que se nos quede corta para las funcionalidades que queríamos añadir como ejemplo:
Distintos planes de precio (Lite, Standard y Premium), con posibilidad de upgrade/downgrade entre ellos descontando el precio de la parte no consumida de tu suscripción. Todo desde un menú de usuario usable.
Con lo cuál, para poder mejorar la experiencia de usuario en Codely con éstas y otras funcionalidades, era necesario tener un usuario "general" a nivel de Codely además del usuario que tienes en la plataforma de cursos, Codely Pro.
Solución: Tener independencia de la plataforma
Dada esta necesidad, teníamos varias formas de implementarlo. Descartando SSO, tenemos 2 grandes opciones:
Iniciar sesión con email y contraseña.
Iniciar sesión con magic link vía email.
Iniciar sesión con un proveedor externo de autenticación
Alternativa descartada: Email y contraseña
Motivo: Esto provocaría que como usuario en Codely pudieras tener 2 contraseñas distintas. Una para codely.com, y otra para pro.codely.com.
Creímos que era algo que podría añadir mucha confusión y decidimos descartarlo, especialmente teniendo alternativas que consideramos más sencillas.
Alternativa descartada: Magic link vía email
Esta habría sido una opción buena y de hecho íbamos a tirar por aquí. A priori, tiene todos los beneficios:
Bastante sencillo desde el punto de vista de los usuarios.
No implica dependencia e integración con un proveedor externo.
No implica tener múltiples contraseñas para Codely por parte de los usuarios.
Como primera prueba, implementamos este sistema en el Backoffice para empresas. Es decir, las empresas que tienen múltiples licencias de Codely, las gestionan a través de un panel de control donde, para inciar sesión, lo hacían con Magic Link.
Drama. Descubrimos que muchos clientes y servidores de correo implementan sistemas anti-phishing y anti-tracking que, lo que hacen, es abrir las URLs en el momento en el que llega un email. Con lo cual, cuando el usuario hace click, ese enlace mágico ya está gastado y le da error.
Alternativa escogida: GitHub como proveedor de autenticación
Llegados a este punto pensamos en que, dado que los usuarios de Codely son developers en un 100%, era altamente probable que tuvieran cuenta de usuario en GitHub.
Con lo cuál, nos pareció buena idea delegar el inicio de sesión en GitHub ya que:
Bastante sencillo desde el punto de vista de los usuarios.
Implica dependencia e integración con un proveedor externo, pero es altamente probable que los usuarios ya lo conozcan y tengan cuenta ahí.
No implica tener múltiples contraseñas para Codely por parte de los usuarios.
Y esta es la historia del por qué a día de hoy tienes que iniciar sesión en GitHub para iniciar sesión en Codely. Seguramente en un futuro cambie, pero creemos que es un compromiso asumible entre UX, funcionalidades, y velocidad de desarrollo por ahora. 😊
