Upgrade to Pro — share decks privately, control downloads, hide ads and more …

FOSS

 FOSS

Avatar for Rafael Meneses

Rafael Meneses

January 19, 2024

Other Decks in Technology

Transcript

  1. Rafael Meneses eu • organizador: ◦ WordPress Fortaleza ◦ PHP

    Com Rapadura • bs speaker • desenvolvedor de software, especialidade em bombril (não é um novo framework) • senior gif curator • trabalho no Tumblr (ainda existe?) (usar termos em inglês pra parecer foda)
  2. "FOSS é uma filosofia importante no mundo do software, promovendo

    a colaboração, inovação e liberdade no desenvolvimento de software." - chat gpt
  3. O que é Free and Open Source Software (FOSS)? FOSS

    engloba softwares que não apenas podem ser usados gratuitamente, mas também oferecem acesso ao seu código-fonte. Isso permite que qualquer pessoa estude, modifique e distribua o software para qualquer propósito.
  4. Livre Aqui, "livre" não se refere apenas ao preço, mas

    principalmente à liberdade. Usuários têm as 4 liberdades fundamentais: liberdade de rodar, estudar, distribuir cópias e distribuir cópias modificadas/melhoradas do software.
  5. Código Aberto O código-fonte do software é disponibilizado publicamente. Isso

    significa que qualquer um pode ver como o software foi construído e pode contribuir com melhorias ou correções.
  6. Comunidade e Colaboração Um dos pilares do FOSS é a

    colaboração comunitária. Desenvolvedores de todo o mundo contribuem para melhorar o software, corrigir bugs e adicionar novas funcionalidades.
  7. Transparência e Confiabilidade Como o código-fonte é aberto, ele pode

    ser auditado por qualquer pessoa, o que aumenta a transparência e a confiabilidade do software.
  8. Licenças O FOSS é geralmente distribuído sob licenças que permitem

    essas liberdades, como a GNU General Public License (GPL), Apache License, entre outras.
  9. Por que contribuir com FOSS? • Desenvolvimento de Habilidades Técnicas:

    Contribuir com FOSS é uma excelente maneira de melhorar habilidades de programação, aprender novas tecnologias e entender melhor como grandes projetos de software funcionam. • Construir um Portfólio: Contribuições para projetos FOSS são visíveis publicamente, o que pode ser uma ótima maneira de construir um portfólio impressionante para futuras oportunidades de emprego.
  10. • Networking e Comunidade: Trabalhar em projetos FOSS permite que

    você se conecte com outros desenvolvedores e participe de uma comunidade global, o que pode ser valioso para troca de conhecimentos e oportunidades de carreira. • Contribuir para o Bem Comum: Contribuir para FOSS significa ajudar a desenvolver ferramentas que todos podem usar gratuitamente, contribuindo assim para o bem comum e para a democratização do acesso à tecnologia. • Aprender Colaboração e Trabalho em Equipe: FOSS envolve trabalhar com outros desenvolvedores, o que ajuda a desenvolver habilidades de comunicação e colaboração, essenciais no mundo do trabalho atual.
  11. • Reconhecimento e Influência: Contribuidores ativos em projetos FOSS podem

    ganhar reconhecimento na comunidade e influenciar a direção de um projeto. • Resolver Problemas Reais: Trabalhando em FOSS, você pode escolher trabalhar em problemas que são importantes para você ou para sua comunidade, criando soluções que atendem necessidades reais. • Desafio e Satisfação: Contribuir para FOSS pode ser desafiador, mas também extremamente gratificante, especialmente quando você vê sua contribuição sendo usada por outras pessoas ao redor do mundo. • Melhorar Software que Você Usa: Contribuir para projetos dos quais você mesmo é usuário permite que você melhore ferramentas que você usa regularmente, adaptando-as melhor às suas necessidades.
  12. • Aprender sobre Open Source Licensing e Intellectual Property: Trabalhar

    com FOSS também envolve aprender sobre aspectos legais e éticos do software, como licenciamento e propriedade intelectual. • Inovação e Experimentação: Sem as restrições comerciais de software proprietário, você tem a liberdade de explorar novas ideias, experimentar tecnologias emergentes e ser criativo. Isso pode levar a avanços tecnológicos significativos, tanto para o projeto específico quanto para o campo da tecnologia como um todo.
  13. Desafios • Qual projeto contribuir? • Por onde começar? •

    Documentação? De novo? • Quero programar, como faço? • Issues? Não é no GH? Onde é? • Como entender o código existente? • Quem vai me ensinar a configurar o ambiente de desenvolvimento? • Como balancear minhas contribuições com meu 9 to 5?
  14. Contribuir com documentação • Inúmeros projetos com documentação desatualizada ou

    errada • Descrições de projetos no GitHub precisam de melhorias e correções
  15. Contribuir com traduções • Ajude a traduzir a documentação do

    seu projeto favorito para que mais pessoas tenham acesso • Ajude a traduzir o website dos projetos
  16. Reportando bugs • Todo software tem bugs, se você encontrar

    algum abra uma issue • Cada projeto tem uma forma para reportar bugs, provavelmente essa informação estará na página principal do projeto
  17. Corrigir pequenos problemas • Uma for boa de começar a

    contribuir é identificar problemas nos softwares que você já usa e ajudar a corrigir • Acesse a seção de issues do projeto no GitHub e veja se você consegue resolver algum problema • As bibliotecas que usamos são uma forma excelente de contribuir por geralmente tem um escopo menor
  18. Forkar projetos que não são mais mantidos • Bem comum

    você encontrar projetos que não são mais abandonados onde você trabalha, você pode dar continuidade no projeto • Um exemplo recente é o PHP_CodeSnifer
  19. Iniciar novos projetos • Essa seria a forma mais direta

    de contribuir, mas também é a que mais exige comprometimento e habilidades • Aqui o céu é o limite: uma biblioteca ou um software completo, vai depender do que você está tentando resolver
  20. Five for the Future O que o Five for the

    Future? Lançado em 2014, o Five for the Future incentiva as organizações a contribuir com cinco por cento de seus recursos para o desenvolvimento do WordPress. O cofundador do WordPress, Matt Mullenweg, propôs este benchmark para manter uma “proporção áurea” de colaboradores para usuários. Site