Projeto de Software Livre

1.946 visualizações

Publicada em

Essa apresentação é destinada àqueles que desejam cooperar com o desenvolvimento do Software Livre. O foco principal é para o desenvolvedor mas você vai encontrar dicas valiosas de como colaborar de outras maneiras.

Publicada em: Economia e finanças

Projeto de Software Livre

  1. 1. Projeto de Software Livre Osvaldo Santana Neto [email_address]
  2. 2. Um pouco de 'legalês' <ul><li>Propriedade Intelectual </li></ul><ul><ul><li>Direito Autoral </li></ul></ul><ul><ul><li>Licenciamento </li></ul></ul><ul><li>Propriedade Industrial </li></ul><ul><ul><li>Patentes </li></ul></ul><ul><ul><li>Royalties </li></ul></ul><ul><li>Software </li></ul><ul><ul><li>Protegido pela propriedade intelectual e lei de software </li></ul></ul><ul><li>Patente de Software </li></ul><ul><ul><li>Fazer com que o software obedeça às leis de propriedade industrial </li></ul></ul><ul><ul><li>EUA permitem patente de software </li></ul></ul>
  3. 3. O que é Software Livre <ul><li>As 4 liberdades básicas: </li></ul><ul><ul><li>Liberdade para executar o software para qualquer propósito </li></ul></ul><ul><ul><li>Liberdade para estudar o software, adaptá-lo às suas necessidades. (O </li></ul></ul><ul><ul><li>código fonte é necessário para garantir essa liberdade) </li></ul></ul><ul><ul><li>Liberdade para redistribuir cópias </li></ul></ul><ul><ul><li>Liberdade para aperfeiçoar o programa e liberar os seus aperfeiçoamentos </li></ul></ul><ul><li>Licenças de Software Livre </li></ul><ul><ul><li>GPL, LGPL, FDL </li></ul></ul>
  4. 4. Software Livre não é Grátis <ul><li>Free as in “Free Speech”, not as in “Free Beer” </li></ul><ul><ul><li>“ Free ” como em “Liberdade de expressão”, não como “Cerveja grátis” </li></ul></ul><ul><li>Independência de fornecedor </li></ul><ul><ul><li>Você só atualiza se precisar </li></ul></ul><ul><ul><li>Você pode dar continuidade ao software </li></ul></ul><ul><li>Software Livre no Brasil </li></ul><ul><ul><li>Autonomia Tecnológica </li></ul></ul><ul><ul><li>Desenvolvimento tecnológico nacional </li></ul></ul><ul><ul><li>Inclusão Digital </li></ul></ul>
  5. 5. Vida de um Projeto <ul><li>Necessidade </li></ul><ul><ul><li>Surge a necessidade da criação de um software que execute uma determinada tarefa e o mesmo ainda não existe </li></ul></ul><ul><li>Projeto </li></ul><ul><ul><li>Inicia-se o projeto do software. Como o software irá funcionar, o que deverá fazer (com prioridades) </li></ul></ul><ul><li>Implementação / Documentação </li></ul><ul><ul><li>Desenvolvimento e documentação do software. Lembre-se que o seu software pode ser usado por pessoas do mundo todo e não apenas no Brasil </li></ul></ul>
  6. 6. Vida de um Projeto <ul><li>Liberação </li></ul><ul><ul><li>Publica-se e divulga-se para “o grande público” o lançamento do seu software. </li></ul></ul><ul><ul><li>Libere o seu projeto depois que ele tenha atingido um estágio funcional. Nunca antes disso. </li></ul></ul><ul><li>Existem sites especializados na divulgação de novos softwares: </li></ul><ul><ul><li>www.freshmeat.net </li></ul></ul><ul><ul><li>www.sourceforge.net </li></ul></ul><ul><ul><li>www.br-linux.org (no Brasil) </li></ul></ul>
  7. 7. Vida de um Projeto <ul><li>Correção de bugs, novos desenvolvimentos, ... </li></ul><ul><ul><li>“Libere cedo e libere sempre” - Libere sempre novos releases do seu software, mesmo que você não tenha feito muitos testes. Deixe bem claro que o software é experimental e não deve ser usado em produção. </li></ul></ul><ul><ul><li>Rápidas correções de bugs (muitas vezes enviados pelos próprios usuários do software) garantem o sucesso do projeto e estimula a participação de mais pessoas no desenvolvimento do mesmo. </li></ul></ul><ul><li>Cuidar do “filho” que você colocou no mundo </li></ul><ul><ul><li>Desenvolver software livre é uma responsabilidade. Lembre-se bem disso antes de iniciar o desenvolvimento de um </li></ul></ul><ul><ul><li>Ver o seu software sendo usado por várias pessoas vai te deixar orgulhoso :) </li></ul></ul>
  8. 8. Como começar? <ul><li>Já existe algum software que faça algo parecido com o que você precisa? </li></ul><ul><ul><li>Sim! - Ótimo, entre em contato com o desenvolvedor e tente ajudá-lo. “Reinventar a Roda” não é uma coisa boa no mundo do Software Livre </li></ul></ul><ul><ul><li>Não! - Ótimo também. Aí está a chance de você começar o seu próprio projeto </li></ul></ul><ul><li>Escolha as ferramentas necessárias para o desenvolvimento do seu software </li></ul><ul><ul><li>Dê preferência a ferramentas livres. Lembre-se que a pessoa que gostaria de te ajudar pode não ter dinheiro para comprar a última versão do Visual Studio .NET </li></ul></ul>
  9. 9. Como começar? <ul><li>Crie um ambiente para o desenvolvimento do seu software (ou utilize um pré-existente) </li></ul><ul><ul><li>Controle de versão, bug, compiladores, editores, ... </li></ul></ul><ul><li>Comece a desenvolver </li></ul><ul><li>Lembre-se que antes de liberar o seu programa você deve ter uma documentação sobre o funcionamento do mesmo </li></ul><ul><li>Nunca libere o seu projeto para o público antes dele estar funcional. </li></ul>
  10. 10. O que é necessário <ul><li>Todo projeto de Software Livre bem sucedido precisa: </li></ul><ul><ul><li>Código (é claro :)) </li></ul></ul><ul><ul><li>Documentação (para que usuários e desenvolvedores saibam como colaborar com o projeto) </li></ul></ul><ul><ul><li>Cases (quem está usando e para que? É você quem usa?) </li></ul></ul><ul><ul><li>Apelo / Utilidade (o software precisa ser útil para alguém ou ter um apelo forte para um grupo de pessoas) </li></ul></ul>
  11. 11. Gerenciando Projeto <ul><li>Comunicação eficiente entre desenvolvedores </li></ul><ul><ul><li>Um dos ítens mais importantes </li></ul></ul><ul><ul><li>Listas de discussão, fórum, mensagens instantâneas (IRC, ICQ, MSN, ...) </li></ul></ul><ul><li>Comunicação eficiente com usuários </li></ul><ul><ul><li>Necessário para se obter o feedback dos usuários. Importante separar lista de desenvolvimento e de usuários. </li></ul></ul><ul><ul><li>Listas de discussão, página web, Wiki, IRC, ... </li></ul></ul><ul><li>Ferramentas de gerência </li></ul><ul><ul><li>Controle de bugs, controle de versão, controle de novas features </li></ul></ul>
  12. 12. Gerenciando Projeto <ul><li>Metodologias Leves / Informalidade </li></ul><ul><ul><li>Metodologias pesadas aumentam a barreira para as contribuições </li></ul></ul><ul><ul><li>Quanto mais próximo da informalidade melhor </li></ul></ul><ul><ul><li>Software Livre não se encaixa com linha de produção </li></ul></ul><ul><li>Ao adotar uma metodologia lembre-se que a ajuda que você receberá é, em sua maioria, voluntária </li></ul>
  13. 13. Interagindo com a comunidade <ul><li>Interagindo com desenvolvedores </li></ul><ul><ul><li>Egos! </li></ul></ul><ul><ul><li>Não esquecer que quase sempre os desenvolvedores são usuários </li></ul></ul><ul><ul><li>Assumir compromissos com os desenvolvedores: </li></ul></ul><ul><ul><ul><li>Prazos, disponibilidade de horários, comunicar e debater decisões de projeto. </li></ul></ul></ul><ul><ul><li>Respeitar o desenvolvedor </li></ul></ul><ul><li>Interagindo com usuários </li></ul><ul><ul><li>Egos! </li></ul></ul><ul><ul><li>Assumir compromissos com os usuários: </li></ul></ul><ul><ul><ul><li>Prazos, disponibilidade de horários, comunicar e debater decisões de projeto. </li></ul></ul></ul><ul><ul><li>Respeitar o usuário </li></ul></ul>
  14. 14. Ganhando Dinheiro com SL <ul><li>Tornando-se uma 'Celebridade' </li></ul><ul><ul><li>Ao se tornar uma celebridade você sempre é cogitado para os mais diversos tipos de 'empreitadas' </li></ul></ul><ul><li>Prestando serviço de consultoria </li></ul><ul><ul><li>Sempre que uma super-mega-giga-compania iniciar um projeto de uso de software livre que utiliza o seu software você certamente terá prioridade na contratação da empresa </li></ul></ul><ul><li>Treinamentos </li></ul><ul><ul><li>Dependendo da visibilidade que o seu projeto e/ou você atingir você sempre será chamado para ministrar cursos </li></ul></ul>
  15. 15. Ganhando Dinheiro com SL <ul><li>Usando seu software no seu trabalho </li></ul><ul><ul><li>Isso aumentará sua produtividade e percebendo isso seu chefe até te dará um aumento (sei... :)) </li></ul></ul><ul><li>Virando palestrante </li></ul><ul><ul><li>O que essa opção está fazendo num slide que fala sobre “Ganhar Dinheiro”? :) </li></ul></ul>

×