Open Source¶
Open Source é um modelo de desenvolvimento e distribuição de software baseado na abertura do código-fonte, permitindo que qualquer pessoa possa utilizá-lo, estudá-lo, modificá-lo e redistribuí-lo, desde que respeite os termos da licença adotada pelo projeto.
Mais do que disponibilizar o código, Open Source representa um modelo de colaboração em que indivíduos, empresas, governos e organizações trabalham conjuntamente para criar, manter e evoluir tecnologias de forma aberta.
Atualmente, grande parte da infraestrutura da internet, dos sistemas operacionais, das linguagens de programação e das ferramentas utilizadas no desenvolvimento de software é baseada em projetos Open Source.
Como surgiu?¶
Embora o desenvolvimento colaborativo de software exista desde as primeiras décadas da computação, o termo Open Source surgiu oficialmente em 1998.
Naquele ano, um grupo de líderes da comunidade de software livre, incluindo Eric S. Raymond e Bruce Perens, propôs a criação de um termo que destacasse os benefícios técnicos e comerciais do desenvolvimento aberto, tornando esse modelo mais acessível para empresas e organizações.
Como resultado, foi criada a Open Source Initiative (OSI), organização responsável por promover o Open Source e manter a Open Source Definition (OSD), documento que estabelece os critérios que uma licença deve atender para ser considerada Open Source.
Desde então, a OSI atua na aprovação de licenças Open Source, na promoção de boas práticas e na defesa do desenvolvimento colaborativo de software.
O que caracteriza um software Open Source?¶
Um software é considerado Open Source quando sua licença atende aos critérios definidos pela Open Source Definition.
Entre os principais requisitos estão:
- disponibilização do código-fonte;
- permissão para uso por qualquer pessoa;
- possibilidade de estudar como o software funciona;
- autorização para modificar o código;
- permissão para redistribuir versões originais e modificadas;
- ausência de discriminação contra pessoas, grupos ou áreas de atuação;
- neutralidade tecnológica.
Isso significa que não basta publicar o código na internet: é necessário utilizar uma licença reconhecida como Open Source.
Qual a importância do Open Source?¶
O Open Source desempenha um papel fundamental no desenvolvimento da tecnologia moderna.
Entre seus principais benefícios estão:
- incentivo à colaboração entre pessoas e organizações;
- aceleração da inovação;
- maior transparência sobre o funcionamento do software;
- possibilidade de auditoria independente;
- melhoria da segurança por meio da revisão pública do código;
- redução da dependência de fornecedores (vendor lock-in);
- compartilhamento de conhecimento;
- reutilização de soluções existentes;
- formação de comunidades em torno dos projetos.
Além disso, o Open Source impulsiona a educação, a pesquisa científica, o empreendedorismo e a transformação digital em empresas e governos.
Exemplos de projetos Open Source¶
Diversos projetos amplamente utilizados no mundo são Open Source, incluindo:
- Linux;
- Git;
- Python;
- PostgreSQL;
- Kubernetes;
- Docker;
- Blender;
- LibreOffice;
- Firefox;
- VLC Media Player;
- Apache HTTP Server;
- Nginx.
Esses projetos são desenvolvidos por comunidades formadas por milhares de colaboradores distribuídos ao redor do mundo, frequentemente com participação de empresas, universidades e organizações sem fins lucrativos.
O que não é Open Source?¶
Nem todo software cujo código pode ser visualizado é Open Source.
Para que um software seja considerado Open Source, sua licença deve atender aos critérios estabelecidos pela Open Source Definition.
Alguns exemplos que não são Open Source incluem:
Código-fonte disponível (Source Available)¶
Algumas empresas disponibilizam o código-fonte para consulta, mas impõem restrições ao uso, à modificação ou à redistribuição.
Nesses casos, o software é conhecido como Source Available, e não Open Source.
Software proprietário¶
Softwares proprietários normalmente não disponibilizam seu código-fonte e restringem sua utilização conforme contratos de licença definidos pelo fabricante.
Software gratuito (Freeware)¶
Um software pode ser distribuído gratuitamente e ainda assim não ser Open Source.
Gratuidade diz respeito ao preço; Open Source diz respeito às permissões concedidas pela licença.
Código publicado sem licença¶
Disponibilizar um projeto em uma plataforma como GitHub não o torna automaticamente Open Source.
Sem uma licença adequada, terceiros não possuem autorização legal para utilizar, modificar ou redistribuir o software.