Software Livre

Pedro Cavalcante
Antes de iniciar...



                                                         Quem sou eu?
                  Formado em Engenharia de Telecomunicação pela Fucapi
                                             Engenheiro Desenvolvedor na Fucapi

 ●   GNU/Linux a 7 anos
 ●   Drivers Linux / Sistemas Embarcados
 ●   Linguagens de Programação (C e C++)
 ●   Bibliotecas Gráficas (Qt e wxWidgets)
 ●   Banco de Dados (Postgres e MySQL)
 ●   Arduino
 ●   Android
Roteiro


 ●   Definição de Software Livre
 ●   Porque usar?
 ●   Software Livre x Código Aberto x Software Gratuito
 ●   Projeto GNU e GNU GPL
 ●   GNU/Linux
 ●   Software Livre entre nós
 ●   Como está o mercado atualmente?
Definição de Software Livre
Definição de Software Livre



                  O que é um programa de
                            computador?
Definição de Software Livre




           Você já usou Software Livre?
Definição de Software Livre



                               Qual a sua definição?
             É qualquer programa de computador que pode ser:

 ●   Usado
 ●   Copiado
 ●   Estudado
 ●   Modificado
 ●   Redistribuído
 ●   Sem nenhuma restrição (Free Software Foundation)
Definição de Software Livre



                                  Software Livre
                                        4 liberdades:

 ●   Qualquer uso (0)
 ●   Estudar e Adaptar (1)
 ●   Distribuir Cópia (2)
 ●   Redistribuir Melhorias (3)
Definição de Software Livre




                              Richard Stallman
Definição de Software Livre



                              Alguns exemplos
Porque usar?
Porque usar?



                                       Filosofia
 ●   Software Livre: desenvolvimento colaborativo
     e compartilha conhecimento
 ●   Software Não Livre: Privativo, segregado e
     com dependência de controle
Porque usar?



                                                        Porque?
●   É gratuito
●   Não fica refém de tecnologia proprietária
●   Liberdade para usar o programa para qualquer finalidade
●   Liberdade para estudar
●   Liberdade para adaptar
●   Suporte abundante e gratuito
●   Sistemas e aplicações com várias configurações
Porque usar?



        Problemas com Tecnologia Proprietária?

●   Preço
●   Adquire apenas uma licença de uso e não o software em si
●   Código fechado o deixa propicio a falhas
●   Apenas o proprietário pode fazer modificações
Porque usar?



                                                                  E o Governo?
 Ministério da Ciência e Tecnologia adere ao software livre

 Na manhã desta quarta-feira, dia 11/02/2004, o Instituto Nacional de Tecnologia da Informação (ITI)
 recebeu a visita do Ministro da Ciência e Tecnologia Eduardo Campos. Dentre os assuntos tratados, foi
 discutido na reunião a migração do MCT para o software livre. O Ministro Eduardo Campos disse que
 durante a sua gestão será dada especial atenção para que a migração ocorra de fato. Sobre esses dois
 assuntos, o Ministro observou que “é necessário sair do discurso para a prática e o unir esforços de toda a
 administração para que esses resultados e os seus benefícios sejam mais visíveis para a sociedade”. Ficou
 acertado também uma parceria entre o MCT e o ITI para o desenvolvimento de projetos de inclusão digital,
 fazendo com que a administração pública federal se engaje na instalação de Telecentros como uma
 alternativa para a redução da exclusão. Os Telecentros, que permitem o acesso à Internet aos cidadãos de
 baixa renda, foi implantado por Sérgio Amadeu durante a sua gestão no Governo Eletrônico da Prefeitura
 de São Paulo. Estiveram presentes também na reunião o Diretor de Infra-Estrutura de Chaves Públicas,
 Renato Martini, o Chefe de Gabinete do ITI, Carlinhos Cecconi, o Assessor do ITI, Ricardo Bimbo, e o
 Assessor Especial do Ministro, Arthur Pereira Nunes.
Software Livre x Código Aberto x Software Gratuito
Software Livre x Código Aberto x Software
Gratuito



                               Software Gratuito
    É apenas um software que você não precisa pagar e
                     o código fonte não está disponível
Software Livre x Código Aberto x Software
Gratuito


                                     Software Livre
                            Lembre sempre das liberdades!
                                (Free Software Foundation)



                                     Código Aberto
      São várias licenças distintas organizadas em uma só
                                    (Open Source Initiative)
Software Livre x Código Aberto x Software
Gratuito



             Agora começa a confusão...

    GPL                  AGPL                    MIT

      GPL 2.0               LGPL       Apache


   GPLv3                  BSD               Mozilla/EPL
Software Livre x Código Aberto x Software
Gratuito




                          http://pt.wikipedia.org/wiki/Licença_de_software_livre
Projeto GNU e GNU GPL
Projeto GNU e GNU GPL



           Objetivo: Produzir um Sistema
            Operacional Totalmente Livre
                  É um acrônimo recursivo: GNU isNotUnix

●   Manifesto GNU: “Free as in Freedom”
●   Iniciado em 1984
●   Inicialmente desenvolveram peças principais, como o
    compilador C, editor de texto, etc...
Projeto GNU e GNU GPL



                Aí Stallman se pergunta:
         “Eu escrevo o código, deixo-o aberto, vem um
               esperto e diz que é dele? O que fazer?”
Projeto GNU e GNU GPL



                                  Surge a GNU GPL
                                  GNU General Public License

●   Permite que os programas sejam distribuídos e reaproveitados
●   Mantém os direitos do autor
●   Não permite que o código seja apoderado por outra pessoa, ou
    que sejam impostos sobre ele restrições que firam uma das 4
    liberdades
Projeto GNU e GNU GPL



                                   Um pouco de História

●   Primeiro desafio: Em 1984 não existia compilador C livre
●   Em 1985 Stallman cria o GCC (GNU C Compiler)
●   Internet não estava consolidada mundialmente
●   Fontes disponíveis e aquisição sem custo provocou euforia entre
    desenvolvedores
●   Mas ainda faltava a cereja do bolo...
GNU/Linux
GNU/Linux



                                                        Minix
                                                 Minimal + Unix

 ●   S.O. Concebido por Andrew S. Tanembaum
 ●   Autor era constantemente solicitado a incorporar novos
     recursos e mecanismos
 ●   Unix exigia o pagamento de licença de uso
GNU/Linux



                                Linux
            Linus + Unix (Linus Torvalds)
GNU/Linux



                                                         Linux
                                 Linus + Unix (Linus Torvalds)

 ●   EM 1991, Linus liberou o código-fonte na Internet para
     mostrar o trabalho e angariar colaboradores voluntários
 ●   Número elevado de colaboradores fez os sistema ganhar
     “vida própria”
 ●   Setembro de 1991 a versão 0.01 é liberada
GNU/Linux



                                            Linux
                          Só faltava mais uma coisa:


  Linus licenciou o Linux sob os termos da GNU GPL
GNU/Linux



                                   GNU/Linux
                              O Casamento perfeito!


  Sistema GNU de Stallman e o kernel do Linux do
  Linus
Software Livre entre nós
Software Livre entre nós



                     Sistemas Operacionais
Software Livre entre nós



        Sistemas Operacionais Móveis
Software Livre entre nós



                Bibliotecas Gráficas (C++)
Software Livre entre nós



               Ferramentas Educacionais
Software Livre entre nós



                           E no Hardware




            Arduino         Raspberry Pi
Software Livre entre nós



                                                                     Onde mais?
                                          Ferramentas de Desenvolvimento
 ●   Compilador C: GCC.
 ●   Debugger GDB.
 ●   Biblioteca padrão da linguagem: C.
 ●   Editor de texto avançado: Emacs.
 ●   Plataforma de desenvolvimento: Eclipse (programação em Java e PHP) e NetBeans (Programação em C,
     C++, Java, Python, UML e outras).
 ●   Linguagens de programação: Python,Java, Perl, PHP, Lua, Ruby, Gambas e Tcl.
Software Livre entre nós



                                                                    Onde mais?
                                                                        Servidores
 ●   Agente de transporte de mensagens (e-mail):Postfix sendmail.
 ●   Servidor web: Apache.
 ●   Servidor de arquivos: Samba.
 ●   Servidor e cliente de email: Evolution.
 ●   Servidor de aplicações: Zope e Apache Tomcat.
 ●   Bancos de dados relacionais: MySQL, Postgres.
Software Livre entre nós



                                                                                    Onde mais?
                                                                                     Usuário Final 1/2
 ●   Programas de interação gráfica: GNOME, KDE e Xorg.
 ●   Navegadores Web: Firefox, Konqueror,Google Chrome.
 ●   Pacote de escritório: OpenOffice.org.
 ●   Processadores de texto: OpenOffice.org Writer, KWord e AbiWord.
 ●   Editor de apresentação multimédia: OpenOffice.org Impress e KPresenter
 ●   Planilha eletrônica: OpenOffice.org Calc, KSpread e GNumeric
 ●   Sistema de gerenciamento de banco de dados: OpenOffice.org Base, Glom e Kexi
 ●   CAD, (computer aided design) QCad.
 ●   Desenho vetorial: Inkscape, Sodipodi e OpenOffice.org Draw.
 ●   Editoração eletrônica: Scribus e OpenOffice.org Draw.
 ●   Editor de imagens: Gimp.
 ●   Editor web: Aptana.
Software Livre entre nós



                                                                                                    Onde mais?
                                                                                                        Usuário Final 2/2
 ●   EaD, Educação a distância: Moodle

 ●   Gerenciador de Conteúdo (CMS): Opencms, Drupal, Plone, WordPress (CMS muito usado em blogs) e Joomla.

 ●   Modelagem Tridimensional Blender3d, Wings3d

 ●   Renderização (imagem estática): Yafray, POV-Ray,LuxRender.

 ●   Acessibilidade: Virtual Magnifying Glass.

 ●   Edição de áudio: Audacity, Ardour

 ●   Players multimédia: VLC e Mplayer.

 ●   Sistema matemático : Scilab e Maxima.

 ●   Sistemas de editoração: TeX, LaTeX e MiKTeX

 ●   Sistema wiki: MediaWiki (sistema de wiki da Wikipedia).

 ●   Telefonia: Asterisk.

 ●   Composição de video : Cinelerra, Kdenlive, Kino

 ●   Educacional: Gcompris [multidisciplinar], Tuxpaint, Tuxmath, etc.

 ●   Assinatura eletrônica (ou digital): ittru
Como está o mercado atualmente?
Como está o mercado atualmente?



                                              Android


                       Alto nível (Aplicações): Linguagem Java




                       Baixo nível (Kernel): Linguagem C
Como está o mercado atualmente?



                                                      Ginga
                       Alto nível (NCL): Linguagem NCL



                       Médio nível (Middleware): Linguagem C++




                       Baixo nível (Kernel e Device Drivers):
                       Linguagem C
Como está o mercado atualmente?



                                  Desktop
Como está o mercado atualmente?



                                  Hardware
Como está o mercado atualmente?



                                  WEB
Dúvidas?

Software livre

  • 1.
  • 2.
    Antes de iniciar... Quem sou eu? Formado em Engenharia de Telecomunicação pela Fucapi Engenheiro Desenvolvedor na Fucapi ● GNU/Linux a 7 anos ● Drivers Linux / Sistemas Embarcados ● Linguagens de Programação (C e C++) ● Bibliotecas Gráficas (Qt e wxWidgets) ● Banco de Dados (Postgres e MySQL) ● Arduino ● Android
  • 3.
    Roteiro ● Definição de Software Livre ● Porque usar? ● Software Livre x Código Aberto x Software Gratuito ● Projeto GNU e GNU GPL ● GNU/Linux ● Software Livre entre nós ● Como está o mercado atualmente?
  • 4.
  • 5.
    Definição de SoftwareLivre O que é um programa de computador?
  • 6.
    Definição de SoftwareLivre Você já usou Software Livre?
  • 7.
    Definição de SoftwareLivre Qual a sua definição? É qualquer programa de computador que pode ser: ● Usado ● Copiado ● Estudado ● Modificado ● Redistribuído ● Sem nenhuma restrição (Free Software Foundation)
  • 8.
    Definição de SoftwareLivre Software Livre 4 liberdades: ● Qualquer uso (0) ● Estudar e Adaptar (1) ● Distribuir Cópia (2) ● Redistribuir Melhorias (3)
  • 9.
    Definição de SoftwareLivre Richard Stallman
  • 10.
    Definição de SoftwareLivre Alguns exemplos
  • 11.
  • 12.
    Porque usar? Filosofia ● Software Livre: desenvolvimento colaborativo e compartilha conhecimento ● Software Não Livre: Privativo, segregado e com dependência de controle
  • 13.
    Porque usar? Porque? ● É gratuito ● Não fica refém de tecnologia proprietária ● Liberdade para usar o programa para qualquer finalidade ● Liberdade para estudar ● Liberdade para adaptar ● Suporte abundante e gratuito ● Sistemas e aplicações com várias configurações
  • 14.
    Porque usar? Problemas com Tecnologia Proprietária? ● Preço ● Adquire apenas uma licença de uso e não o software em si ● Código fechado o deixa propicio a falhas ● Apenas o proprietário pode fazer modificações
  • 15.
    Porque usar? E o Governo? Ministério da Ciência e Tecnologia adere ao software livre Na manhã desta quarta-feira, dia 11/02/2004, o Instituto Nacional de Tecnologia da Informação (ITI) recebeu a visita do Ministro da Ciência e Tecnologia Eduardo Campos. Dentre os assuntos tratados, foi discutido na reunião a migração do MCT para o software livre. O Ministro Eduardo Campos disse que durante a sua gestão será dada especial atenção para que a migração ocorra de fato. Sobre esses dois assuntos, o Ministro observou que “é necessário sair do discurso para a prática e o unir esforços de toda a administração para que esses resultados e os seus benefícios sejam mais visíveis para a sociedade”. Ficou acertado também uma parceria entre o MCT e o ITI para o desenvolvimento de projetos de inclusão digital, fazendo com que a administração pública federal se engaje na instalação de Telecentros como uma alternativa para a redução da exclusão. Os Telecentros, que permitem o acesso à Internet aos cidadãos de baixa renda, foi implantado por Sérgio Amadeu durante a sua gestão no Governo Eletrônico da Prefeitura de São Paulo. Estiveram presentes também na reunião o Diretor de Infra-Estrutura de Chaves Públicas, Renato Martini, o Chefe de Gabinete do ITI, Carlinhos Cecconi, o Assessor do ITI, Ricardo Bimbo, e o Assessor Especial do Ministro, Arthur Pereira Nunes.
  • 16.
    Software Livre xCódigo Aberto x Software Gratuito
  • 17.
    Software Livre xCódigo Aberto x Software Gratuito Software Gratuito É apenas um software que você não precisa pagar e o código fonte não está disponível
  • 18.
    Software Livre xCódigo Aberto x Software Gratuito Software Livre Lembre sempre das liberdades! (Free Software Foundation) Código Aberto São várias licenças distintas organizadas em uma só (Open Source Initiative)
  • 19.
    Software Livre xCódigo Aberto x Software Gratuito Agora começa a confusão... GPL AGPL MIT GPL 2.0 LGPL Apache GPLv3 BSD Mozilla/EPL
  • 20.
    Software Livre xCódigo Aberto x Software Gratuito http://pt.wikipedia.org/wiki/Licença_de_software_livre
  • 21.
  • 22.
    Projeto GNU eGNU GPL Objetivo: Produzir um Sistema Operacional Totalmente Livre É um acrônimo recursivo: GNU isNotUnix ● Manifesto GNU: “Free as in Freedom” ● Iniciado em 1984 ● Inicialmente desenvolveram peças principais, como o compilador C, editor de texto, etc...
  • 23.
    Projeto GNU eGNU GPL Aí Stallman se pergunta: “Eu escrevo o código, deixo-o aberto, vem um esperto e diz que é dele? O que fazer?”
  • 24.
    Projeto GNU eGNU GPL Surge a GNU GPL GNU General Public License ● Permite que os programas sejam distribuídos e reaproveitados ● Mantém os direitos do autor ● Não permite que o código seja apoderado por outra pessoa, ou que sejam impostos sobre ele restrições que firam uma das 4 liberdades
  • 25.
    Projeto GNU eGNU GPL Um pouco de História ● Primeiro desafio: Em 1984 não existia compilador C livre ● Em 1985 Stallman cria o GCC (GNU C Compiler) ● Internet não estava consolidada mundialmente ● Fontes disponíveis e aquisição sem custo provocou euforia entre desenvolvedores ● Mas ainda faltava a cereja do bolo...
  • 26.
  • 27.
    GNU/Linux Minix Minimal + Unix ● S.O. Concebido por Andrew S. Tanembaum ● Autor era constantemente solicitado a incorporar novos recursos e mecanismos ● Unix exigia o pagamento de licença de uso
  • 28.
    GNU/Linux Linux Linus + Unix (Linus Torvalds)
  • 29.
    GNU/Linux Linux Linus + Unix (Linus Torvalds) ● EM 1991, Linus liberou o código-fonte na Internet para mostrar o trabalho e angariar colaboradores voluntários ● Número elevado de colaboradores fez os sistema ganhar “vida própria” ● Setembro de 1991 a versão 0.01 é liberada
  • 30.
    GNU/Linux Linux Só faltava mais uma coisa: Linus licenciou o Linux sob os termos da GNU GPL
  • 31.
    GNU/Linux GNU/Linux O Casamento perfeito! Sistema GNU de Stallman e o kernel do Linux do Linus
  • 32.
  • 33.
    Software Livre entrenós Sistemas Operacionais
  • 34.
    Software Livre entrenós Sistemas Operacionais Móveis
  • 35.
    Software Livre entrenós Bibliotecas Gráficas (C++)
  • 36.
    Software Livre entrenós Ferramentas Educacionais
  • 37.
    Software Livre entrenós E no Hardware Arduino Raspberry Pi
  • 38.
    Software Livre entrenós Onde mais? Ferramentas de Desenvolvimento ● Compilador C: GCC. ● Debugger GDB. ● Biblioteca padrão da linguagem: C. ● Editor de texto avançado: Emacs. ● Plataforma de desenvolvimento: Eclipse (programação em Java e PHP) e NetBeans (Programação em C, C++, Java, Python, UML e outras). ● Linguagens de programação: Python,Java, Perl, PHP, Lua, Ruby, Gambas e Tcl.
  • 39.
    Software Livre entrenós Onde mais? Servidores ● Agente de transporte de mensagens (e-mail):Postfix sendmail. ● Servidor web: Apache. ● Servidor de arquivos: Samba. ● Servidor e cliente de email: Evolution. ● Servidor de aplicações: Zope e Apache Tomcat. ● Bancos de dados relacionais: MySQL, Postgres.
  • 40.
    Software Livre entrenós Onde mais? Usuário Final 1/2 ● Programas de interação gráfica: GNOME, KDE e Xorg. ● Navegadores Web: Firefox, Konqueror,Google Chrome. ● Pacote de escritório: OpenOffice.org. ● Processadores de texto: OpenOffice.org Writer, KWord e AbiWord. ● Editor de apresentação multimédia: OpenOffice.org Impress e KPresenter ● Planilha eletrônica: OpenOffice.org Calc, KSpread e GNumeric ● Sistema de gerenciamento de banco de dados: OpenOffice.org Base, Glom e Kexi ● CAD, (computer aided design) QCad. ● Desenho vetorial: Inkscape, Sodipodi e OpenOffice.org Draw. ● Editoração eletrônica: Scribus e OpenOffice.org Draw. ● Editor de imagens: Gimp. ● Editor web: Aptana.
  • 41.
    Software Livre entrenós Onde mais? Usuário Final 2/2 ● EaD, Educação a distância: Moodle ● Gerenciador de Conteúdo (CMS): Opencms, Drupal, Plone, WordPress (CMS muito usado em blogs) e Joomla. ● Modelagem Tridimensional Blender3d, Wings3d ● Renderização (imagem estática): Yafray, POV-Ray,LuxRender. ● Acessibilidade: Virtual Magnifying Glass. ● Edição de áudio: Audacity, Ardour ● Players multimédia: VLC e Mplayer. ● Sistema matemático : Scilab e Maxima. ● Sistemas de editoração: TeX, LaTeX e MiKTeX ● Sistema wiki: MediaWiki (sistema de wiki da Wikipedia). ● Telefonia: Asterisk. ● Composição de video : Cinelerra, Kdenlive, Kino ● Educacional: Gcompris [multidisciplinar], Tuxpaint, Tuxmath, etc. ● Assinatura eletrônica (ou digital): ittru
  • 42.
    Como está omercado atualmente?
  • 43.
    Como está omercado atualmente? Android Alto nível (Aplicações): Linguagem Java Baixo nível (Kernel): Linguagem C
  • 44.
    Como está omercado atualmente? Ginga Alto nível (NCL): Linguagem NCL Médio nível (Middleware): Linguagem C++ Baixo nível (Kernel e Device Drivers): Linguagem C
  • 45.
    Como está omercado atualmente? Desktop
  • 46.
    Como está omercado atualmente? Hardware
  • 47.
    Como está omercado atualmente? WEB
  • 48.

Notas do Editor

  • #6 [bolo]
  • #7 [wikipedia] [roteador] [servidor de DNS] [mozilla] [chrome] [android] [google ibm hp toyota]
  • #9 Estudar, adaptar [distribuir conhecimento]
  • #13 [comparação entre alturas, submissão, ética] [software extrair áudio de dvd] --- [windows original->cópias no mundo analógico] [várias distribuições windows não são sinceras] [exemplo de como cópias ilegais te forçam a mudar de sw, so e pc]
  • #14 [troca de conhecimento] [royalties fogo e roda]
  • #16 [independência tecnológica] [cuba e iraque]