Curso sobre software libre
Organizaci´
on de comunidades
Jes´
us M. Gonz´
alez Barahona
[email protected]
M´
ostoles, mayo de 2007
1
c
2004-2007 Jes´us M. Gonz´alez Barahona. Algunos derechos reservados. Este art´ıculo se distribuye bajo la licencia “Reconocimiento-CompartirIgual 2.5 Espa˜na” de Creative Commons, disponible en
Introducci´on 2
Introducci´
on
Cada proyecto tiene su propia organizaci´on, sus propias reglas A continuaci´on, estudio de algunos proyectos especialmente intere-santes
Desde el punto de vista de la organizaci´on del proyecto Desde el punto de vista de las condiciones de contribuci´on
Desde el punto de vista de c´omo se fomentan las contribuciones externas
Fundamentalmente desde el punto de vista de la pol´ıtica codificada
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
Proyecto Apache. ASF 3
Proyecto Apache. ASF
Organizaci´on general: Apache Software Foundation
Fundamentalmente, paraguas legal y financiero para el proyecto Apache
Establecida en 1999 (el proyecto comienza en 1995) Organizada en torno a un “grupo de subproyectos”
Board of directors, project management committees (uno por sub-proyecto), officers
Proyecto Apache. Papeles 4
Proyecto Apache. Papeles
Usuarios: proporciona realimentaci´on (erratas, peticiones)
Desarrolladores: contribuye c´odigo o documentaci´on (activos en lis-tas, contribuyen parches, critican, etc.)
Committer (unos 800): desarrollador con acceso de escritura al re-positorio (ha firmado el CLA, toman decisiones a corto sobre c´odigo, pero sujetas al PMC)
Miembro del PMC: desarrollador or committer, elegido por el Board, decide sobre qui´en pasa a committer, vota en decisiones sobre su subproyecto
Miembro de la ASF: nominado por otros miembros, elegido por m´erito, “due˜nos” de la ASF
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
Proyecto Apache. Board of governors 5
Proyecto Apache. Board of governors
Decisiones pol´ıticas econ´omicas, legales, etc. 9 elegidos cada a˜no entre miembros ASF Asignaci´on de recursos a subproyectos
Proyecto Apache. Officers 6
Proyecto Apache. Officers
Elegidos por el Board
Uno por subproyecto (comunidad)
Un chair, presidente, tesorero y secretario Son el brazo ejecutivo de la ASF
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
Proyecto Apache. Reglas de funcionamiento 7
Proyecto Apache. Reglas de funcionamiento
Cada PMC es independiente, sus propias reglas Consenso, falta de jerarqu´ıa, meritocracia Comunicaci´on: listas de correo, sobre todo
Toma de decisiones: poder de los que hacen (con matices: consenso perezoso para resolver conflictos)
Filosof´ıa compartida
Incubador de nuevos proyectos Varios comit´es horizontales
Proyecto Apache. Project management committees (PMC) 8
Proyecto Apache. Project management
committees (PMC)
Al menos un oficial de la ASF y un committer El chair es el elegido por el Board
El chair define procedimientos para el d´ıa a d´ıa de la gesti´on de la comunidad
El chair decide la composici´on de su comit´e
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
Proyecto Apache. CLA, software grants 9
Proyecto Apache. CLA, software grants
Individual Contributor License Agreement: committers
Corporate CLA: empesas que asignan committers al proyecto Software grant: individuos o empresas que donan software al pro-yecto (s´olo si va a al Incubator o lo acepta un PMC)
Proyecto Apache. Referencias 10
Proyecto Apache. Referencias
Organizaci´on: “How the ASF works”
C´omo contribuir: “Contributors Technical Guide”
Normas de codificaci´on C: “Apache Developers’ C Language Style Guide”
http://apache.org/foundation/how-it-works.html http://apache.org/dev/contributors.html http://apache.org/dev/styleguide.html
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
Proyecto Apache: subproyecto XML 11
Proyecto Apache: subproyecto XML
Organizaci´on del proyecto: “Project guidelines”
Proyecto Apache: subproyecto Jakarta 12
Proyecto Apache: subproyecto Jakarta
Organizaci´on del proyecto: “How to Get Involved” y “Project Gui-delines”
http://jakarta.apache.org/site/getinvolved.html http://jakarta.apache.org/site/guidelines.html
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
Proyecto Apache: subproyecto Web Services 13
Proyecto Apache: subproyecto Web Services
Normas del proyecto: “Get Involved!”
OpenOffice.org. Gobierno 14
OpenOffice.org. Gobierno
Community Council
Decisiones y debates p´ublicos (lista de correo, IRC) Aprueba las Guidelines generales del proyecto
Gu´ıa estrat´egica, ´arbitro de la comunidad, relaciones del proyecto No tiene poderes sobre: propiedad intelectual, licencias, recursos de Sun
Elegidos por los desarrolladores (cuotas para Sun, no-Sun, otros) Engineering Steering Committee: responsabilidades t´ecnicas
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
OpenOffice.org. Papeles 15
OpenOffice.org. Papeles
Members: cuenta en OpenOffice.org
Desarrolladores: miembros promocionados (por sus contribuciones, por nominaci´on), acceso escritura a CVS
Desarrolladores de contenidos: acceso escritura a CVS para docu-mentaci´on
Project Leads: dos por proyecto, responsabilidad sobre el proyecto, toma de decisiones sobre c´odigo, el Council puede removerlos, los eligen los desarrolladores del proyecto
OpenOffice.org. Contribuciones 16
OpenOffice.org. Contribuciones
Todo el c´odigo contribuido protegido por GPL/LGPL y SISSL Documentaci´on protegida por Public Document License
Contribuciones “mayores que peque˜nos cambios”: Joint Copyright Assignment (copytright compartido entre Sun y el autor)
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
OpenOffice.org. Referencias 17
OpenOffice.org. Referencias
Normas del proyecto: “Guidelines for Participating in OpenOffi-ce.org”
Regulaci´on del Community Council: “Community Council Proposal” C´omo contribuir: “Contributing to OpenOffice.org”
Asignaci´on de copyright: “Joint Copyright Assignment”
http://www.openoffice.org/dev docs/guidelines.html http://council.openoffice.org/CouncilProposal.html
Mozilla. Papeles 18
Mozilla. Papeles
Comunidad: todos los que contribuyen
Fundaci´on: organizaci´on de la comunidad (nacida en 2003, finan-ciada originalmente por AOL)
Personal de la Fundaci´on: gu´ıa del proyecto, decisiones ejecutivas, 10 personas (empleados)
Drivers: project managers, en nombre de la Fundaci´on
Due˜nos de m´odulos: delegados por personal de la Fundaci´on, deci-den sobre c´odigo
Super-reviewers: revisan cualquier c´odigo, hace falta su aprobaci´on para subirlo al repositorio
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
Mozilla. Contribuciones 19
Mozilla. Contribuciones
Para tener acceso de escritura, CVS Contributor Form (licencias bajo las que se contribuye, propiedad del c´odigo)
Requisitos: c´odigo propio, permiso del empleador
Todo c´odigo: con una licencia aprobada por el proyecto (normalmen-te MPL/LGPL/GPL)
Proceso de aceptaci´on de committers (basado en conocimientos y m´erito, patrocinio por otro committer)
Mozilla. Referencias 20
Mozilla. Referencias
Organizaci´on del proyecto: “Mozilla Roles and Responsibilities” Programaci´on: “Hacking Mozilla”
Licencias: “Mozilla.org Licensing Policy”
http://www.mozilla.org/about/roles.html http://www.mozilla.org/hacking/ http://www.mozilla.org/MPL/license-policy.html
c
Jes´us M. Gonz´alez Barahona Curso sobre software libreOrganizaci´on de comunidades
FreeBSD. Referencias 21
FreeBSD. Referencias
Pol´ıticas para desarrolladores: “Policies for FreeBSD Committers”
Otros casos 22
Otros casos
Gnome Foundation KDE e.V
Debian Project y Software for the Public Interest Free Software Foundation
Linux
http://foundation.gnome.org/ http://ev.kde.org
c