Así que, más de 4 años después, aquí hay una instantánea de cómo el equipo en el que me encuentro utiliza Discourse para los scrums diarios.
El contexto organizativo
- Un equipo de proyecto que trabaja en varias iniciativas de código abierto como “clientes externos”, pero que forma parte de una gran organización.
- Esa organización más grande tiene sus propias herramientas propietarias para documentación, gestión de proyectos, chat (Slack), etc., y históricamente ha sido reacia a cambiar a herramientas de código abierto o a compartir el trabajo de la organización públicamente.
- El trabajo de este equipo debe cumplir tanto (a) con los estándares de informes de la organización más grande como (b) estar expuesto al público.
El contexto técnico
- Un foro de Discourse para que el trabajo del equipo interactúe con el público y otras partes externas.
- Una categoría dedicada de gestión de proyectos que es de lectura mundial pero de escritura exclusiva para el equipo.
- Una subcategoría “Reuniones Diarias de Pie” dentro de esa categoría, también de escritura exclusiva para el equipo, configurada para cerrar automáticamente los temas después de 23 horas.
- Renombramos a
@discoboty nos aseguramos de que tuviera acceso a la categoría.
La solución (actual por ahora)
- Usamos Zapier con cierta reticencia para la automatización, ya que los plugins existentes de Discourse o las herramientas de código abierto disponibles aún no eran suficientes.
- De lunes a viernes, Zapier crea un nuevo tema en la subcategoría “Reuniones Diarias de Pie” como usuario bot, a una hora designada cada día, utilizando la fecha actual en el título del tema.
- Zapier envía recordatorios por Slack (es una función de Slack que permite posponer y descartar) a cada participante de la reunión diaria a una hora cercana al inicio de su jornada laboral, incluyendo un enlace al URL específico del tema de la reunión del día.
- Zapier monitorea los publicaciones en esa categoría, filtrando cualquier cosa proveniente del bot, la primera publicación de cualquier tema, y también excluyendo el cierre automático que de otro modo se activaría. La publicación se reescribe drásticamente utilizando las herramientas de Zapier para publicarla en un canal de Slack, imitando el formato utilizado por miembros de otros equipos, pero agregando un enlace a la publicación en la primera línea del mensaje de Slack (que es la fecha generada automáticamente). Tuvimos que hacer esto porque el Plugin de Integración de Chat era demasiado ruidoso con metadatos adicionales, lo que molestaba a otros usuarios de ese canal.
- En algún momento, agregamos manualmente la fecha al Plugin de Eventos, para que el informe de la reunión diaria aparezca en el
/calendarprincipal junto con otras actividades. - Nos aseguramos de que el Plugin de Integración de Chat excluya (silencie) esta categoría de Reuniones Diarias para evitar que se duplique la misma reunión en otro lugar del espacio de trabajo de Slack en cuestión.
Lista de deseos para Discourse
Lo que sería genial algún día para que no tengamos que usar Zapier:
- Programación recurrente de publicaciones automáticas cuyo texto podría plantillarse con variables como la fecha.
- Plugin de Integración de Chat: Edición de la plantilla de lo que el Plugin de Integración de Chat envía a varios canales, de manera similar a lo que se hace con las plantillas de correo electrónico.
- Asignación: Permitir múltiples asignados a un tema, establecer intervalos de recordatorio por categoría y permitir que las asignaciones se configuren a través de la API o como parte de la plantilla de creación automática mencionada anteriormente.