Em festas, as pessoas já não me dirigem olhares vazios quando lhes digo que escrevo software livre. "Ah, sim, software livre—como Linux?" dizem-me. Aceno concordantemente a cabeça. "Sim, exactamente! É isso que faço." Como é bom não me sentir mais à margem. Antigamente, a pergunta seguinte era bastante previsível: "Como é que fazes dinheiro dessa forma?" Para responder, teria de resumir as bases económicas do software livre: existem organizações cujo interesse está na disponibilidade de certo software, mas que não precisam de vender cópias. Tão somente, precisam de garantir a sua disponibilidade e manutenção, como ferramenta em vez de comodidade.
Ultimamente, porém, a pergunta seguinte não tem sido sempre sobre dinheiro. As oportunidades de negócio para software livre[1] já não são tão misteriosas e muitos não-programadores já compreendem—ou, pelo menos, não se surpreendem—que há pessoas empregadas neste contexto a tempo inteiro. Pelo contrário, a questão que tenho ouvido cada vez mais é "Oh, como é que isso funciona?"
Eu não tinha uma resposta satisfatória pronta e, quanto mais tentava produzir uma, mais eu concluía quão complexo é este tópico. Gerir um projecto de software livre não é exactamente o mesmo que gerir um negócio (imagine ter de negociar constantemente a natureza do seu produto com um grupo de voluntários, muitos dos quais nunca viu!). Nem, por várias razões, é o mesmo que gerir uma organização sem fins lucrativos tradicional, ou um governo. Tem semelhanças com todas estas situações, mas tenho chegado progressivamente à conclusão de que o software livre é sui generis. Há muitas coisas com as quais pode ser comparado proveitosamente, mas nenhuma com a qual possa ser igualado. De facto, até mesmo assumir que projectos de software livre podem ser "geridos" é já forçar um pouco o conceito. Um projecto de software livre pode ser iniciado, e pode ser influenciado por partes interessadas, muitas vezes de forma intensa. Os seus bens, todavia, não podem ser tornados propriedade de nenhum proprietário individual e, enquanto houver pessoas algures—seja em que lugar for—interessadas em continuar o projecto, não pode ser encerrado unilateralmente. Todos têm poder infinito; todos têm poder nulo. Surge assim uma dinâmica interessante.
Foi por isso que quis escrever este livro. Os projectos de software livre desenvolveram uma cultura distinta, um ethos onde a liberdade de tornar o software capaz de fazer o que quisermos é um aspecto fundamental e, no entanto, o resultado desta liberdade não é a desagregação de indivíduos seguindo cada um o seu próprio rumo com o código, mas antes uma entusiástica colaboração. De facto, competência na própria colaboração é uma das capacidades mais valorizadas no software livre. Gerir estes projectos é entrar numa forma hipertrófica de cooperação, onde a habilidade de cada um para não apenas trabalhar com outros mas também criar novas formas de colaboração conjunta pode resultar em benefícios tangíveis para o software. Este livro tenta descrever as técnicas pelas quais isto é conseguido. Não é certamente completo, mas é pelo menos um início.
Software livre de qualidade é um objectivo valioso em si mesmo, e eu espero que os leitores que buscam aqui formas de o alcançar fiquem satisfeitos com o que encontram aqui. Mas, para além disso, espero também transmitir um pouco da satisfação em trabalhar com uma equipa motivada de programadores de software livre e em interagir com utilizadores na forma maravilhosamente directa encorajada pelo open source. Participar num projecto de software livre bem sucedido é divertido, e em última análise é isto que faz todo o sistema avançar.
[1] Os termos "open source" e "livre" são essencialmente sinónimos neste contexto; são discutidos mais a fundo em “"Free" Versus "Open Source"” em Capítulo 1, Introdução.