Solicitar demonstraçãoDemonstração

Open source: o que é e como funciona

O que é software open source, como funcionam as licenças MIT, GPL e Apache, como os projetos são mantidos e o que observar antes de usar um.

Witcode ·

Open source, ou código aberto, é o software cujo código-fonte pode ser lido, modificado e redistribuído por qualquer pessoa, de acordo com as regras de uma licença. Sistemas operacionais, navegadores, bancos de dados, linguagens de programação e bibliotecas usadas em quase todo aplicativo moderno são desenvolvidos dessa forma.

Neste artigo você vai entender como esse modelo funciona, o que dizem as principais licenças e quais cuidados tomar ao usar ou contribuir.

O que torna um software open source

Não basta o código estar visível na internet. Para ser considerado open source, o software precisa ser distribuído com uma licença que garanta, entre outras coisas:

Código publicado sem licença, por exemplo, não é automaticamente livre. Pela lei de direitos autorais, todos os direitos continuam com o autor.

Open source também não significa necessariamente gratuito. Empresas podem cobrar por suporte, hospedagem ou versões com recursos adicionais, e ainda assim manter o núcleo aberto.

As licenças mais comuns

MIT. Uma das licenças mais permissivas. Permite usar, copiar, modificar e vender o software, inclusive dentro de produtos fechados. A principal exigência é manter o aviso de copyright e o texto da licença. É muito comum em bibliotecas JavaScript.

Apache 2.0. Também permissiva, mas mais detalhada. Além de manter os avisos, exige indicar as alterações feitas nos arquivos. Inclui uma concessão explícita de licença de patentes, o que dá mais segurança jurídica a empresas, e encerra essa concessão para quem processar alguém alegando violação de patente relacionada ao projeto.

GPL. É uma licença do tipo copyleft. Quem distribui uma versão modificada ou um programa que incorpora código GPL precisa disponibilizar o código-fonte sob a mesma licença. O objetivo é garantir que as melhorias continuem abertas. Existe ainda a AGPL, que estende essa obrigação a softwares oferecidos pela rede, como serviços web.

Na prática, licenças permissivas facilitam a adoção por empresas, enquanto licenças copyleft protegem a abertura do código ao longo das versões. Em caso de dúvida em um projeto comercial, vale consultar alguém com conhecimento jurídico.

Como os projetos são mantidos

Projetos open source têm formatos variados. Alguns são mantidos por uma única pessoa no tempo livre. Outros têm equipes contratadas por empresas que dependem deles. Há também fundações que cuidam de grandes projetos, oferecendo estrutura legal, regras de governança e apoio financeiro.

O trabalho costuma acontecer em plataformas como GitHub e GitLab. Usuários relatam problemas em issues, colaboradores propõem mudanças por meio de pull requests e os mantenedores revisam, discutem e decidem o que entra. Muitos projetos têm um guia de contribuição e um código de conduta que definem como participar.

O financiamento vem de patrocínios, doações, empresas que pagam pessoas para trabalhar no projeto e serviços comerciais em torno do software.

Como as empresas usam open source

Praticamente toda empresa que desenvolve software depende de código aberto, mesmo sem perceber. Os usos mais comuns são:

Como contribuir

Contribuir não exige ser especialista. Algumas portas de entrada:

  1. Escolha um projeto que você já usa.
  2. Leia o README, o guia de contribuição e o código de conduta.
  3. Procure issues marcadas para iniciantes, muitas vezes com rótulos como “good first issue”.
  4. Comece por melhorias em documentação, traduções ou testes.
  5. Antes de uma mudança grande, abra uma issue e converse com os mantenedores.
  6. Mantenha o pull request pequeno, com uma descrição clara do que muda e por quê.

Relatar um erro de forma detalhada, com passos para reproduzir, também é uma contribuição valiosa.

Pontos de atenção

Licença. Confira a licença de cada dependência antes de usá-la em um produto. Uma biblioteca GPL dentro de um software distribuído pode gerar obrigações que a empresa não previu.

Segurança. Código aberto pode ser auditado por qualquer pessoa, mas isso não garante que alguém tenha auditado. Mantenha as dependências atualizadas, acompanhe alertas de vulnerabilidade e evite pacotes desconhecidos ou com nomes parecidos com os de projetos populares.

Manutenção. Antes de adotar um projeto, observe se ele recebe atualizações, se as issues são respondidas e se há mais de uma pessoa cuidando dele. Uma dependência abandonada pode virar um problema difícil de resolver depois.

E na sua empresa?

Bons sistemas combinam componentes open source confiáveis com desenvolvimento próprio onde o negócio precisa de algo específico. Se você quer um site ou um sistema sob medida montado com esse cuidado, fale com a Witcode.

Qual parte da sua empresa pode funcionar melhor?

Conte sua necessidade. A Witcode ajuda você a encontrar a solução.

Encontre seu software

Seus dados serão usados para este contato. Privacidade