Código aberto
Código aberto (do inglês Open Source) é o código-fonte que é disponibilizado gratuitamente para consulta, examinação, modificação e redistribuição.[1] Os produtos incluem permissão para usar o código-fonte,[2] documentos de design ou conteúdo do produto. O modelo de código aberto é um modelo de desenvolvimento de software descentralizado que incentiva a colaboração aberta.[3][4] Um princípio importante do desenvolvimento de software de código aberto é a produção por pares (do inglês pair production), com produtos como código-fonte, projetos e documentação disponíveis gratuitamente ao público. O movimento de código aberto no software começou como uma resposta às limitações do código proprietário. O modelo é usado em projetos de tecnologia apropriada[5] e na descoberta e pesquisa de medicamentos.[6][7]
O termo "código aberto" foi popularizado pela Open Source Initiative (OSI),[8] que difere de um software livre por não seguir as quatro liberdades definidas pela Fundação de Programas Livres (do inglês: Free Software Foundation - FSF),[9] que eram também compartilhadas pelo projeto Debian. Qualquer licença de software livre é também uma licença de código aberto (open source), mas o contrário não é necessariamente verdade.[9]
Enquanto a FSF usa o termo "Software Livre" envolta de um discurso baseado em questões éticas, direitos e liberdade, a OSI usa o termo "Código Aberto" sob um ponto de vista puramente técnico, evitando (propositadamente) questões éticas. Esta nomenclatura e este discurso foram cunhados por Eric Raymond e outros fundadores da OSI com o objetivo de apresentar o software livre a empresas de uma forma mais comercial evitando o discurso ético.
História
[editar | editar código-fonte]O compartilhamento de informações técnicas é muito anterior à Internet e ao computador pessoal. Por exemplo, nos primeiros anos do desenvolvimento do automóvel, um grupo de monopolistas de capital possuía os direitos de uma patente de motor a gasolina de 2 tempos originalmente depositada por George B. Selden.[10] Ao controlar essa patente, eles foram capazes de monopolizar a indústria e forçar os fabricantes de automóveis a cumprir suas exigências, ou arriscar uma ação judicial.
Em 1911, a montadora independente Henry Ford venceu um desafio à patente de Selden. O resultado foi que a patente de Selden se tornou virtualmente inútil e uma nova associação (que eventualmente se tornaria a Associação de Fabricantes de Veículos Automotores) foi formada.[10] A nova associação instituiu um acordo de licenciamento cruzado entre todos os fabricantes automotivos dos EUA: embora cada empresa desenvolvesse tecnologia e registrasse patentes, essas patentes eram compartilhadas abertamente e sem troca de dinheiro entre todos os fabricantes.[10] Quando os EUA entraram na Segunda Guerra Mundial, 92 patentes da Ford e 515 patentes de outras empresas estavam sendo compartilhadas entre esses fabricantes, sem qualquer troca de dinheiro (ou ações judiciais).[10]
As primeiras instâncias do compartilhamento gratuito de código-fonte incluem versões de origem de seus sistemas operacionais e outros programas da IBM nas décadas de 1950 e 1960, e o grupo de usuários SHARE formado para facilitar a troca de software.[11][12] A partir da década de 1960, os pesquisadores da ARPANET usaram um processo aberto de "Request for Comments" (RFC) para incentivar o feedback nos primeiros protocolos de rede de telecomunicações. Isso levou ao nascimento do início da Internet em 1969.
O compartilhamento de código-fonte na Internet começou quando a Internet era relativamente primitiva, com software distribuído via UUCP, Usenet, IRC e Gopher. O BSD, por exemplo, foi primeiramente distribuído amplamente por postagens no comp.os.linux na Usenet, que também é onde seu desenvolvimento foi discutido. Linux seguiu neste modelo.
Etimologia
[editar | editar código-fonte]Em fevereiro de 1998, o rótulo "Open Source" surgiu em uma reunião, de futuras referências no tema, como Todd Anderson, Chris Peterson (Foresight Institute), Jon "Maddog" Hall e Larry Augustin (Linux International), Sam Ockman (Silicon Valley Linux User's Group) e Eric Raymond.[13]
Como a diferença entre o movimento "Software Livre" e modelo "Código Aberto" está apenas na argumentação em prol dos mesmos softwares, é comum que esses grupos se unam em diversas situações ou que sejam citados de uma forma agregadora através da sigla "FLOSS" (Free/Libre and Open Source Software).
Os defensores do modelo Open Source sustentam que não se trata de algo anticapitalista ou anarquista, mas de uma alternativa ao modelo de negócio para a indústria de software. O modelo colaborativo de produção intelectual oferece um novo paradigma para o direito autoral. Algumas grandes empresas como IBM, HP, Intel e Dell também têm investido no software de código aberto, juntando esforços para a criação do Open Source Development Lab (OSDL), instituição destinada à criação de tecnologias de código aberto.
Características
[editar | editar código-fonte]A definição do Open Source foi criada pela Open Source Iniciative (OSI) a partir do texto original das Debian Free Software Guidelines[14] e determina que um programa de código aberto deve garantir:
Livre distribuição
[editar | editar código-fonte]A licença não deve restringir de nenhuma maneira a venda ou distribuição do programa gratuitamente, como componente de outro programa ou não.
Código fonte
[editar | editar código-fonte]O programa deve incluir seu código fonte e deve permitir a sua distribuição também na forma compilada. Se o programa não for distribuído com seu código fonte, deve haver algum meio de se obter o mesmo seja via rede ou com custo apenas de reprodução. O código deve ser legível e inteligível por qualquer programador.
Trabalhos Derivados
[editar | editar código-fonte]A licença deve permitir modificações e trabalhos derivados, e deve permitir que eles sejam distribuídos sobre os mesmos termos da licença original.
Integridade do autor do código
[editar | editar código-fonte]A licença não pode restringir o código fonte de ser distribuído em uma forma modificada mesmo se a licença permitir a distribuição de arquivos patch (de atualização) com o código fonte para o propósito de modificar o programa no momento de sua construção pois a restrição ao código–fonte significa transformar o software livre em software proprietário. A licença deve explicitamente permitir a distribuição do programa construído a partir do código fonte modificado. Contudo, a licença pode ainda requerer que programas derivados tenham um nome ou número de versão diferentes do programa original.
Não discriminação contra pessoas ou grupos
[editar | editar código-fonte]A licença não pode ser discriminatória contra qualquer pessoa ou grupo de pessoas.
Não discriminação contra áreas de atuação
[editar | editar código-fonte]A licença não deve restringir qualquer pessoa de usar o programa em um ramo específico de atuação. Por exemplo, ela não deve proibir que o programa seja usado em um empresa, ou de ser usado para pesquisa genética.
Distribuição da Licença
[editar | editar código-fonte]Os direitos associados ao programa devem ser aplicáveis para todos aqueles cujo programa é redistribuído, sem a necessidade da execução de uma licença adicional para estas partes.
Licença não específica a um produto
[editar | editar código-fonte]Os direitos associados ao programa não devem depender que o programa seja parte de uma distribuição específica de programas. Se o programa é extraído desta distribuição e usado ou distribuído dentro dos termos da licença do programa, todas as partes para quem o programa é redistribuído devem ter os mesmos direitos que aqueles que são garantidos em conjunção com a distribuição de programas original.
Licença não restrinja outros programas
[editar | editar código-fonte]A licença não pode colocar restrições em outros programas que são distribuídos juntos com o programa licenciado. Isto é, a licença não pode especificar que todos os programas distribuídos na mesma mídia de armazenamento sejam programas de código aberto.
Licença neutra em relação a tecnologia
[editar | editar código-fonte]Nenhuma cláusula da licença pode estabelecer uma tecnologia individual, estilo ou interface a ser aplicada no programa.
Governos, Movimentos Cívicos e a Transformação Digital
[editar | editar código-fonte]No contexto da Transformação Digital de Governos pelo mundo,[15][16] o código aberto é considerado essencial para promoção da colaboração, padronização e otimização das tecnologias desenvolvidas pela e para a gestão pública.
Nesse cenário, diversos movimentos cívicos como Rede Livre, Ciudadania Inteligente, Code For America, My Society e G0v, atuam na promoção da cultura de governos, dados e códigos abertos, mobilizando profissionais, cidadãos e agentes governamentais em eventos e redes comunitárias, que geram ou maximizam o impacto na sociedade através da adoção e prática de códigos abertos e governança colaborativa nos governos e na sociedade.
Ver também
[editar | editar código-fonte]- ↑ Luiz Antonio da Silva Junior (23 de Outubro de 2003). «O movimento do código aberto». Consultado em 26 de dezembro de 2015
- ↑ «What is Open Source Software | Diffingo Solutions Inc.». web.archive.org. 28 de outubro de 2008. Consultado em 1 de outubro de 2022
- ↑ Levine, Sheen S.; Prietula, Michael J. (1 de outubro de 2014). «Open Collaboration for Innovation: Principles and Performance». Organization Science (5): 1414–1433. ISSN 1047-7039. doi:10.1287/orsc.2013.0872. Consultado em 1 de outubro de 2022
- ↑ Raymond, Eric S. (2001). The cathedral and the bazaar : musings on Linux and Open Source by an accidental revolutionary. Internet Archive. [S.l.]: Beijing ; Cambridge, Mass. : O'Reilly
- ↑ Pearce, Joshua M. (1 de junho de 2012). «The case for open source appropriate technology». Environment, Development and Sustainability (em inglês) (3): 425–431. ISSN 1573-2975. doi:10.1007/s10668-012-9337-9. Consultado em 1 de outubro de 2022
- ↑ Menon, Sreelatha (1 de março de 2009). «Sreelatha Menon: Researchers sans borders». Business Standard India. Consultado em 1 de outubro de 2022
- ↑ «OpenSourceMalaria:Story so far - OpenWetWare». openwetware.org (em inglês). Consultado em 1 de outubro de 2022
- ↑ «History of the OSI | Open Source Initiative». opensource.org. Consultado em 1 de outubro de 2022
- ↑ a b «Por que o Código Aberto não compartilha dos objetivos do Software Livre». FSF. 25 de Abril de 2014. Consultado em 2 de Junho de 2014
- ↑ a b c d Flink, James J. (1976). The car culture MIT Press pbk. ed ed. Cambridge, Mass.: MIT Press. OCLC 10470036
- ↑ Fisher, Franklin M. (1983). IBM and the U.S. data processing industry : an economic history. James W. McKie, Richard B. Mancke. New York, N.Y., U.S.A.: Praeger. OCLC 9324977
- ↑ «IBM 7090/7094 Page». web.archive.org. 27 de agosto de 2015. Consultado em 1 de outubro de 2022
- ↑ Evangelista, Rafael (2 de dezembro de 2008). «linguagem nos debates sobre software livre». Palestra fisl7.0. Consultado em 25 de setembro de 2012[ligação inativa]
- ↑ «The Debian Free Software Guidelines (DFSG)». Consultado em 26 de Dezembro de 2015
- ↑ Governo do Reino Unido. «Seja aberto e use código aberto». Consultado em 18 de maio de 2019
- ↑ Governo dos Estados Unidos da América. «Portal de Compartilhamento de Códigos do Governo Estadunidense». Consultado em 18 de maio de 2019
Ligações externas
[editar | editar código-fonte]- «A identificação da ideologia». Software Livre versus Código Aberto
- «Os líderes Open Source». na Webyes
- «SourceForge» (em inglês). - banco de dados de projetos open source
- «Firefox» (em inglês). projeto livre Firefox
- «Apache HTTP Server» (em inglês). projeto livre HTTP
- «Perl.com» (em inglês). projeto livre Perl
- «Relação de programas open source» (em inglês). por Webi
- «Relação de programas open source» (em inglês). por Maarch
- «Mestrado em Software de Código Aberto». em Instituto Universitário de Lisboa - IUL