Início

19 de agosto de 2008

Open Source ou Código Aberto

Open Source ou Código Aberto - Definição

Resolvi colocar aqui o conteúdo como está no site para haver discrepância. Eis as definições retiradas da Wikipédia Livre sobre esse tema:

O termo código aberto, ou open source em inglês, foi cunhado pela OSI (Open Source Initiative) e se refere ao mesmo software também chamado de software livre, ou seja, aquele que respeita as quatro liberdades definidas pela Free Software Foundation. Qualquer licença de software livre é também uma licença de código aberto, a diferença entre os dois está no discurso. Enquanto a FSF usa o termo "Software Livre" para trazer um discurso baseado em questões éticas, direitos e liberdade, a OSI usa o termo "Código Aberto" para discursar sobre um ponto de vista puramente técnico, sem conflitar questões éticas. Esta nomenclatura e discurso foram forjados por Eric Raymond e outros fundadores da OSI para apresentar o software livre a empresas de uma forma mais agradável a visão das corporações.

Fonte: Wikipédia

A definição do Open Source foi criada pela Open Source Iniciative(OSI) a partir do texto original da Debian Free Software Guidelines (DFSG) e determina que um programa de código aberto deve garantir:

1. Distribuição livre

  • 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.

2. 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 para qualquer programador.

3. Trabalhos Derivados

  • 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.

4. Integridade do autor do código fonte

  • A licença pode restringir o código fonte de ser distribuído em uma forma modificada apenas 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. 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.

5. Não discriminação contra pessoas ou grupos

  • A licença não pode ser discriminatória contra qualquer pessoa ou grupo de pessoas.

6. Não discriminação contra áreas de atuação

  • 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.

7. Distribuição da Licença

  • Os direitos associados ao programa devem ser aplicáveis para todos aqueles cujo o programa é redistribuído, sem a necessidade da execução de uma licença adicional para estas partes.

8. Licença não específica à um produto

  • 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.

9. Licença não restrinja outros programas

  • 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.

10. Licença neutra em relação a tecnologia

  • Nenhuma cláusula da licença pode estabelecer uma tecnologia individual, estilo ou interface a ser aplicada no programa.

Alguns projetos FLOSS de sucesso mundial

Mozilla Firefox

Navegador Open Source desenvolvido pela Mozilla Foundation, que nos últimos anos tem ganhado grande número de usuários. Tem suporte aos padrões web e também pode adquirir mais recursos utilizando extensões. Quem deu início ao Firefox foram Dave Hyatt e Blake Ross.

Apache HTTP Server

Em meados de 1994 ex-funcionários do National Center for Supercomputing Applications,em português, Centro Nacional para Aplicações de Supercomputação, situado na Universidade de Illinois, começaram a reunir seus conhecimentos e desenvolvimentos para implementarem o HTTP. Brian Behlendorf e Cliff Skolnick fizeram uma lista de discussão, criaram um espaço onde as informações eram compartilhadas e os principais desenvolvedores tinham acesso a uma máquina na qual os trabalhos eram armazenados. No final de fevereiro de 1995, foi criada a Apache Software Foundation. Atualmente o servidor Apache é utilizado em mais de 50% dos servidores web do mundo.

Perl

A linguagem de programação Perl foi concebida oficialmente em 1987 por Larry Wall. Porém, só em 1989, com o lançamento da versão 3.0, licenciou-se sob a GPL (GNU General Public License). Atualmente a linguagem já se encontra na versão 5.8.8, possui diversos livros publicados e é a ferramenta responsável pela maioria do "conteúdo dinâmico" na World Wide Web.

Linux

Linux é um dos exemplos mais famosos de software Open Source. Este kernel (cerne ou núcleo) de sistema operacional vem sendo desenvolvido e aprimorado desde 1991, quando Linus Torvalds liberou seu código na Internet e licenciou-o sob a GPL. Atualmente o Linux já está na sua versão 2.6 e apresenta cerca de 450 distribuições diferentes. Todos estes desenvolvimentos foram possíveis graças à listas de discussões e espaços colaborativos.

Fonte: Wikipédia

Nenhum comentário: