A gamified collaboration system for Open Source adventurers. Versión 1.0
El Sistema de Colaboración de Open Source Santiago fomenta la participación, la experimentación y el aprendizaje a través de un modelo basado en desafíos y misiones. Este documento describe la estructura general del sistema y sus subsistemas: profesiones, desafíos y misiones, medallas y recompensas, y el plan de producto fuera del MVP.
El sistema utiliza un enfoque colaborativo y gamificado para incentivar a los participantes a desarrollar habilidades técnicas, contribuir a proyectos Open Source y experimentar con soluciones innovadoras.
-
Tablero Kanban en GitHub Projects:
- Estructura central para gestionar las tareas.
- Clasificación por estado: Por Hacer, En Progreso, En Revisión, Completado.
-
Etiquetas:
- Clase o Profesión: 🛡️ Engineer, 🔬 Scientist, ⚔️ Warrior, 🪄 Mage.
- Rango: E, D, C, B, A, S, SS.
- Estado: En Revisión, Completado.
-
Colaboración y Retroalimentación:
- Cada misión requiere revisión por parte de un mentor o la comunidad.
Clases disponibles, cada una asociada a una especialidad técnica:
- 🛡️ Engineer (Platform): Maestro en plataformas robustas y escalables.
- 🔬 Scientist (AI): Innovador en inteligencia artificial y análisis de datos.
- ⚔️ Warrior (AppDev): Campeón del desarrollo de aplicaciones y microservicios.
- 🪄 Mage (Automation): Dominador de la automatización y los flujos de trabajo.
Para profundizar en cada arquetipo y elegir tu senda, revisa la Guía de Clases de la Comunidad.
Clasificación de las misiones desde básicas (E) hasta épicas (SS).
- Título:
[Clase][Rango] Nombre del Desafío/Misión. - Descripción: Objetivo, pasos, recursos y criterios de aceptación.
Reconocimiento por logros destacados:
- Medallas para cada profesión, desde niveles básicos hasta maestrías.
- Progresión en rangos y reconocimiento comunitario.
El siguiente paso en la evolución del Sistema de Colaboración es el desarrollo de una plataforma web inmersiva, integrada con GitHub, que ofrezca una experiencia similar a un videojuego para el aprendizaje y la práctica de habilidades técnicas.
-
Gestión de Cuentas:
- Registro y autenticación vinculados a GitHub.
- Perfil del participante con información sobre profesiones, logros y progreso.
-
Entorno Inmersivo:
- Interfaz visual similar a un RPG donde las profesiones se representan como roles dentro de un mundo interactivo.
- Desafíos y misiones como "quests" con recompensas visuales y funcionales.
-
Progresión y Desarrollo Personal:
- Sistema de puntos de experiencia (XP) y niveles.
- Historial de contribuciones y aprendizaje continuo.
-
Fomento de Comunidad:
- Espacios para compartir conocimiento y proyectos.
- Foros y grupos de mentoría para cada clase/profesión.
-
Integración con GitHub:
- Automatización de tareas (como mover issues en el Kanban).
- Registro automático de contribuciones y logros.
-
Mentoría y Colaboración:
- Mecanismos para que los participantes actúen como mentores.
- Evaluaciones y retroalimentación entre pares.
- Crear una plataforma de desarrollo personal que combine aprendizaje, práctica y colaboración.
- Facilitar la mentoría y el intercambio de conocimiento entre participantes.
- Atraer a más contribuyentes al ecosistema Open Source a través de una experiencia única y motivadora.
En la etapa 4 del plan incremental se incorpora un sitio estático generado con
Jekyll utilizando el tema Chirpy.
El build consume los artefactos publicados en docs/data/ y el resumen
mission-merge-summary.md para generar el dashboard publicado en GitHub Pages.
Todo lo relacionado con GitHub Pages vive en el directorio
github-pages/. Desde la raíz del repositorio ejecuta:
cd github-pages
bundle install
bundle exec jekyll serveEl primer comando cambia al directorio del sitio y el segundo resuelve las
dependencias Ruby (incluido GitHub Pages). Finalmente se inicia un servidor
local con recarga automática en http://localhost:4000. Para generar la versión
lista para publicar utiliza:
bundle exec jekyll buildEl resultado se compila en github-pages/_site/, que está excluido del
repositorio para replicar el comportamiento de GitHub Pages.