terça-feira, 30 de abril de 2019

Quem usa código livre deveria contribuir com código livre


Você ou sua empresa usa código livre?

 

A cada dia mais empresas estão adotando software livre em sua infraestrutura. Linux em servidores e workstations, Gnome, Cinnamon, Jenkins,  Blender, Apache, NginX, PostgreSQL, Tomcat, Docker,  Kubernetes, Eclipse, entre muitos outros, fazem parte do dia-a-dia de muita gente.  Servem de base para muitos produtos que garantem faturamento e pagam muitos salários.

Todos esses softwares são desenvolvidos de forma livre, seus códigos-fonte estão disponíveis ao público, bem como as instruções de como compilar e debugar.

Além do código-fonte, fóruns, wikis e chats são acessíveis, bastando, no máximo, um e-mail para publicar. Geralmente as comunidades são muito receptivas, desde que você entenda onde você está primeiramente (perguntas em listas erradas ou que tem resposta amplamente disponíveis geralmente causam reações menos receptivas).

Por fim, sistemas de issue tracking estão disponíveis para a maior parte dos projetos, e quando não tem, as listas de e-mail fazem esse papel. Tudo isso para permitir que a comunidade, que faz uso desses softwares possa se comunicar e contribuir.

Mas porquê contribuir?

 

Todo trabalho humano tem um custo. Alguém dispendeu algum tempo para executá-lo. Quando há uma relação de trabalho, o custo desse tempo está definido no contrato, que ambas as partes acordaram.

Para desenvolver código também há trabalho envolvido, como as empresas de software bem sabem. E esse trabalho não é pouco, por valor agregado (como as empresas também sabem). Logo, se para desenvolvermos software comercial cobramos somas vultosas, quem paga pelo desenvolvimento do software "gratuito" que usamos? 

Pois é, quem paga por isso são os próprios desenvolvedores, que investem seu tempo livre, férias, período "entre empregos", para desenvolver algumas funcionalidades. 

Obviamente, como em todo projeto, o ânimo de começar é sempre maior. Mas e bug fixing? E refatoracões para adicionar funcionalidades que o autor nem conhece tão bem? E aquele ajuste de CSS para melhorar o layout? 

Nem sempre o autor tem tempo de retomar o projeto. Mudanças na vida pessoal sempre acontecem, a faculdade acaba, surge um emprego, casamos. Manter software custa caro e dá trabalho. Mas mesmo assim, muitos tem lucro com esse software e acabam reclamando da defasagem, dos bugs, dos workarounds necessários para usá-lo.

Todo desenvolvedor, empresa, ou simplesmente usuários de software livre, deveria tentar colaborar com a comunidade. Quem sabe programar, deveria estudar o código-fonte de algum projeto. Quando notar um bug, mesmo se não for programador, verifique se há uma issue aberta. Se houver , vote nela, inclua detalhes do ambiente onde o bug foi reproduzido, adicione casos de uso. Se não existir, crie uma. Tente achar uma correção, discuta com outros desenvolvedores sobre o problema ou a solução. Isso ajuda a melhorar sua técnica de programação, de análise e até a treinar o inglês.

As empresas de software podem incorporar tickets de bugs ou features em seus backlogs, ou estimular os desenvolvedores a colaborar com algum projeto. Caso não queiram colaborar ou não sejam empresas de software, podem fazer doações financeiras, únicas ou periódicas, para esses projetos. É possível até mesmo mandar uma mensagem junto com a doação pedindo alguma atenção especial para uma necessidade da empresa. As fundações que gerenciam alguns desses softwares fazem muito bom uso desses recursos. 

O software livre mudou a forma como vivemos hoje. Mas ele corre riscos a cada dia. Sempre existe pressão por parte de grandes empresas de monopolizar o seu desenvolvimento, de torná-lo menos relevante, ou simplesmente, torná-los uma versão freeware de seus próprios sistemas. 

Se você quer evitar ficar preso às grandes empresas de software, apoie o software livre de qualquer forma que puder.

Nenhum comentário:

Postar um comentário