Un tablero kanban en un wiki

Últimamente se habla bastante en las listas de agile-spain y foro-agiles sobre Kanban. Éste es un método menos prescriptivo (más relajado si se quiere leer así) que Scrum e incluso más adecuado que éste para situaciones en las que no es posible hablar de proyecto o incluso de equipo. En estas listas se ha hablado de aplicarlo, por ejemplo, en equipos que, por su naturaleza, se dedican a consumir “tickets”.

Si alguien está interesado, Henrik Kniberg acaba de publicar en su blog un excelente artículo en forma de comic explicando cómo usar los tablones cuando usamos kanban. Y lo podemos complementar con el artículo de Xavier Quesada en su blog sobre visual management, que es de donde he capturado la imagen para ilustrar este artículo.

Y por casualidad he encontrado una solución muy sencilla (a la par que elegante) para tener un tablero kanban en web. Se llama Simple Kanban y consiste en un HTML autocontenido, tipo Tiddlywiki, salvo que no tienen implementado el botón de guardar. Bueno, todo se andará.

Y se me ha ocurrido intentar integrarlo en un wiki, concretamente en dokuwiki (creo que cualquier wiki valdría). Así que me puse a ver cómo era ese HTML y cómo integrarlo en una página wiki. Se trata de un montón de javascript y un par de textareas donde se encuentran los datos (una lista para las columnas del tablero y otra para las tareas que van en cada columna, con un formato csv). He creado un sencillo plugin (a pesar de no tener ni idea de PHP) que me incluye casi todo el HTML (excepto el textarea con los datos de las tareas) y no se ve mal. Cuando edito la página del wiki queda bastante sencillo. Es algo como esto:


~~NOCACHE~~

<html>
<!-- The data for the stories -->
<textarea rows="1" id="stories" style="visibility: hidden;">
P_Q,S17,Fix YSlow
P,S3,Make application faster
</textarea>
</html>

[SIMPLEKANBAN]

¿Dónde está el problema? Pues que todos los cambios que hago en el tablero mediante “arrastrar y soltar” no quedan guardados en ningún sitio. ¡Maldita sea! He vuelto a caer en la trampa del pistolero. Me he dedicado a disparar lineas de código como un poseso sin pararme a pensar en si era viable lo que estaba haciendo. Bueno, tranquilo, “inspect and adapt”. El problema es que mi diseño es incorrecto. El HTML de Simple Kanban modifica ese textarea donde contiene los datos que luego muestra. Necesito quizás modificar Simple Kanban para que, en vez de modificar el textarea, modifique un fichero con los datos. Otra opción sería poner un botón de “guardar” en el tablero y que hiciera algo parecido a lo que hacen los botones de “Editar” y “Guardar” de dokuwiki. Mmmm, no tengo ni idea de cuál de las dos opciones es más factible (si acaso alguna de las dos lo es).

¿Alguien me puede echar una mano con esto?

  • chuidiang

    Hola:

    He visto la herramienta gracias a un post de foros-agiles (creo recordar que incluso lo escribiste tu) y me ha gustado la herramienta y he pensado lo mismo que tú, hacer alguna modificación para poder guardar los datos.

    Supongo que javascript no puede directamente escribir en ficheros en el lado del cliente. No conozco javascript lo suficiente para saber si puede escribir en el servidor.

    Imagino que lo mas sencillo es hacer un boton de guardar, que en el "submit" envíe a una página php o similar la lista de datos para que esta la guarde.

    Luego, el acceso al kanban sería a través de una página php que básicamente es la misma, pero construyendo la lista de datos a través de php.

    Igual me animo a intentarlo yo, te tendré informado (y espero que al revés tambíen 😉

    Se bueno.

  • Jose Manuel Beas

    Tiddlywiki tiene un botón de guardar que al pulsarlo hace que el navegador te pregunte (al menos con Firefox es así). En cualquier caso, yo estoy buscando integrarlo con dokuwiki para aprovechar que el wiki me versiona automáticamente (yo sólo tendría que preocuparme de hacer "backups") y para tener toda la documentación del proyecto junta.

    Por supuesto, si consigo avances te los haré llegar. Hay mucha gente intentando hacer "tablones en la web", pero no he visto nunca ninguno tan sencillo como éste. Por eso tengo tanto interés. 🙂

  • chuidiang

    Hola:

    Para mi lo interesante de este tipo de cosas en web es poder compartirlo entre varios. No sirve si se guarda localmente en el disco del cliente, ya que sólo esa persona puede verlo.

    Entiendo que lo ideal es guardarlo en el servidor, de forma que aunque sólo se toque, por ejemplo, en el daily scrum entre todos, al menos se pueda ver desde cualquier ordenador.

    Se bueno.

  • Jose Manuel Beas

    Claro, yo no estoy pensando en lo contrario. Justamente quiero integrar el tablero en el wiki porque es mi herramienta de colaboración preferida (especialmente si tiene capacidades de blog, como es el caso de dokuwiki).

    No sé si lo que tú estás pensando es en hacer que SimpleKanban pase de ser un html a un php + bd. En ese caso el despliegue se complica y no tengo muy claro que sea necesario. En cualquier caso, si vas a ir por ahí, quizás no fuera mala idea hablar con el de SimpleKanban por si estuviera entre sus planes (y de paso echar un vistazo a la licencia) 🙂

    Mi enfoque es mucho más simplista, pero quizás no sea factible. Tendré que empollar un poco de php y dokuwiki. 🙁

  • º L º

    Vaya, esto es muy similar a una herramienta Kanban que estaba preparando yo mismo (también basada en HTML autocontenido y modificable), con la intención de poder incluirla en el control de versiones de los proyectos como un archivo fuente más.

    Le echaré un vistazo a ver qué pinta tiene. En la mía quería incluir la opción de obtener los burndown charts registrando automáticamente la posición de las tarjetas (y su valor en story points) para cada día.

  • Jose Manuel Beas

    Tu solución, querido visitante desconocido, es muy parecida (en el fondo técnico) a usar Tiddlywiki. Yo he trabajado con Tiddlywiki dejando el versionado a SVN y resolver los conflictos no era siempre fácil. Por eso me gustaba delegar esta tarea de versionado al wiki (yo he elegido Dokuwiki, pero podría ser cualquier otra).

    Estaría encantado de conocer tus avances. Quizás podrías colaborar con el autor de SimpleKanban y unir esfuerzos.

    Por cierto, también recientemente he visto un video de una herramienta similar (aún en construcción) que puede resultar muy atractiva.