FOSS
Como contribuir e tals
(obrigado Alessandro pelo título)
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)
"FOSS é uma filosofia importante no mundo
do software, promovendo a colaboração,
inovação e liberdade no desenvolvimento de
software." - chat gpt
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.
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.
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.
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.
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.
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.
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.
● 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.
● 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.
● 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.
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?
Qual o ponto chave para contribuir em projetos
Open-source?
Paciência e Persistência
Sou iniciante, como faço para contribuir?
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
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
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
Sou desenvolvedor, quero contribuir com
código!
Zero Onboarding
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
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
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
Fork: Goexiv
Original: Lightning Image
E sobre WordPress?
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
Five for the Future
Contribuir como
Organização/Empresa
Five for the Future
Contribuir como
Indivíduo
Obrigado!
rtio.dev

FOSS (Free and open-source software) - Por conde começar?

  • 1.
    FOSS Como contribuir etals (obrigado Alessandro pelo título)
  • 2.
    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)
  • 4.
    "FOSS é umafilosofia importante no mundo do software, promovendo a colaboração, inovação e liberdade no desenvolvimento de software." - chat gpt
  • 5.
    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.
  • 6.
    Livre Aqui, "livre" nãose 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.
  • 7.
    Código Aberto O código-fontedo software é disponibilizado publicamente. Isso significa que qualquer um pode ver como o software foi construído e pode contribuir com melhorias ou correções.
  • 8.
    Comunidade e Colaboração Umdos pilares do FOSS é a colaboração comunitária. Desenvolvedores de todo o mundo contribuem para melhorar o software, corrigir bugs e adicionar novas funcionalidades.
  • 9.
    Transparência e Confiabilidade Comoo código-fonte é aberto, ele pode ser auditado por qualquer pessoa, o que aumenta a transparência e a confiabilidade do software.
  • 10.
    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.
  • 11.
    Por que contribuircom 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.
  • 12.
    ● Networking eComunidade: 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.
  • 13.
    ● Reconhecimento eInfluê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.
  • 14.
    ● Aprender sobreOpen 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.
  • 16.
    Desafios ● Qual projetocontribuir? ● 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?
  • 17.
    Qual o pontochave para contribuir em projetos Open-source?
  • 18.
  • 19.
    Sou iniciante, comofaço para contribuir?
  • 20.
    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
  • 21.
    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
  • 22.
    Reportando bugs ● Todosoftware 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
  • 23.
    Sou desenvolvedor, querocontribuir com código!
  • 24.
  • 26.
    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
  • 27.
    Forkar projetos quenã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
  • 28.
    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
  • 29.
  • 30.
  • 31.
  • 32.
    Five for theFuture 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
  • 33.
    Five for theFuture Contribuir como Organização/Empresa
  • 34.
    Five for theFuture Contribuir como Indivíduo
  • 35.