 Hola a todos ¿Qué tal? Muchas gracias por vuestra presencia hoy en esta charla. Hoy vamos a hablar de colaboración como un indicador de calidad digamos o de salud dentro de los proyectos de software libre. Estoy encantado de estar aquí, tengo también el placer de tener a mi lado a Miguel Ángel. Hola a todos ¿Qué tal? Soy Miguel Ángel Fernández. Y bueno, yo soy Daniel, Daniel izquierdo y bueno un poco pues los dos trabajamos en Vitergia. Concretamente pues soy un poco ahora el, vamos a decir el REO, el que lleva la organización de la empresa y bueno también participó en un par de comunidades de software libre, CAOS, que es el Acrónimo de Community Analysis Analytics for Open Source Software y además también soy parte del BOAR de la Fundación Nier Source Commons. Yo soy especialista en analítica y consultor en Vitergia también. Así que muchas gracias por vuestro tiempo hoy. Un poco la idea de la charla de hoy es trabajar el concepto de colaboración. ¿Qué significa esto de colaboración y si puede ser un indicador válido para medir salud de proyectos? Al final los proyectos de software libre si pensamos un poco más allá del código fuente o temas como la licencia pues tenemos a las personas y colaboración, rebuscando un poquito en la web ¿no? ¿Qué es? ¿Qué significa? Pues si nos vamos a Wikipedia, es el proceso de dos o más personas, entidades o organizaciones que trabajan juntos para completar una tarea o llevar a cabo un objetivo, ¿no? Tiene una especie de objetivo en como vamos a decir una misión. En realidad las comunidades de software libre si pensamos un poco en cómo funcionan pues es básicamente esto, un conjunto de personas que tienen una misión concreta, que tienen una visión también concreta y trabajan juntos pues para que eso se lleve a cabo. Podemos pensar en realidad en cualquier tipo de proyecto de software libre que haya por ahí fuera o software que estéis usando vosotros mismos. Desde cualquiera de las grandes fundaciones como he mencionado antes no Wikimedia porque es en realidad la fundación que lleva Wikipedia digamos que se encarga un poco del mantenimiento y toda la parte de software de Wikipedia pero también hay la fundación Linux que es un poco quien hace hoy de host ¿no? de este evento por cierto gracias a la organización y bueno la fundación Open Infra, fundación Mozilla, fundación Eclipse es decir hay muchos proyectos y ni siquiera todos los proyectos de software libre que existen están bajo algunos de los paraguas de las fundaciones pero en cualquier caso los proyectos de software libre sí podemos decir que son personas y colaboran para ello entonces lo que queremos tener hoy es una charla un poco abierta de qué significa esto, qué es esto de colaboración y casi el primer paso es decir oye qué pinta tiene esto cómo podemos verlo, cómo podemos visualizar colaboración en proyecto de software libre entonces bueno aquí hay varios ejemplos de diferentes comunidades por cierto este tipo de visualizaciones luego veremos con la tecnología que se pueden sacar es también software libre de hecho es un proyecto de la fundación Linux pero digamos que hay diferentes maneras de visualizar y de ver cómo funcionan los proyectos de software libre y de alguna manera por cada uno de estos seis grandes grupos lo que podemos ver es un poco el tamaño la forma quizá de la comunidad, de esa colaboración qué significa luego veremos cómo leer, cómo entender un poco estos gráficos pero un poco así a simple vista pues parece que hay redes gente que participa en otras personas ahí tenemos puntos que en este caso serían desarrolladores tenemos rectángulos azules que son los proyectos o hay uniones entre ellos y existe esa contribución y todo eso de alguna manera pues nos va generando estas visualizaciones qué es cierto que son muy bonitas pero bueno en realidad qué nos quiere decir entonces bueno estos son algunos de los, digamos, logos de estos proyectos de software libre por cierto los dashboard de donde se han sacado estos datos son públicos y luego proveeremos digamos los enlaces para que podáis acceder a ellos pero es un poco la pinta que tiene la forma, el tamaño, la manera de colaborar que existe dentro de cada uno de estos grandes proyectos de software libre algunos son más grandes en el sentido de cantidad de código o número de desarrolladores o número de ficheros otros son más pequeños pero bueno en realidad lo que hay al final es lo que hablábamos no un grupo de personas, entidades, organizaciones que participan juntas, que tienen una misión concreta que trabajan en común para llevar a cabo esa misión hacemos un poquito más de foco por ejemplo en el caso de la fundación Wikimedia pues aquí en esta fotito hemos hecho un zoom entonces vemos que los diferentes puntitos, los verdes en este caso como podéis ver aquí arriba a la derecha son desarrolladores y luego existe una unión entre este punto y digamos cada uno de los rectángulos que son los diferentes repositorios siempre y cuando haya existido una contribución entonces los puntos son desarrolladores los rectángulos son repositorios y después existe una unión si ha habido una contribución los colores nos determina por cierto aquí porque supongo que estaréis viendo diferentes colores sino bueno pues tenemos los colores verde los colores rosados, los rosados un poquito más oscuros esas uniones digamos existen porque como hemos dicho tenemos desarrolladores proyectos pero además los colores perdón si la selección de colores no es la mejor pero en cualquier caso la diferenciación entre dos diferentes colores son diferentes organizaciones que participan entonces digamos que de un vistazo en esta visualización estamos viendo la diferente participación de los diferentes puntos que son desarrolladores en los diferentes proyectos o repositorios en los que trabajan y además podemos ver diferentes organizaciones por ejemplo los verdes, los rosas que son un poquito más oscuritos el rosa que es un poquito más claro y cómo colaboran entre sí las diferentes organizaciones por ejemplo vemos una organización que en este caso es color verde con otra organización que es el color rosa y están participando juntos en una serie de repositorios que están ahí arriba ahora mismo no podemos hacer zoom porque es una imagen estática pero es un poco para el que tengáis esta idea y luego ocurre que tenemos algunos proyectos que están o repositorios que están un poco aislados y después tenemos zonas que simplemente pues es como que existe un nexo en común no podemos como navegar entre los diferentes desarrolladores de los proyectos siguiendo siempre una línea y como una unión entre todos ellos entonces bueno un poco el siguiente paso un poco lo que queríamos hacer hoy era decir bueno pues tenemos esta visualización que como habéis visto dependiendo de la de la comunidad o del proyecto es bastante diferente y nos ha llamado la atención diferentes áreas, diferentes partes entonces bueno estos son esos análisis por ejemplo tenemos lo que hemos definido como colaboración, es decir de líneas que podemos seguir desde desarrolladores hasta proyectos y después tenemos sin embargo proyectos aislados que sería un poco los los que están aquí en circulitos digamos punteados esto ocurre por ejemplo en el caso de la fundación Wikimedia o en el caso de de la Jones Hopkins en sí no es un proyecto de software libre pero es una organización que genera software libre y como tal pues bueno pues tiene en realidad ocurre lo mismo estas dos organizaciones de software libre siendo una entidad pública una universidad pues tienen una pinta parecida son similares en cuanto pues quizá al tamaño la manera de visualizar los datos el que existen pequeños proyectos que están aislados y bueno es interesante de ver, luego si por ejemplo comparamos otros dos ahora comparamos Wikimedia con el proyecto de caos el proyecto de caos es el que digamos donde está o reside el software que estamos usando para visualizar esto, luego os daremos algunos punteros y aquí podemos hablar quizá de comunidades tipo continentes continentes tipo Europa Asia y después tenemos lo que podemos llamar archipiélagos un conjunto de islas que están trabajando y si comparamos esto vemos que caos quizá sea un proyecto continente en el sentido de está todo muy muy junto, muy denso hay como mucha densidad dentro de los diferentes repositorios muchos desarrolladores que participan y en el caso de Wikimedia parece que en realidad los proyectos o los repositorios son casi tan numerosos como el número de desarrolladores esto por supuesto dependerá mucho de cuestiones tan básicas como incluso la arquitectura del sistema y como es este distribuido alrededor a lo largo y ancho de los diferentes repositorios que ocurre que los repositorios en la comunidad de caos son mucho más grandes en cuanto a números de líneas que por ejemplo los repositorios dentro de la fundación Wikimedia independientemente de cuál sea la razón de que esto se visualice significa que esto está pasando esta es la manera de funcionar que tienen estas dos comunidades que los dos son proyectos de software libre la fundación Wikimedia es la fundación de software libre, caos es un grupo de trabajo dentro de la fundación Linux pero bueno es interesante de ver el continente versus archipiélagos luego también tenemos dentro del mismo proyecto por ejemplo si volvemos al proyecto de caos tenemos desarrolladores que son de un solo proyecto, es decir recordad teníamos un punto que son desarrolladores si existe una unión con este cuadradito azul se han hecho una contribución al menos pero luego ocurre que claro si participas en más de uno de los repositorios pues vas a tener más de una o dos uniones y esto por ejemplo ocurre con estos desarrolladores que están aquí en MEDI entonces también dentro de las mismas comunidades podemos ver como partes de esa comunidad existe por ejemplo no existe colaboración entre comillas colaboración de los diferentes desarrolladores frente a otros repositorios que podemos ver en esta gráfica pero sin embargo si que hay otros desarrolladores que están participando en varios proyectos y esa manera de visualizar esa colaboración creo que es interesante porque podemos ver de nuevo este ancho y largo que puede ser una comunidad de software libre cualquiera ver en realidad y específicamente quiénes son esas personas que están ayudando quiénes están haciendo de puente entre esas dos comunidades o entre esos dos proyectos porque al igual que tenemos esta análisis por ejemplo que está dentro de la comunidad de caos podríamos extender este proyecto dentro de caos a otras comunidades y ver si hay personas que están haciendo de puente entre esos diferentes proyectos y bueno es un poco de esa visión luego también cuando estuvimos hablando Miguel Ángel y yo nos llamó la atención otra manera de ver las propias comunidades incluso dentro de las mismas comunidades tenemos zonas de las comunidades o de los proyectos que son muy densos hay como muchas líneas entre diferentes proyectos como podemos ver por ejemplo aquí que por cierto aquí hablamos de OpenSeed pero en realidad son varios proyectos diferentes que está también representado OpenStack y partes de otros proyectos digamos un poco de proyectos de interés para OpenSeed por ejemplo sería Kubernetes, esto es OpenSeed y los diferentes colores en este caso como comentábamos eran organizaciones y aquí podemos ver que hay zonas de participación que son más ligeritas es decir, la visualización es más clara hay menos desarrolladores, hay menos proyectos y después hay zonas que tienen muchos desarrolladores trabajando en el mismo proyecto y incluso hay zonas que están muy mezcladas podemos ver por ejemplo muchos repositorios dentro de este círculo naranja y lo mismo con Open Networking Foundation pues otro proyecto que podemos analizar, que también los dashboards son públicos y tenemos zonas muy densas lo tenemos muchos desarrolladores participando en muchos repositorios y zonas digamos más claridadas es un poco casi usando el símil de ciudades no grandes ciudades donde la población es muy densa y zonas de de los países pues que pueden ser menos densas, después resultabas un poco más hacia las afueras de las ciudades de crecer. Entonces bueno, es otra manera digamos de ver, de visualizar esta información y de hecho, incluso también comentábamos que dentro de los propios proyectos existen, hemos mencionado antes el concepto de continente pero incluso dentro de los propios proyectos existe ese concepto quizá de continente se divide en los proyectos en grandes grupos es cierto que claro hablamos en la derecha tenemos una universidad con una serie de proyectos que en realidad lo que estamos visualizando probablemente sea la estructura de diferentes departamentos dentro de una organización y en el caso de la fundación OpenInfra lo que estamos visualizando son diferentes proyectos por cierto, en el caso de OpenInfra tampoco es toda la información tenemos el proyecto de Zul, el proyecto de Starlink X y el proyecto de Catacontainers en este caso no tenemos información de OpenStar aquí tal pero para que veáis un poco lo que queremos decir es que un poco el ecosistema incluso siendo proyectos que están dentro de la misma fundación el ecosistema de Catacontainers podemos ver que es muy rico, muy diverso en cuanto a diferentes colores lo cual nos está diciendo que tenemos diferentes organizaciones participando diferentes desarrolladores que pertenecen a diferentes organizaciones participando en el mismo proyecto en embargo en el caso de Starlink X quizá esa diversidad sea un poco menor luego veremos un ejemplo un poco más en profundidad pues sin embargo la densidad la actividad de las diferentes empresas que están participando ahí es mucho más densa que en el caso de este otro proyecto y Zul que probablemente sea un proyecto más ligerito en cuanto a actividad bueno como que podemos de repente dividir en dos partes estos proyectos, estos tres proyectos de la fundación OpenInfra los podemos dividir y podemos ver además que no existe un desarrollador que participe tanto en la parte de la derecha como en la parte de la izquierda porque si no habríamos detectado que hay un nexo de unión un poco para también para tener en cuenta y por si alguien viene y no haya participado en ambos proyectos esta información es del último año ¿vale? lo único porque a lo mejor puede ocurrir que ocurrieras a esa participación y bueno también los datos pues en realidad puede ser que no se anda el todo correctos pero sólo por digamos un poco ilustrar esa manera de funcionar ese tamaño yo creo que es bastante interesante en el caso de la Johns Hopkins es un poco la misma idea ¿verdad? aquí un poco en vez de izquierda a derecha vemos arriba y abajo pero se divide ¿no? podemos ver un gran grupo de desarrolladores y proyectos en la parte de arriba donde existe colaboración entre diferentes departamentos y un gran grupo de proyectos en la parte de abajo también donde existe esa colaboración por cierto también un punto interesante si veis este proyecto ahí que está entre la H y la O tenemos un rectángulo y dos desarrolladores este proyecto supongo que lo conocereis es el dashboard que generó la Johns Hopkins para saber un poco la evolución de COVID en los últimos años alrededor del mundo, si recordáis que está por diferentes países y ver un poco la evolución pues este es uno de esos proyectos que era libre sobre todo tiene información acerca de datos y tal pero bueno es interesante ver que hay proyectos que todos conocemos en la vida real y que aquí están, son libres y cualquiera puede acceder a ellos entonces bueno aquí un poco lo que nos llamaba la atención es esa concentración de conocimiento quizás sin que existan desarrolladores que participan en un área y en otro y después un poco una de las últimas comentarios que tuvimos fue un poco la diversidad organizacional comentábamos no, antes hemos visto algunos casos en el caso de wikimedia, de nuevo perdonad un poco por los colores que tampoco son especialmente amigables pero la cuestión aquí es que tenemos una diversidad organizacional en la fundación wikimedia de inicialmente cuatro organizaciones en el caso de Openinfra pues tenemos todas estas organizaciones vale hay un montón de ellas también se pueden analizar ya que tenemos que personas trabajan en que áreas pues áreas de experiencia un poco donde cuál es el expertise de cada una de esas empresas dentro de de estos proyectos a nivel de colaboración claro es interesante lo que comentábamos antes no la variedad de colores que hay en este proyecto frente por ejemplo a este otro y luego la diferenciación de colores que hay también por ejemplo en wikimedia donde la mayor parte de esta actividad que tenemos aquí en verde a la derecha es todo si no recuerdo mal toda la parte de pagos y donaciones gestión un poco de toda esa parte y además son la gente de wikimedia alemania wikimedia alemania por aquí por aquí y bueno algunos algunos participaciones más por aquí por allá bueno es una manera de ver como diferentes entidades pues también colaboran entre sí y bueno un poco un poco resumiendo que hemos visto en todo esto pues mira nos hemos dado cuenta de que los proyectos están interconectados es decir cuando nosotros pensábamos al principio cómo funciona un proyecto software libre muchas veces pensamos de una manera muy muy enfocada no muy en modo silo en un solo proyecto y entonces tiene su propio es decir idiosincrasia idiosincrasia manera de funcionar etcétera etcétera pero sin embargo existe esa colaboración y desarrolladores que participan en muchos y muy diversos proyectos y además los desarrolladores ayudan a que esa información fluya entre diferentes proyectos también hemos visto por ejemplo que organizaciones y desarrolladores de alguna manera participan en estos proyectos de software libre en diferentes niveles hemos visto pues más individuos o más empresas que tienen más participación empresas que tienen menos y yo creo que en poco dos conclusiones interesantes son por un lado que los proyectos de software libre sin los contribuidores simplemente no existirían y también los proyectos sin esa colaboración tampoco existirían porque como si recordáis un poco esa definición que hablábamos al principio de colaboración es realizar una tarea con dos o más individuos o entidades o organizaciones entonces a partir de ahora un poco es casi discusión abierta también seguro que podemos comentar en el chat o después a través de correos estáis interesados que es que significa una colaboración saludable que es esto y la idea un poco de aquí en adelante es intentar formalizar toda esta parte de discusión y ver si de alguna manera podemos medir colaboración entonces bueno ahora Miguel Ángel nos va a contar un poco de teoría de grafios y redes y bueno todo tuyo muy bien pues muchas gracias Dani efectivamente la idea que teníamos una vez analizadas estas comunidades y viendo estas conclusiones tan interesantes que sacamos redes la idea era ver si podíamos formalizar esta información estas cosas que nos llaman la atención y formalizar este tipo de métricas y hay una teoría que es la teoría de grafos que es lo que nos apoyamos para sacar estas conclusiones y para comprender un poco mejor las comunidades que estamos analizando entonces empezamos con la pregunta básica ¿qué es un grafo? bueno pues si vemos la animación que viene a continuación vemos que un grafo es una manera de modelar la información, de modelizar la información es un modelo, es una representación desde una red como un conjunto de elementos conectados entre sí y veis ahí el esquema un poco los elementos básicos que tiene un grafo tenemos estos puntos llamados nodos aparte que nosotros estamos representando en las redes que hemos visto ahora eran desarrolladores ¿verdad? veis que los unen líneas, se llaman aristas ¿vale? entonces esas aristas pueden tener una dirección o no ¿vale? pueden tener un sentido ¿no? se llaman aristas direccionales o nodiccionales y básicamente pues también en estos grafos podemos encontrar subestructuras que se forman como estos clicks que son como este tipo de bucles y sub redes que se forman dentro del grafo entonces bueno esto es un poco en la representación a nivel matemático de este modelo que representa la información que estamos viendo ¿no? entonces el siguiente paso es muy bien ¿cómo podemos modelizar la información que tenemos para construir nuestro grafo ¿verdad? bueno pues lo hemos visto antes ¿no? partimos de una idea básica que es estamos hablando de comunidades de software libre las comunidades de open source lo forman personas entonces el nodo principal son precisamente las personas, la gente que contribuye a los proyectos, entonces modelizamos el grafo como el nodo son las personas que participan en los diferentes proyectos de la comunidad y hay una lista entre dos personas cuando las dos personas participan en el mismo proyecto esto es una manera de representar este tipo de red esta colaboración que está ocurriendo dentro de las comunidades pero hay muchas otras entonces en función de digamos en el aspecto en el que nos queramos colocar podemos representar la información de muchas maneras en este caso por ejemplo esto se parece más a las redes que hemos visto antes en la que hemos visto ejemplos de otras comunidades tenemos dos tipos de nodos tenemos la gente que contribuye a los diferentes proyectos y los proyectos en sí, entonces hay una lista cuando hay una lista entre un nodo, digamos de contribuidor y un nodo de proyecto cuando hay una colaboración entre esa persona a ese proyecto, entonces digamos participando en el mismo proyecto cuando comparten una lista a cada uno de ese tipo de nodo podemos añadir información extra como los colores, como hemos visto en las representaciones anteriores pero básicamente como montamos este modelo como representamos la información también implica las conclusiones que vamos a sacar en función del estudio que queramos hacer pues vamos a elegir cómo construir este red entonces vamos a partir de esta red básica muy bien, entonces ahora tenemos nuestra red, hemos representado nuestros nodos los azules representan personas por ejemplo naranja representan proyectos muy bien, y en qué nos podemos fijar para medir colaboración una vez que tenemos estas redes en qué nos podemos fijar bueno pues sí, lo vemos un poquito en la teoría de grafos hacemos dos preguntas principales la primera es si digamos qué propiedades de esta red vamos a hablar para medir esta colaboración tenemos que sacar unas 100 propiedades de la red y nos van a indicar aspectos de la colaboración y segundo, qué tipo de métricas deberíamos tener en consideración de tener en cuenta para complementar estas propiedades de la red y decir vale, pues esta colaboración pasa de esta manera y podemos sacar conclusiones de estos valores que obtengamos entonces bueno yendo si vamos a las propiedades de las redes vamos a señalar unas cuantas que son de las más relevantes que hemos visto al menos las que para hacer este tipo de análisis lo que más nos ocupan entonces la primera es la adjacencia entonces esta propiedad lo que dice es que básicamente dos no son adjacentes cuando hay una arista entre ellos cuando hay una conexión entre ellos y dos aristas son adjacentes si comparten uno de los extremos eso es la primera vamos a ver cómo aplicar cada una de estas propiedades y sacar una conclusión de cada una de ellas la segunda es el grado entonces el grado de un nodo es el número de conexiones que tiene con otros nodos en la red entonces cuántas conexiones llegan a cada nodo, digamos cuántas aristas salen o entran de cada nodo ese es el grado de un nodo entonces por eso también es una propiedad que podemos usar para sacar conclusiones y la siguiente es la conectividad y por lo tanto hay un concepto previo que es el concepto del camino decimos que un nodo se puede llegar a un nodo a partir de otro cuando hay un camino entre ellos cuando se puede seguir una línea continuada sin saltos saltando entre nodos pero continua entre ellos entonces decimos que un grafo está conectado es conexo cuando hay un camino para cada par de nodos en el grafo cuando hay un nodo podrías llegar a cualquier otro nodo muy bien y eso nos lleva una vez construidos estas propiedades principales a las métricas de centralidad que son un tipo de métricas que nos van a ayudar a sacar conclusiones un poco más a alto nivel en el sentido de con la red completa entonces esta medida de between the centrality es una manera de medir la influencia que tiene un nodo respecto al resto por donde fluye la información esto lo que ofrece es una medida de que nodos son los más influyentes en la red ¿por qué? porque esta medida es la que se usa para encontrar nodos que hacen de puente entre una parte del grafo y otro y eso en las redes de colaboración de comunidades superlibres es muy interesante porque solo es gente que hace the next entre dos proyectos gente que está contribuyendo en varias partes del proyecto entonces van a ser gente muy relevantes en nuestra red o gente que une diferentes partes del proyecto y que por tanto va a tener información muy relevante de varias partes del proyecto y es gente que también puede arrastrar a más grupos de gente que lo rodea muy bien entonces lo siguiente es aplicar estos conceptos teóricos a una red real como la que hemos visto antes los puntos azules en este caso son contribuidores y los nodos que tienen forma de cubo de cilindro son los proyectos ¿de acuerdo? entonces podemos construir la red como hemos visto antes entonces el primer concepto que hemos visto antes es el de la ciencia ¿verdad? entonces ¿cómo podemos aplicar ese concepto a la red que estamos viendo? pues aquí podemos ver que los nodos que son contribuidores que comparten aristas ¿no? a nodos proyecto lo que indica es que esa gente está colaborando a ese proyecto entonces si dos personas contribuieron al mismo proyecto pues decimos que hay una colaboración entre ellas esa es la primera conclusión la segunda es el grado es la cantidad de conexiones que tiene cada contribuidor indica a cuántos proyectos está contribuyendo a la vez esto es muy interesante porque tenemos el grado que podemos sacar que personas están contribuyendo a más o menos proyectos entonces no puede servir para encontrar casos de esquina por ejemplo personas que solo están contribuyendo a un proyecto o personas que contribuyen a muchos proyectos a la vez y la siguiente que vimos antes era la conectividad ¿no? entonces hemos dicho que una red que está muy con exa que está muy conectada entre sí podemos decir que indica que es una comunidad muy colaborativa ¿no? y cuanto más caminos haya entre los nodos de la red significa que más han contribuido a los proyectos más han colaborado entre ellos mientras tanto como hemos visto antes en las redes que hemos estado dando en las que se veían una especie de islas ¿no? hemos hablado de la chipiélago ¿no? usan que estaban un poquito más aisladas cuanto menos conexiones haya y menos caminos pues digamos que podemos considerar que los proyectos son un poquito más independientes muy bien y nos quedan las medidas de centralidad ¿no? y ¿para qué nos puede servir esto? como hemos visto antes estas medidas son importantes en cuanto nos permiten encontrar ¿no? esa gente que hace de nexo entre diferentes partes del proyecto o entre diferentes proyectos que es una gente que actúa como puentes ¿no? en la comunidad entonces es gente muy influyente porque es gente que tiene como hemos dicho contexto de varias partes o de varios proyectos o de varios proyectos a la vez entonces nos podemos fijar que es gente animación en estos nodos que tienen una medida de sensibilidad más alta porque hay varios más caminos que pasan por ellos saber quiénes son estas personas puede ser realmente útil y perdón a Miguel Ángel que le he dado demasiado rápido el botón entonces bueno ahora un poco la idea tenemos un poco vamos a decir el framework teórico y un poco casi llamada abierta a la audiencia es pues vamos a colaborar para definir colaboración ¿no? un poco lo que parte del objetivo de la charla pues donde podemos trabajar todas estas métricas que estamos hablando y demás como comentaba antes está la comunidad de caos de la cual tanto Miguel Ángel como yo formamos parte en los crónimos que comentaba en realidad son analíticas de proyectos software libre enfocadas en la salud de los proyectos de las comunidades y en caos.community es donde podéis acceder además podéis ver los diferentes enlaces para participar los diferentes grupos de trabajo el software que se usa y bueno un poco la idea de trabajar ahí el grupo de caos digamos el grupo de trabajo se divide en dos grandes grupos esto significa que las personas que trabajan en uno no trabajan en otro ni nada por el estilo simplemente que un poco la salida lo que podemos tocar de alguna manera son dos artefactos diferentes por un lado a la izquierda veis métricas básicamente la implementación de métricas desde el punto de vista agnóstico desde el punto de vista agnóstico tecnológico vamos a decir sin tener en cuenta cómo se pueden implementar pero sí porque podrían ser interesantes es decir la charla que estamos comentando hoy en la que estamos participando en realidad es un poco eso cuáles son las métricas que podrían ser interesantes porque son interesantes y a quién puede ser útil hemos visto ejemplos de de empresas comunidad de software libre con un foco mucho más empresarial comunidad de software libre con un foco menos empresarial más empresas participando menos empresas participando fundaciones etc y luego por otro lado estaría el software que lo que habéis un poco a la derecha la derecha digamos serían hay un par de tres herramientas principales que serían cregit ogre esgrimware lab la que desarrollamos y con la que se han hecho las visualizaciones que tenéis hoy en la pantalla esgrimware lab un poco sobre la que vamos a comentar un poquito más está toda la información de software definido en métricas o todas las métricas que se han definido existen en la parte de software la respuesta es no pero hay bastante intersección estamos en ello parte de este trabajo, la parte de métricas por ejemplo y eso es el trabajo que está justo ocurriendo ahora mismo lo digo por si tenéis algo de interés en ese tipo de análisis pues estaría bien identificar donde se puede aportar y donde se puede ayudar, entonces bueno que veáis que hay un proceso de trabajo en el grupo de trabajo de modelo de métricas modelo de métricas sobre todo lo que se está haciendo es agrupar métricas para definir pues casos de uso por ejemplo como podemos medir influencia es una de las cuestiones que están tratando justo en esta definición de métricas, vale pues influencia en este caso parte de esa definición bien edada por el propio algoritmo de centralidad que ha mencionado antes Miguel Ángel entonces bueno hay varias discusiones bastante interesantes que están allí funcionando y también hay un slack de la comunidad de caos al que sois por supuesto bienvenidos por la parte de software mencionar que la herramienta como comentaba que se ha utilizado para desarrollar todo esto es Grimoire Lab tenéis ahí el enlace que es proyecto escrito en python dentro de la fundación y a efectos prácticos pues lo que hace es, vamos a decir reducir la complejidad en nuestras vidas hay un montón de APIs posibilidades de recoger información de diferentes repositorios pues esto lo que hace es ofrecer un frontend de alguna manera para evitar eso entonces eso de alguna manera recoger todos estos datos los guarda en formato JSON y tenemos lo que se llama los datos en bruto esos datos en bruto contienen información de afiliaciones que por cierto la herramienta bueno o el servicio comercial de alguna manera pues tiene en cuenta por supuesto gdpr y todas estas cuestiones con datos datos de carácter personal entonces por eso existe una base de datos específica para identidades y afiliaciones donde la gente puede hacer in and out como digamos que la ley indica y luego junto con estas dos piezas de información fundamentales y otra información que puede venir pues se generan índices que se encuentran ya alineados con la visión final de negocio que significa esto pues en realidad lo que quiero decir es que tenemos índices que están ya predispuestos a ser consumidos con métricas específicas acerca de las diferentes comunidades es decir nosotros por ejemplo los análisis que hemos hecho las gráficas de colaboración de las diferentes comunidades están basados ya en esos índices el último bueno pues una vez que tenemos esta información pues podemos generar informes etcétera etcétera algunas ventajas de usar grimoire lab frente a tener que hacerlo tú manualmente bueno pues por un lado es una herramienta que lleva ya años usándose tiene una base académica muy fuerte con lo cual digamos que justo los casos esquina se tienen muy en cuenta y bueno pues son se hace siempre un análisis incremental de los datos se actualizan se gestionan continuamente por supuesto si tiene toda la información histórica y este tipo de cuestiones generalmente si vamos directamente a la API de los diferentes servicios pues no te dan esa información no esas métricas que están ya listas digamos para ser consumidas y todo esto sobre 30 fuentes de datos diferentes también con el objetivo como comentamos de tener información acerca de procesos de desarrollo de software y un poco ya más allá de los datos que os hemos enseñado como comentamos el proyecto de software libre es grimoire lab luego como comentábamos Miguel Angel y yo pues trabajamos en una empresa que se llama se llama Obitergia y esta empresa pues a final ofrece servicios comerciales sobre grimoire lab y luego bueno además consultorías sobre innersores y análisis de comunidades de software libre por oficinas de software libre dentro de grandes organizaciones etcétera etcétera entonces todos los datos que os hemos mostrado son datos públicos porque así lo han querido digamos los clientes de bitergia todos los datos son públicos y cualquiera puede acceder, nosotros hemos hecho acceder esos datos y generar estas visualizaciones pero luego también hay otros casos de uso que creo que son muy interesantes compartir con vosotros por un lado son métricas relacionadas con innersores tal que no esté muy al tanto de que significa innersores innersores de alguna manera si lo simplificamos mucho traer las buenas prácticas de desarrollo de comunidades de software libre y implantarlas dentro de las grandes organizaciones entonces fijaros que vamos donde hay modelos de modelos muy jerárquicos muy muy donde existe una cultura de empresa muy fuerte donde generalmente existe un knownership muy fuerte también temas de vallet y tal a modelos donde lo que digamos de alguna manera lo que te da poder es compartir podemos traer ese concepto de meritocracia entonces tenemos que irmos sobre todo con innersores lo que necesitamos hacer es un cambio cultural muy fuerte y bueno parte en este caso de lo que ayudamos a las empresas a montar un poco la iniciativa de innersores y por eso tenemos métricas también para ver si lo que decimos que estamos haciendo estamos yendo en la dirección correcta bueno igual con entender es un caso de uso público estamos aquí comentando nada nuevo tenemos otro caso con la gente con OpenShift donde un poco el concepto de colaboración viene dado por la necesidad de gestión de la comunidad entonces vamos de modelos de comunidad donde antes digamos que solo era el proyecto de OpenShift cuando empezamos a trabajar en su momento con Dayan pues mejor había 200 personas y ahora OpenShift es una distribución de Kubernetes y estamos hablando de que la comunidad de CNCF una comunidad de miles de desarrolladores vamos a escalar de alguna manera en nuestra gestión de datos y parte de estos análisis de redes son muy interesantes porque podemos ver aquí por ejemplo a que empresas pertenecen los nuevos desarrolladores que enlaces tienen con otros desarrolladores como podemos llegar a ellos para procesos, tener básicamente procesos donboarding que sea más rápido etc etc bueno es de nuevo tener en cuenta esas cuestiones de colaboración y después un informe que creo que es muy muy relevante muy interesante es un poco la Rebel Alliance que lo realizamos en colaboración con otra empresa y con la fundación Mozilla para entender quién es quién vamos a decir dentro de la fundación Mozilla y un poco lo que lo que veis un poco las grandes razones para tener esto es tener una visión holística del ecosistema de contribuidores la estructura de red que genera que es un poco la charla de hoy salud y el impacto y de alguna manera son capaces o somos capaces ahora de visualizar de describir visualmente estos diferentes interacciones entre las diferentes comunidades y todo esto gracias al concepto en sí mismo de colaboración que somos capaces de generar estas redes y ver quién está participando dónde bueno si no habéis echado un vistazo a este informe es también acceso libre bajo una licencia libre por supuesto y tenéis aquí en report.mozilla.community y poco más en realidad el último informe que queríamos comentar era este el de Mozilla muchas gracias por vuestro tiempo espero que haya sido una charla interesante Miguel Ángel no se quieres comentar algo más nada más un placer estar por aquí muchísimas gracias también por vuestro tiempo y por tener la charla pues nada pues muchas gracias a todos por vuestro tiempo un saludo