O que é um software livre (open source)?
Homem trabalhando em um computador desktop
O que é um software livre?

O software livre é um tipo de software desenvolvido e mantido de maneira colaborativa, onde o código-fonte está disponível para todos que quiserem usar, investigar, alterar e redistribuir. O open source beneficia diferentes iniciativas, pois não está focado em obter lucros relacionados à propriedade intelectual.

Isso contrasta com os aplicativos proprietários ou softwares proprietários, por exemplo, o Microsoft Word e o Adobe Illustrator, que são vendidos aos usuários finais pelo criador ou portador do copyright e não podem ser editados, aprimorados ou redistribuídos exceto quando especificado pelo portador do copyright.

Um caso breve sobre o software livre

Até meados da década de 1970, o código de computador era visto como implícito ao funcionamento do hardware do computador e não como propriedade intelectual exclusivo sujeita à proteção de copyright. As organizações programavam seus próprios softwares e o compartilhamento de código era uma prática comum.

A Comissão sobre Novos Usos Tecnológicos de Obras Protegidas por Direitos Autorais (CONTU) foi criada em 1974 e definiu que o código de software era uma categoria de serviço criativo com direito à proteção de copyright. Isso alimentou o crescimento da publicação independente de software como uma indústria, com o código-fonte proprietário como a principal fonte de renda. À medida que o computador pessoal trouxe aplicativos para todas as mesas corporativas e muitas residências, o mercado de software tornou-se mais competitivo e os publicadores de software tiveram que ter atenção quando as violações de seus direitos autorais.

Em 1983, começou um movimento contra as restrições e limitações dos softwares proprietários. O programador Richard Stallman ficou intrigado com a ideia de que os usuários não poderiam personalizar o software proprietário, o que considerava necessário para realizar seu trabalho. Stallman acreditava que "o software é questão de liberdade e não preço", e defendeu a idéia de um software que estivesse livremente disponível para personalização.

Stallman fundou a Free Software Foundation, e impulsionou o desenvolvimento de um software livre alternativo para o sistema operacional Unix da AT&T, entre outros aplicativos. Ele também inovou a primeira licença de software copyleft, a General Public License (GPL) da GNU, que exigia que qualquer pessoa que aprimorasse seu código-fonte também publicasse sua versão editada abertamente para todos.

O artigo de Eric S. Raymond de 1997 intitulado "A Catedral e o Bazar" é visto como outro divisor de águas no movimento do software livre. Raymond comparou a abordagem fechada, top-down, típica do desenvolvimento de software proprietário, onde todo o desenvolvimento era tratado por um grupo central (que ele chamou de A Catedral), versus o desenvolvimento público aberto, livre e compartilhado pela Internet (The Bazaar). Pouco depois, a Netscape Corporation liberou o código de seu navegador Mozilla como software livre e o movimento de software livre ganhou legitimidade.

Como muitos achavam que o termo "software sem custo" de Stallman enfatizava "livre de custo" como o valor principal do software, o termo "software livre" foi adotado em 1999. A Open Source Initiative foi criada para defender esse movimento. A organização estabeleceu também algumas regras para a indústria por meio da definição de software livre e passou a hospedar licenças de software livre compatível. Hoje, os termos software sem custo, software de código aberto (ou OSS), software livre e de código aberto (FOSS) e software de código livre/libre-aberto (FLOSS) referem-se todos à mesma coisa: software com código fonte disponível para uso público e personalização.

Software livre nas empresas e computação pessoal

O software livre agora desempenha um papel fundamental na computação, com tecnologias de código aberto oferecendo a base da Internet, da computação de negócios e da computação pessoal. Quase todos os dispositivos de computação agora contêm software livre de vários tipos, normalmente adotados por desenvolvedores para executar operações fundamentais e, muitas vezes, funções mais avançadas.

Alguns aplicativos de software livre mais conhecidos são:

  • O sistema operacional Linux é uma alternativa de software livre para o sistema operacional Unix
     

  • Mozilla Firefox, um navegador da web originalmente baseado no Netscape Navigator
     

  • LibreOffice, um conjunto de aplicativos de produtividade para escritório que competem com o Microsoft Office
     

  • O GIMP (GNU Image Manipulation Program) é uma alternativa de software livre para o Adobe Photoshop
     

  • VLC Media Player, um aplicativo multiplataforma para visualização de vídeos

Os programas de software livre também são amplamente usados em redes, empresas e na cloud computing. As categorias de software livre citadas pelos profissionais de TI como as mais comuns nas organizações incluem:

  • Linguagens de programação e frameworks
     

  • Bancos de dados e tecnologias de dados
     

  • Sistemas operacionais
     

  • Repositórios públicos baseados em Git
     

  • Frameworks para Inteligência Artificial/Machine Learning/Deep Learning

Por que os usuários e as empresas preferem o software livre?

As razões para escolher o software livre podem variar significativamente de pessoa para pessoa e de organização para organização. Em muitos casos, os usuários finais desconhecem completamente os programas de software livre em seus computadores ou dispositivos móveis. Também é comum que usuários façam o download de um aplicativo aberto, como o navegador Mozilla Firefox ou um aplicativo Android. Esses usuários simplesmente buscam a funcionalidade do software, sem intenção de reescrevê-lo ou mesmo verificar o código-fonte.

Uma empresa, por outro lado, pode escolher um software livre em vez de uma alternativa proprietária por seu baixo (ou nenhum) custo, pela flexibilidade para personalizar o código-fonte ou pela existência de uma grande comunidade de suporte ao aplicativo. Os programadores profissionais ou amadores podem se voluntariar com suas habilidades de desenvolvimento e teste para um projeto de software livre, muitas vezes para melhorar a sua reputação e se conectar com outras pessoas da área. Atualmente, é comum para as empresas ceder funcionários pagos para projetos de software livre a fim de dar suporte à continuidade do desenvolvimento de software livre e ajudar a garantir produtos de alta qualidade.

Embora os produtos de software livre possam poupar as empresas do custo de licenciamento, eles podem incorrer em alguns custos, geralmente para a integração de rede, o usuário final e o suporte de TI, além de outros serviços normalmente incluídos com o software proprietário. Ainda assim, muitas empresas consideram o software livre empresarial pelo menos tão confiável e seguro quanto o software proprietário e se sentem mais à vontade com soluções de software livre porque podem inspecionar o código do programa e entender exatamente o que estão agregando à sua infraestrutura de computação.

Como o software livre funciona?

O modelo de desenvolvimento de software livre abrange vários métodos. Um grande número de programas de software livre foram criados por programadores autônomos ou pequenas equipes de programadores. Por exemplo, Guido van Rossum disse que começou a trabalhar na popular linguagem de programação Python porque tinha tempo livre durante a semana de Natal em 1989; do mesmo modo, o servidor web Apache começou com um pequeno grupo de programadores trabalhando juntos para melhorar o software do servidor originalmente escrito por Robert McCool quando era estudante de um programa de supercomputação.

À medida que esses e outros projetos de software livre como estes amadureceram, eles envolveram muitos milhares de programadores contribuindo com inúmeras linhas de código, além disso, fizeram o teste do software, redigiram a documentação, criaram um website do projeto e muito mais.

No outro extremo do espectro, a plataforma de orquestração de contêineres Kubernetes foi iniciada pelos engenheiros do Google, como uma implementação de software livre (open source) de tecnologia originalmente criada internamente para equilibrar as cargas de trabalho dos servidores do Google. A Google trouxe o projeto para a comunidade de software livre através da criação de um novo consórcio dentro da Linux Foundation chamado Cloud Native Computing Foundation (CNCF). Desde então, milhares de desenvolvedores trabalharam no kernel em evolução, incluindo representantes das principais empresas de computador.

Ao longo do tempo, um ecossistema deve dar suporte a projetos de software livre. Serviços de hospedagem código como GitHub, Bitbucket, SourceForge e Google Code oferecem repositórios centrais, controle de versão e outras funções que possibilitam que diversos grupos de trabalho distribuído colaborem e gerenciem projetos de software livre. Somente o GitHub registrou 83 milhões de desenvolvedores e mais de 20 milhões de repositórios de projetos abertos (com cada repositório representando uma ramificação específica de um projeto de software livre).

Várias organizações sem fins lucrativos decidiram apoiar e financiar a manutenção contínua de projetos de software livre, como a Free Software Foundation e a Open Source Initiative (OSI). E há dezenas de fundações específicas de aplicativos, como a Linux Foundation, que suporta programas específicos de software livre e projetos relacionados que apoiam essas tecnologias.

Software livre e software proprietário

"Software livre" e "software proprietário" representam abordagens alternativas para à propriedade intelectual (PI) incorporada em um aplicativo. Com o software livre, a PI visa oferecer benefícios ao público sem o propósito de obter lucro vinculado à titularidade da propriedade intelectual. Por outro lado, o software proprietário monetiza o valor da propriedade intelectual (cobrando por assinatura ou taxa de licença do proprietário).

A ideia por trás do software livre, no entanto, não é primariamente uma mensagem antilucro ou anticapitalismo, mas sim que, nas mãos de sua comunidade do usuário, o software naturalmente alcançará seu maior potencial ao fornecer mais valor a um número cada vez maior de usuários. O maior projeto de software livre da história, a Internet, foi originalmente usado para compartilhar trabalhos acadêmicos. Tudo que vai além do caso de uso limitado é o resultado de inúmeras mentes imaginando e implementando novas possibilidades.

Embora o software livre seja disponibilizado ao público sem custo, ele não está no domínio público,  uma categoria legal de propriedade intelectual desprovida de quaisquer direitos de propriedade. Por meio de uma engenhosa reviravolta no copyright tradicional, os criadores do software livre fizeram o que chamaram de "copyleft", que permite uso público ilimitado, direito de alteração e redistribuição do código-fonte, mas impede que outros desenvolvam projetos baseados no código transformando-o em software proprietário e protegido por copyright (mais sobre isso abaixo). Porém, hoje existem mais de 100 tipos diferentes de licenças de software livre, algumas das quais permitem que sejam feitos trabalhos derivados desenvolvidos em código-fonte aberto para serem protegidos por direitos autorais e vendidos. Isso amplia as oportunidades comerciais para quem criar software livre.

Licenças de software livre

Mais uma vez, a GPL do Stallman estipulou que qualquer um poderia reescrever seu software da maneira que bem entendesse, desde que o código resultante fosse publicado abertamente para uso de todos. Desta forma, a licença copyleft da GPL criou um novo tipo de propriedade intelectual, quase de domínio semipúblico, mas com restrições legalmente exequíveis impostas pelo portador do copyright original a fim de proteger contra as reivindicações posteriores de propriedade restritiva.

Desde então, várias licenças de software livre foram desenvolvidas: a Open Source Initiative lista mais de 100 licenças aprovadas de software livre. Algumas destas permitem que os produtos proprietários sejam criados a partir de um código-fonte aberto.

As licenças de software livre algumas vezes são classificadas como "permissivas", o que significa permitir que os usuários façam copyright de seus próprios trabalhos, ou "protetoras", como a copyleft. As licenças de software livre do MIT e BSD são as mais permissivas, enquanto a GPL continua sendo uma das licenças copyleft protetoras mais usadas. Inúmeras licenças alternativas são "compatíveis com" GPL ou MIT, o que significa que aquele código de software escrito sob esta licença pode ser usado em outro aplicativo que use a licença GPL ou MIT.

Modelos de negócios de software livre

Embora pareça que a criação de software livre representa uma empresa altruísta e com princípios morais elevados, há muito trabalho envolvido na criação, manutenção e no desenvolvimento desses softwares, e todo esse trabalho é feito com base no capital. Felizmente, existem várias maneiras pelas quais os projetos de software livre, e as empresas criadas em torno deles, podem prosperar.

Um caminho é mediante doações para fundações. As empresas têm interesse em oferecer suporte ao software livre, pois ele proporciona funcionalidade significativa a um valor expressivamente baixo e, além disso, contribuirão com doações e até cederão funcionários pagos para trabalhar nesses projetos de software livre. Mas isso prevê principalmente a manutenção de longo prazo da tecnologia e isso não gera lucros para o projeto de software livre.

Um modelo de negócio mais comum é a cobrança dos clientes pelo suporte e conhecimento. Em 1993, a Red Hat começou a vender a versão corporativa de redistribuição do sistema operacional Linux, a cobrança pelo suporte e funcionalidade adicional tinha o objetivo específico de resolver os problemas que uma empresa pode ter ao implementar um sistema operacional sem curadoria e continuamente atualizado. Em 2012, a Red Hat tornou-se a primeira empresa de software livre a ultrapassar USD 1 bilhão em receita. Em 2019, a IBM Corporation adquiriu a Red Hat por USD 34 bilhões, a maior aquisição de software da história.

O WordPress, originalmente uma plataforma de blogs, agora é amplamente utilizada para criação, gerenciamento e hospedagem de websites. O WordPress opera como uma plataforma baseada em cloud ou software como serviço (SaaS) e os clientes devem pagar taxas de assinatura disponíveis em níveis para hospedagem na web, suporte e funcionalidade adicional do site (por exemplo, recurso de e-commerce, ferramentas de SEO).

Outros criadores de software livre não cobram nada pelo seu produto, mas têm receita significativa devido ao tráfego que seu software gera. Por exemplo, o GitHub obtém receita com base na publicidade que aparece em seu site. A receita do Mozilla Firefox é proveniente dos mecanismos de busca que ele suporta.

Soluções relacionadas
Software Red Hat na IBM Cloud

As soluções IBM e Red Hat® podem aumentar a produtividade, reduzir os custos e melhorar os resultados de negócios.

Conheça as soluções IBM e Red Hat
IBM LinuxONE

Saiba mais sobre o servidor de software livre protegido com alta segurança e escalabilidade para aplicativos críticos.

Conheça o LinuxONE
Linux on IBM Z

O sistema operacional Linux na plataforma de mainframe IBM Z apresenta privacidade de dados e segurança cibernética em uma multicloud híbrida.

Conheça o Linux no IBM Z
Enterprise Linux on IBM Power

Com o Enterprise Linux® on IBM® Power®, é possível amplificar os muitos benefícios da tecnologia de software livre, como confiabilidade, segurança e escalabilidade, com opções de implementação nativas em cloud líderes de mercado.

Conheça o Linux on Power
Recursos Software Livre @ IBM

De blockchain a contêineres, IA a sistemas operacionais, nossos desenvolvedores estão criando novos projetos de software livre que acompanham códigos, docs e materiais de suporte.

Seu software livre é seguro?

A sua cadeia de suprimentos de software deve ser aprimorada para minimizar significativamente o risco.

O que é DevOps?

Conheça o processo que visa atender à demanda dos usuários de software por recursos novos e inovadores lançados com frequência, além de desempenho e disponibilidade ininterruptos.

O que é kubernetes?

Conheça a plataforma de orquestração de contêineres de código aberto que automatiza os processos de implantação, gerenciamento e dimensionamento de aplicações conteinerizadas.

Dê o próximo passo

Na IBM, assumimos a missão de ajudar os clientes a maximizar a velocidade em sua jornada para a transformação digital de seus negócios com uma abordagem agile baseada na tecnologia de software livre da Red Hat que permite que você desenvolva uma vez e implemente em qualquer lugar.
 

Veja como as soluções da IBM e da Red Hat podem aumentar a produtividade, reduzir custos, melhorar os resultados de negócios e acelerar a sua transformação digital, independentemente do setor em que você atua.

Conheça as soluções IBM e Red Hat