Qual é um bom projeto de código aberto no GitHub para os iniciantes contribuírem?

Melhor resposta

Aceitarei.

Primeiro de tudo, discordo totalmente de uma resposta (com 1K + votos positivos) neste tópico junto com as linhas, Se você for um iniciante, não contribua com um projeto de código aberto no GitHub! É um beco sem saída que leva à frustração e raiva !”

Se algo causou frustração e raiva em alguém, isso não significa que a mesma coisa estaria causando uma reação semelhante em você. Lamento, mas isso era uma perspectiva negativa.

Na verdade, contribuir para o código aberto é algo que o diferencia de iniciante e intermediário ou experiente. Dá a você um impulso para avançar ainda mais em sua jornada de tecnologia ou codificação. Claro, você não quer ser um iniciante para sempre, não é?

Eu recomendo fortemente que os iniciantes contribuam com código aberto no GitHub e eu mostrarei exatamente como você pode fazer isso logo após ler esta resposta.

Muitas pessoas pensam que contribuir para projetos de código aberto do GitHub necessariamente exigirá que escrevam algum tipo de código.

Eles têm essa imagem artificial em suas mentes de que algum repositório público de alguma biblioteca ou estrutura JavaScript de código aberto estaria tendo algum tipo de problema ou bug e eles terão que consertar esse bug se decidirem contribuir.

Isso não é verdade (o tempo todo) .

Eu costumava ter uma imagem semelhante em minha mente quando estava começando contribuindo com o código aberto no GitHub.

Contribuir com o código aberto não significa necessariamente escrever código.

  • Dar orientações às pessoas sobre como aprender alguma linguagem de programação também pode ser considerado como contribuidor de código aberto .
  • Mostrar o caminho das pessoas para se tornarem um desenvolvedor front-end também pode ser considerado uma contribuição de código aberto.
  • Bem, o fato de estar escrevendo esta resposta para ensinar quais são as Uma forma não tradicional de contribuir com atividades de código aberto no GitHub também pode ser considerada como minha contribuição para o código aberto.

Chega de falar. Deixe-me dar uma ideia de como você pode contribuir com o código aberto agora.

Vou começar elaborando minha experiência pessoal em contribuir para um repositório GitHub público.

Eu sou parte de alguns fóruns relacionados à comunidade de desenvolvedores. Muitos deles. Um dia, um cara criou um tópico mencionando:

“Criei o repositório GitHub com um objetivo de fornecer 999 programas C para iniciantes. Eu criei 7 deles. 992 mais para ir. “

Isso pareceu muito interessante para mim. Eu rapidamente cliquei em seu link de repo e explorei 7 programas que ele criou. Eles eram realmente amigáveis ​​para iniciantes e se alinhavam perfeitamente com seu objetivo, para ajudar as pessoas que estão começando na programação C.

Eu rapidamente criei um bifurcação em seu repositório GitHub. Clonou esse repo na minha máquina local. E, criei um programa C com solução amigável para iniciantes, seguindo o formato e estrutura que o cara seguiu para outros 7 programas. Enviou as alterações para o repositório bifurcado. Fiz um pull-request (PR) para o repositório original daquele cara com uma mensagem “adicionado outro programa C amigável para iniciantes com solução”. Aquele cara aprovou meu pedido de RP e fundiu as alterações em seu branch master. No dia seguinte, fiz o mesmo com mais um programa.

Pronto. Minha contribuição de código aberto. Sim. Eu precisava escrever um código para esta contribuição. No entanto, era algo totalmente diferente do que eu estava imaginando antes. Não resolvi algum bug ou problema de nível avançado em alguma biblioteca ou estrutura famosa. Acabei de pensar em um programa amigável para iniciantes que aprendemos na universidade, fornecemos uma solução para ele e é isso.

Você pode criar um repositório GitHub em seu próprio perfil com base nestas ideias:

  • melhores recursos para aprender desenvolvimento front-end (mencionar links de artigos, livros, recursos de vídeo, cursos gratuitos etc.)
  • melhores scripts de automação de tarefas em python (scripts de origem online e reuni-los em um só lugar , dê crédito aos autores originais)
  • visão geral de bancos de dados diferentes (instrua as pessoas sobre bancos de dados famosos como MySQL, MongoDB, SQL Server, Oracle etc. Diga a eles por que eles devem escolher um em vez do outro.)
  • ou qualquer coisa que você ache que seria educacional para toda a Internet

Se você gosta do ReactJS, fique à vontade para contribuir com meu repositório GitHub: UnnitMetaliya / 99-reactjs-project-ideas

Estou trabalhando para fornecer 99 ideias de projetos simples que as pessoas podem desenvolver usando a biblioteca ReactJS. Tive uma ideia? Ótimo. Fork meu repositório. Crie uma pasta para sua ideia seguindo a mesma estrutura da pasta # 001. Envie para o repositório que você bifurcou. Faça uma solicitação de pull para meu branch master. E é isso.

tl; dr >> Contribuir com o código aberto no GitHub não requer necessariamente escrever código. Existem centenas de maneiras diferentes de contribuir com o código aberto além da escrita de código.

Resposta

Em primeiro lugar, o software de código aberto é aquele que pode ser usado gratuitamente alterado e compartilhado (de uma forma modificada ou não modificada) por qualquer pessoa.

Sendo esse o significado teórico do que é código aberto, o significado mais profundo se alinha com a visão de manter as coisas transparentes para o usuário para que o o usuário entende totalmente o que está acontecendo e, portanto, tem a chance de fazer a diferença adicionando o recurso que ele deseja mais do software / hardware específico.

A primeira etapa no código aberto é identificar a organização que você gosta ou cuja visão se alinha com o que você realmente quer devolver ao mundo. Cada uma dessas organizações tem sua própria visão e missão de dar algo em troca às pessoas. Eu contribuo com a Mozilla por causa de sua visão e missão em que realmente acredito, dar às pessoas uma internet sem fronteiras e manter a web livre.

Nossa missão é promover a abertura, inovação e oportunidade na Web.

Na Mozilla, somos uma comunidade global de tecnólogos, pensadores e construtores trabalhando juntos para manter a Internet viva e acessível, para que as pessoas em todo o mundo possam ser contribuidores e criadores da Web Acreditamos que este ato de colaboração humana em uma plataforma aberta é essencial para o crescimento individual e nosso futuro coletivo.

Existem muitas outras organizações também, como Fedora, Ubuntu, GCC, Python, OpenCV, KDE. Muitas pessoas que estão nessas organizações trabalham apenas porque a missão / visão está alinhada com o seu pensamento ou como eles acreditam que seria o melhor a retribuir à sociedade em geral.

Depois de escolher a organização, haverá vários projetos que estão disponíveis para você escolher ou contribuir, sendo o Firefox um dos principais projetos da Mozilla, há muitos outros projetos como MDN (Mozilla Developer Network), Firefox OS, Persona etc., A organização de sua escolha pode ter uma página web / página wiki dedicada a como começar a contribuir, Na Mozilla temos algo chamado O que posso fazer pelo Mozilla [1]. Isso ajuda a levar as pessoas aos seus interesses com base na linguagem de programação de sua escolha etc .., Portanto, procure algo parecido que possa ajudá-lo a começar. O próximo passo é procurar alguns bugs, pegar o código-fonte necessário e construir o sistema em sua máquina de desenvolvimento específica e, finalmente, enviar um patch.

A principal diferença A diferença entre trabalhar com a base de código de uma organização de código aberto e a base de código usada durante as Estruturas de Dados da universidade ou cursos semelhantes é o tamanho da base de código. Descobrir onde o conteúdo está localizado e qual segmento de código faz o que é o maior desafio. Inicialmente, também pode ser desafiador entender a base do código, mesmo que você conheça a linguagem de programação, mas vale a pena o esforço. Você terá pessoas incríveis para ajudá-lo ao longo do processo, que podem tirar um pouco do seu tempo para ajudá-lo se você estiver indo na direção certa e souber o que está fazendo exatamente.

Sim, contribuir para projetos de código aberto requer que você tenha um conhecimento sólido sobre pelo menos uma linguagem de programação, caso você esteja disposto a contribuir para sua base de código. Fora isso, boa habilidade de leitura e paciência para ler a documentação de cada projeto, entendendo um dos muitos sistemas de controle de versão, seja git ou mercurial ou svn

Pelo que eu sei, há ” s nada chamado de abordagem “correta”, às vezes a contribuição de código aberto de um indivíduo ocorre porque ele usa o software específico e sua vida se torna mais fácil integrando um recurso específico a este software, então eles o integram e contribuem de volta para o código original base, pessoas diferentes têm requisitos diferentes e personalizam o software de acordo com suas necessidades, algumas contribuem com suas alterações esperando que ajude outra pessoa, outras preferem considerá-lo um projeto independente e independente. A melhor maneira de começar é escolher o projeto e ser apaixonado por ele.

por exemplo.O navegador Tor é um projeto derivado do Firefox, foi personalizado para fornecer anonimato e convertido em um projeto independente.

O que quer que você escolha, tem que ser algo que você use de alguma forma, dessa forma você sabe o que você está fazendo e também sabe como o software funciona, então fica mais fácil correlacionar o funcionamento do código ao seu funcionamento real.

Algumas sugestões de minha parte quando você estiver entrando no mundo de contribuição de código aberto seria

  1. Comece a usar sistemas baseados em Linux / Unix.
  2. Fique com o terminal e aproveite trabalhar a partir dele.
  3. Conheça o básico coisas de linha de comando como man, grep e para todos os outros comandos você tem um arquivo man. (arquivo man = manual, se você quiser saber como usar um comando específico, diga grep, basta fazer `man grep`)
  4. Um bom editor; vim v / s emacs war está sempre lá entre os desenvolvedores, mas você também pode ir com Sublime Text / Notepad ++

Contribuir com código aberto é uma sensação incrível como desenvolvedor porque você sabe que esses pequenos linhas de código que você escreveu estão por aí impactando a vida de milhões de pessoas que estão usando o software.

Outra coisa que surgirá nestes tempos são os fanboys. Vou compartilhar uma experiência com você , sendo um contribuidor do Mozilla, a questão que nós, como evangelistas [2] enfrentamos, são pessoas teimosas dizendo “Eu uso o Chrome! Não gosto do Firefox”

Legal, não temos absolutamente nenhum problema com isso. Nós construímos o Firefox apenas porque amamos e o objetivo principal aqui não é sobre qual navegador você realmente usa, adoraríamos se você usasse o Firefox, mas o objetivo principal é ter uma web aberta.

Uma web que é gratuita, aberta, segura, privada e, acima de tudo, uma web que é nossa.

Esperamos vê-lo com a comunidade Mozilla.

[1] O que posso fazer pelo Mozilla [2] Força-tarefa / Evangelismo

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *