Qual a motivação do desenvolvimento de Software Livre?

by

Caro desenvolvedor ou qualquer pessoa que se interesse por tecnologia. Hoje em dia, consagrado o amplo sucesso dos softwares livres, com a maturidade destes, nos sentimos confortáveis em utilizá-los em nossas tarefas. Softwares como o próprio Linux, Apache, Asterisk, Openser são exemplos de maturidade, estabilidade, escalabilidade e Customização baseando-se neste tipo de desenvolvimento de Software.

Bem, é bom lembrar que Software Livre não é “Cerveja Grátis” mas sim, Softwares que têm seu código fonte aberto e com isso qualquer pessoa pode adaptá-lo às suas necessidades, o tornando melhor. Por isso, não há um conjunto de programadores em uma determinada empresa pagos para desenvolvê-los, mas sim programadores espalhados por todo o Globo. Deste modo:  NÃO há RENDA à estes programadores… eu lhe pergunto: Você, que utiliza Software Livre, já parou pra pensar o que motiva esses caras (programadores) a desenvolver esses softwares para nós utilizarmos? O que leva essas almas a gastarem seu tempo, seus conhecimentos, suas habilidades desenvolvendo estes softwares??

Simplesmente é algo que não têm preço: o Conhecimento.
É o que diz um estudo denominado “Toward an Understanding of the Motivation of Open Source Software Developers

Para entendermos o estudo, precisamos dividir o tema em dois Posts. O primeiro vai desmistificar a estrutura por dentro do desenvolvimento e o segundo irá tratar o estudo da motivação dessas pessoas.

Comunidades Open Source.

A peça principal para o sucesso de um Desenvolvimento de Software Livre (projeto) é a comunidade envolvida.
O que é esta “Comunidade”?
São Grupo de pessoas que pelos seus interesses em comum se tornam informalmente “parceiros” em um assunto/projeto/busca/ideal específico. São voluntários cuja a motivação os levam a participar e contribuir com o projeto. A comunidade provê ao projeto uma plataforma de compartilhamento de conhecimento com os membros, dessa forma disseminando o conhecimento.

Diferente do desenvolvimento fechado, que há um chefe, que se encarrega de alocar uma equipe designada à programar, onde já está definido quem serão os usuários do sistema em um cenário em que há uma separação clara: usuários e desenvolvedores. No desenvolvimento fechado um usuário não se tornará um desenvolvedor, a menos que quando o chefe achar que ele mereça, ele suba de cargo e venha a tornar-se um programador. No desenvolvimento Open Source não há uma distinção clara de quem é usuário e quem é desenvolvedor, qualquer membro da comunidade pode se tornar um programador em potencial, bastando este ter o conhecimento para tal, sendo que, como membro da comunidade, ele buscou e busca conhecimento e contribua para o software. Esta “transição” de, digamos, “status”, os autores do estudo denominam de “role transformation”.

Dentro da comunidade temos uma espécie de Distinção Social. No começo pessoas envolvidas criam uma comunidade envolta de um projeto particular motivados por um interesse compartilhado em utilizar e/ou desenvolver o Software. Membros da comunidade assumem por si mesmos as “roles” de acordo com seus interesses pessoais no projeto. Estudando quatro projetos Open Source, os autores do estudo puderam classificar oito (8) “roles”:

Project Leader (Lider de Projeto): A pessoa que iniciou o projeto. O Project Leader é o responsável pela visão e os rumos que o projeto seguirá. (Mark Spencer é o criador e assim o Project Leader do Asterisk)

Core Member: São responsáveis por guiar e coordenar o desenvolvimento do projeto. São aquelas pessoas que estão envolvidas com um projeto durante muito, muito tempo, fizeram e fazem contribuições significantes para o desenvolvimento e a evolução do Software.

Active Developer: São os que regularmente contribuem com novas features e bug fixes para o software. São as maiores forças do desenvolvimento do Software Livre.

Peripheral Developer: São pessoas que ocasionalmente contribuem com novas funcionalidades ou features para o sistema. Sua contribuição é irregular e o período de envolvimento é curto e esporádico.

Bug Fixer: São pessoas que corrigem os bugs encontrados por elas mesmas ou reportados por outros membros. Bug Fixer precisam ler e entender algo do código do software.

Bug Reporter: Descobrem e reportam bugs. (Hmm.. Quando o seu Firefox bugou e abriu aquela tela de Bug Report, você se tornou um Bug Reporter? Ou cancelou?). Ele não corrige o bug e não possui conhecimento do código fonte. São como se fossem a área de Quality Assurance do projeto. (Legal não?!) Por isso, para um Software com muita qualidade e com poucos bugs, é essencial vários membros que contribuam como Bug Reporter (Lembre-se disso!).

Reader: São usuários ativos do Software. Não somente usam o Software, mas tentam entender como o software funciona, lendo o código, documentação… Dado a alta qualidade dos Softwares Livres, alguns Readers, para aprender a programar, lêem o código do software ou usam-no como referência à desenvolvimento de softwares similares.

Passive User: Apenas ultilizam o software para alguma determinada necessidade. (A maioria de nós) São atraídos a utilizá-los pela alta qualidade e o potencial de ser alterado quando surgir a necessidade.

Essas oito Roles não são REGRAS em todas as comunidades e a porcentagem de membros em cada uma varia.

Estrutura.
Apesar de não existir uma distinção hierárquica, a estrutura da comunidade não é completamente plana.
Dependendo de qual role o membro participa, mais ou menos influência este terá no Software e na Comunidade.
Considere as camadas da imagem acima como os “roles”. Quanto mais perto do centro, mais influência este terá na comunidade e no Software. Em outras palavras, a atividade do Project Leader influenciará mais membros do que o Core Member, no qual terá mais influencia do que o Active Developer e por aí vai.
Como exemplo, citamos a responsabilidade do RoadMap que é uma atividade do Project Leader que impacta toda a comunidade e, partindo para outra “camada”, uma alteração em um determinado ponto do código pelo Bug Fixer não necessariamente impactará para todos, mas para aqueles que utiliza a feature que for corrigida. Não que uma role seja “mais importante” que a outra. As camadas externas têm sua importância, tanto social dentro da comunidade, como psicológica, atraindo e motivando mais pessoas, podendo esses serem potencialmente membros mais ativos e conseqüentemente, aprofundando seus conhecimentos e contribuindo mais ativamente, alcançando outros roles. Como analogia, imaginemos as camadas do centro como atores de uma peça de teatro, e o restante como a platéia… o que são os atores sem aplausos?? Não serão motivados? O grau de influência dentro da comunidade pode ser considerado mais uma motivação? Gostaria que expressassem suas opiniões para discutirmos, e com o segundo post teremos a visão do estudo sobre a questão.

Um abraço e até lá.

Adelson Junior

12 Respostas to “Qual a motivação do desenvolvimento de Software Livre?”

  1. Rodrigo Ribeiro Says:

    Belo post Adelson! Um conteúdo muito útil e que nos faz pensar mais sobre as diretrizes e meios que permeiam a área de software livre.

  2. Fabrício Ferrari de Campos Says:

    Realmente quando falamos em motivação para alguém trabalhar, todos já pensam no dinheiro. Mas na minha opinião, o dinheiro é apenas conseqüência do seu conhecimento e esforço.
    Logo, os desenvolvedores de Software Livre, adquirem diretamente conhecimento e reconhecimento com o seu trabalho. E indiretamente eles vão conseguindo novos empregos ou elevação de cargo, graças ao conhecimento adquirido.
    Afinal, atualmente a melhor moeda de troca é o CONHECIMENTO.

    Sensacional o post Adelson!

  3. ensinar Says:

    Os projetos de software livre, crescem a cada dia que passa. Mas quem banca esse crescimento ?
    Como o proprio nome já fala, LIVRE. Grandes empresas contribuiem com esse desenvolvimento mandando verba para os desenvolvedores destes projetos. Várias empresas como a Google que contribuia com o firefox.
    Muito bom Adelson, valeeu =))

  4. Adelson Junior Says:

    Valeu pelos comments pessoal.
    E sobre as GRANDES empresas que “bancam” o Software Livre, apesar da grande motivação dos desenvolvedores não ser o dinheiro, para manter um projeto sempre se precisa de dinheiro. Essas empresas, por se beneficiarem do Software e perceberem como esse modelo de desenvolvimento colaborativo é eficiente, cada vez mais estão investindo. São como patrocinadores. Todo “talento” precisa de patrocínio. E isto realmente empulsionou, e muito.

  5. Daniel Says:

    Hoje em dia discute-se muito a inovação e a abertura do capital intelectual.

    Passamos a fase em que o maior bem era a terra, para a fase onde o maior bem era a ferramenta (o maquinário), passamos a época onde o maior bem era a patente (muito embora a maioria ainda briga com isso). Hoje o maior bem da empresa são as pessoas, o capital intelectual, onde realmente está guardado o conhecimento.

    E como conseguimos gerar esse bem? Com pesquisa, com desenvolvimento, gerando conhecimento. E disseminando a infomação. Informação sem assimilação não é conhecimento. O Blog está andando bem pois muitos o vêem como forma de discutir e disseminar a informação, mas não paramos só aqui, nos empenhamos em fazer de tal forma que o outro assimile com mais facilidade.

    Parabéns pelo excelente Post, isso quebra muitos paradigmas de onde está o dinheiro, de onde sai o dinheiro ou porque isso é feito.

    []’s

    Daniel

  6. Petri Says:

    Ae, finalmente li.
    Acho que na parte da importancia de cada camada pode ser explicado assim: Todas são igualmente importantes, mas possuem um número menor de “membros” conforme convergem ao centro. Dessa forma, os Bug Reporters são tão importantes quanto os Core Members. Mas a responsabilidade de um é dividida entre 10.000 pessoas, se uma fizer bobeira não impacta tento a estrutura inteira quanto um dos 25 core members.

    Mas tanto faz, todo mundo entendeu.

    Parabéns pelo post.

  7. Post ganhador da camiseta « Blog do Ensinar Says:

    […] Adelson Junior pelo post mais popular no mês: Qual a motivação do desenvolvimento de Software Livre […]

  8. Ps0a Labs » Blog Archive » Não existe almoço grátis! Says:

    […] Qual a motivação do desenvolvimento de Software Livre? […]

  9. aaa Says:

    Esse trabalho se trata de uma tradução – diga-se de passagem mal feita – do seguinte artigo: Yunwen Ye and Kouichi Kishida. 2003. Toward an understanding of the motivation Open Source Software developers. In Proceedings of the 25th International Conference on Software Engineering (ICSE ’03). IEEE Computer Society, Washington, DC, USA, 419-429.

  10. aaa Says:

    O autor poderia ter pelo menos colocado o artigo como referência. Lamentável.

  11. Ricardo Fabbri Says:

    aaa: o artigo esta linkado no comeco do texto.

    muito interessante esse estudo, ainda mais no contexto em que estou inserido – participo de um grupo de desenvolvimento avancado em Software livre, o Lab Macambira, onde estamos avaliando meios de angariar fundos para programacao open source. Ajudem nos nesse estudo, http://wiki.nosdigitais.teia.org.br/Viabilodade_de_Software_Livre

    grato,

  12. Rastreamento de Celular Says:

    Muito boa tarde,Sou do site rastreamentodecelular.net ,2 amigos meu me recomendaram o blog ta muito bom,detalhado,que blog diferenciado,muito bom mesmo,vou recomendar tb até…e esse aqui http://rastreadorgps.org/rastreamento_de_celular.html alguem sabe se é bom?quero usar na minha empresa,se alguem souber de alguma referencia!!

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s


%d blogueiros gostam disto: