Nas festas que participo agora, as pessoas não mais fazem uma cara de espanto quando eu digo que desenvolvo software livre. "Ah sim, software livre—como o Linux?" elas dizem. Prontamente respondo: "Sim, exatamente! É isto que eu faço." É bom não me sentir mais completamente um estranho. No passado, a próxima questão era altamente previsível: "Como você ganha dinheiro com isto?". Para responder, eu resumia a economia do código aberto: que existem organizações as quais os interesses são de que certos software existam, mas eles não precisam vender cópias, eles somente precisam ter certeza de que o software está disponível e sendo mantido, como uma ferramenta, não como uma mercadoria.
Ultimamente, entretanto, a pergunta seguinte não tem sempre sido sobre dinheiro. O modelo de negócios para Software Livre e de Código Aberto[1] não é mais tão misterioso e muitos não-programadores já entendem ou, pelo menos, não se surpreendem em ver gente empregada em tempo integral com isto. Ao invés disto, a pergunta que eu tenho ouvido com mais frequência é "Uau, como isto funciona?"
Eu não tinha uma resposta satisfatória pronta e cada vez que eu me empenhava mais em preparar uma, mais eu percebia a complexidade deste assunto. Tocar um projeto de Software Livre não é exatamente como gerenciar um negócio (imagine ter que negociar constantemente sobre a natureza do seu produto com um grupo de voluntários, a maioria dos quais você nunca encontrou pessoalmente!). Também não é, por diversos motivos, o mesmo que manter uma organização sem fins lucrativos, nem um governo. Há similaridades com todas estas coisas mas eu cheguei lentamente à conclusão de que Software Livre é algo sui generis (único em seu gênero). Há várias coisas com as quais isto pode ser eficientemente comparado mas nenhuma com a qual possa ser equiparado. De fato, o simples fato de se assumir que projetos de Software Livre possam ser "tocados" é uma falácia. Um projeto de Software Livre pode ser iniciado e ser influenciado por interessados, frequentemente de forma bastante forte. Mas seus resultados não podem ser transformados em propriedade de nenhum único dono e, enquanto houver gente em algum lugar, —qualquer lugar—, interessada em dar continuidade, ele não poderá ser encerrado unilateralmente. Todos tem poder infinito, ninguém tem força. Isto gera uma dinâmica interessante.
Este foi o motivo pelo qual eu quis escrever este livro. Projetos de Software Livre evoluiram uma cultura distinta, uma moral na qual a liberdade de fazer o software e realizar qualquer coisa que se deseje é o foco, e ainda assim o resultado desta liberdade não é uma dispersão de indivíduos cada um indo em direções separadas com o código, mas sim uma entusiasmada colaboração. De fato, competência na própria colaboração é uma das mais valiosas habilidades em Software Livre. Gerenciar estes projetos é como se engajar em uma espécie de cooperação hipertrofiada, onde a habilidade não só de trabalhar com outros mas de produzir novas formas de colaboração, podem resultar em benefícios tangíveis para o software. Este livro tenta descrever as técnicas pelas quais isto pode ser feito. Ele não é de forma nenhuma completo mas é pelo menos um início.
Software Livre de qualidade é uma meta valiosa por si só e eu espero que leitores que procurem meios atingi-la, se satisfaçam com o que encontrarão aqui. Mas, além disto, eu espero também transmitir algo sobre o puro prazer que se tem em trabalhar com uma equipe motivada de desenvolvedores de Código Aberto e em interagir com usuários na forma maravilhosamente direta que o Código Aberto promove. Participar de um projeto de sucesso de Software Livre é divertido e, em última instância, o que mantém o sistema todo funcionando.
[1] Os termos "Código Aberto" e "Livre", neste contexto, são essencialmente sinônimos. Eles são discutidos em mais detalhes em “"Livre" Versus "Código Aberto"” na Capítulo 1, Introdução.