Mostrando postagens com marcador open source. Mostrar todas as postagens
Mostrando postagens com marcador open source. Mostrar todas as postagens

quinta-feira, 22 de julho de 2010

Bazedral - Pensamentos e Dicas para uma Empresa mais Colaborativa

Foi muito legal a apresentação feita no FISL 11. O público superou minhas expectativas, ainda mais se tratando de uma palestra as 13h. Não sei se foi por causa do título, pois achei que "Explorando a Cultura Colaborativa das Comunidades de Software Livre" já tava meio manjado e não atrairia interesse.



Estão aí os slides. Se quiser contribuir esteja à vontade para comentar. Será muito bem vindo!

terça-feira, 18 de março de 2008

Os 5 Tipos de Projeto Open Source

Procurando informações sobre tipos de projeto de código aberto, achei um texto muito interessante de Josh Berkus, membro do time do PostgreSQL desde 2002. Em The 5 Types of Open Source Projects, ele procurou uma classificação organizacional, focando em quem toma as decisões, quais são objetivos estratégicos, como alguém pode se juntar ao projeto, dentre outros. Farei aqui um breve resumo, dando uma pitada da minha visão.

1 - Solo. Um ou dois colaboradores mantém 100% do código e tomam todas as decisões. Normalmente é fácil contribuir, afinal eles abriram o código com objetivo de compartilhar, portanto sentem-se meio que emocionados quando alguém oferece ajuda. A maioria (mais de 90%) dos projetos está nessa categoria.

2 - Monarquia. É um "Solo que deu certo". Mesmo tendo uma criado uma comunidade grande em torno do projeto, as decisões principais ainda são tomadas pelo seu líder ou um pequeno grupo por ele indicado. Contribuir (e obter retorno) é relativamente fácil, ainda mais quando há aproximação com o líder ou o núcleo principal.

3 - Comunidade. Com um número significativo de contribuintes, existe um processo social intenso (fóruns e listas extremamente ativos) e as decisões são tomadas numa combinação de meritocracia e concenso. A"voz" de cada um é proporcional à qualidade e quantidade das contribuições.

4 - Corporativo
. Geralmente código fechado de uma empresa, que mesmo após aberto ainda não se desvencilhou dela. A maioria dos colaboradores ainda é empregado da companhia, portanto sujeita aos seus direcionamentos. Contribuir é frequentemente difícil, por isso os programadores independentes não se sentem muito atraídos. Um suporte de melhor qualidade pode ser obtido através de um contrato ou licença comercial.

5 - Fundação. O ponto máximo de organização formal em um projeto open source bem sucedido, que necessita das vantagens de uma estrutura legal e a possibilidade de empregar funcionários e receber doações. O ingresso (individual ou de empresa) normalmente passa por um processo formal. Existem patrocinadores que também dão sustentação comercial.

A classificação de 1 a 5, acima, indica uma tendência crescente de formalismo. Os Solo são mais informais e menos burocráticos, enquanto os Corporativos e de Fundação possuem exigências e regras documentadas, inevitável aos seus participantes. Berkus enfatiza que essa é uma classificação subjetiva, sugerindo que verifiquemos as coisas por nós mesmos.

Finalizando, entender como funciona o mundo do Software Livre nos ajudará a encontrar os caminhos para promover uma maior colaboração interna às organizações. Nada melhor, porém, que participar ativamente de algum tipo de comunidade ou grupo de usuários, para perceber o quanto estamos perdendo tempo em aplicar esses princípios no nosso dia-a-dia. Escolha um tema do seu interesse e comece já!!!

segunda-feira, 18 de fevereiro de 2008

E esse tal de Software Livre?

Software Livre, na definição do Wikipedia, é qualquer programa de computador que pode ser usado, copiado, estudado, modificado e redistribuído sem nenhuma restrição. A maioria dos softwares livres é distribuída através de uma licença, como a mais conhecida GNU GPL.

Algumas das características marcantes do desenvolvimento do SL envolvem: Desenvolvimento descentralizado via internet - apoiado por ferramentas de comunicação e colaboração; Interesse pessoal do autor - por também ser usuário do software tem, portanto, motivação pessoal na sua criação e manutenção, apoiando seus usuários e fazendo esse grupo crescer; Usuários participantes - é comum que os usuários finais se comuniquem com alguma regularidade, entre si e com os desenvolvedores, comunicando problemas e trocando experiências; Liberdade de escolha - os desenvolvedores podem escolher o trabalho que desejam realizar.

Agora pense na sua empresa. Não seria bom trabalhar em projetos com essas características? Mas no mundo real nem sempre é possível. Você às vezes é obrigado a trabalhar usando tecnologia ultrapassada, num sistema que não gosta, com ferramentas inadequadas, em atividades que não escolheu e com prazos que não assumiu. E, pior ainda, aturando um chefe "mala" ultrapassado tecnicamente e sem a menor habilidade gerencial. Vai falar pra ele que quer desenvolver colaborativamente, usando termos bonitos como Open Source, Meritocracia e Wiki. No mínimo você vai ouvir: "Ô meu filho, deixa de gracinha e vai trabalhar, vai!".

Segundo Raymond, "um coordenador ou líder de um projeto no estilo Bazar deve ter boa habilidade de comunicação e relacionamento. Isto deve parecer óbvio. Para construir uma comunidade de desenvolvimento, você precisa atrair pessoas, fazer com que se interessem no que você está fazendo, e mantê-las alegres sobre a quantidade de trabalho que estão fazendo. O entusiasmo técnico constitui uma boa parte para atingir isto, mas está longe de ser toda história. A personalidade que você projeta também importa. Não é uma coincidência que Linus é um rapaz gentil que faz com que as pessoas gostem dele e que o ajudem. Não é uma coincidência que eu seja um enérgico extrovertido que gosta de trabalhar com pessoas e tenha um pouco de porte e instinto de um cômico. Para fazer o modelo Bazar funcionar, isto ajuda enormemente se você tem pelo menos um pouco de habilidade para encantar as pessoas". E ele diz ainda: "Eu penso que não é crítico que o coordenador seja capaz de originar projetos de excepcional brilho, mas é absolutamente crítico que o coordenador seja capaz de reconhecer boas idéias de projetos de outras pessoas."

Portanto, se você é diretor ou gerente de uma empresa, minhas sugestões são: Participe de alguma comunidade ou projeto de código aberto, pois você vai começar a entender a dinâmica da coisa; Escolha melhor seus líderes e discuta com eles as formas de trabalhar colaborativamente; Estimule a colaboração nas pequenas coisas, seja parar o que está fazendo para auxiliar um colega, registrar num Wiki ou blog interno a solução para um problema que você enfrentou ou desenvolver um código/componentes sempre pensando em reutilização; Estude continuamente, pois as coisas mudam rápido.

Finalizo com uma dica de leitura: Producing Open Source Software - How to Run a Successful Free Sofware Project, de Karl Fogel. É um livro sobre o lado humano do desenvolvimento Open Source, que descreve como projetos bem sucedidos operam, a expectativa dos usuários e desenvolvedores e a cultura do software livre. O livro é distribuído usando o Open Copyright e você pode baixar o PDF.

Até a próxima!