Como encontrar "good-first-issue" no mundo open source
Contexto
Nos ultimos 6 meses tenho focado bastante em melhorar minha base de computação, com isso, programando mais em c, lendo codigos de outros no github, vendo aulas no youtube sobre conteudos como compiladores e criando meu proprio analisador lexico, resolvendo desafios de leetcode para aprender um pouco mais sobre performance e conceitos matematicos usados para tal. Mas ao mesmo tempo nao deixei de brincar com meus scripts de python e meus sistemas de php.
Por que open source ?
Por mais que eu sinta meu conhencimento venha aumentando gradualmente, ainda me sinto em um laboratorio, tudo que faço sempre esta apenas na minha maquina, por mais que possa ter julgamento externo de amigos ou pessoas de comunidades que mostro meu codigo, sinto uma vontade de adicionar funcionalidades em projetos existentes, mesmo que sejam detalhes e corrigir bugs.
Procurando projeto
Okay, sei o que eu quero, um projeto que eu possa resolver um bug, mas nao posso simplesmente tentar resolver um grande problema de um projeto como o kernel do linux por exemplo, preciso começar pequeno, molhar os pés nas aguas dos grandes projetos que são utilizados por mais pessoas do que apenas eu, enfrentar os problemas além do codigo, como por exemplo configurar o ambiente para o projeto, fazer ele rodar, etapas que nunca passei antes a nao ser que estejamos falando sobre um twitter clone em node que instalei na minha maquina apenas para tentar rodar kkkk
Experiencias passadas
Sabendo disso, nos ultimos meses durante uma conversa em um chat de discord um desenvolvedor me sugere como primeiro projeto um projeto simplesAlgorithms and Data strucutres
Li um pouco e entendi, um amontoado de algoritimos em diversas linguagens, parece otimo pra alguem que nao esta acostumado a fazer um fork e um pull request.
E foi o que aconteceu, quebrei cabeça 30 minutos para fazer meu primeiro pull request, a modificação foi algo simples, apenas uma tradução, o objetivo do projeto é ter lingua principal o inglês e tinham uma infinidade de codigo em português, levei cerca de 15 a 20 minutos para traduzir os algoritimos de c para ingles mas ja estava pronto, mais 15 minutos para aprender a enviar um pull request de maneira correta, e pronto.
Tambem fiz modificações no readme mas não é relevante.
Ate agora essa deve ter sido a contribuição mais importante que eu já fiz (para ter uma noção do meu desacaso sobre me desenvolver em projetos open source)
07/01/2024, 00:00
Durante a madrugada de sabado para sexta acabei gastando cerca de 3 a 4 horas procurando projetos open source para contribuir, em especial com tags "good-first-issue", não tive sucesso nas buscas, a maioria dos projetos eu não tinha a minima ideia do contexto do projeto, por exemplo, a melhor alternativa foi o projeto Files uma gerenciador de arquivos escrito em C#
Olhando a tag "good-first-issue" encontrei a seguinte visão:
31 Good-first-issue abertos, esse é meu momento, mas então gastei minha madrugada inteira tentando fazer o visual studio buildar o projeto, e pelo meu computador ser lento por possuir apenas 4GB de memoriam RAM, esperei alguns minutos com apenas o visual studio aberto tentando buildar o projeto e nada acontecia.
18:30
Desisti, dormi e agora estou eu, 18:30 e ainda com aquela vontade de contribuir em um projeto, fiquei pensando "Com certeza tem alguma maneira de eu buildar aquele projeto sem usar o visual studio, apenas usando linha de comando", acho que eu estava certo, mas passei as minhas proximas 3 horas tentando fazer isso e então sem sucesso novamente, com isso, desisti do projeto e tive que procurar um novo.
Hoje (08/01/2024)
Não consguido encontrar um projeto com bons good-first-issue ou algo que eu ache que meu computador consiga buildar em menos de 10 minutos, no momento sei que a insegurança do fracasso da situação anterior pode estar me impedindo de prosseguir.
Falando da performance, nao considero que meu computador seja lento, por mais que nao seja um computador mediano atual, acredito que devem existir projetos que possam ser buildados sem problemas nele, o unico obstaculo são os 4GB RAM
Perdido
Dado esse contexto gorduroso anterior, me sinto perdido em relação a como me desenvolver com projetos open source, sugestão de projetos são bem vindas mas esse não é o objetivo do post.
O objetivo do post é conseguir conselhos para se desenvolver no mundo open source, sei que você ja deve estar com o comentario na ponta da lingua, mas gostaria de deixar algumas perguntas listadas aqui:
-
Como achar o primeiro projeto?
-
Como Encontrar seu primeiro issue?
-
É muita ousadia tentar contribuir em um projeto de outra linguagem por mais que sua linguagem atual seja semelhante? Por exemplo ter conhencimento de java e tentar contribuir em um projeto C#
-
Como superar a limitação do hardware com menos RAM no desenvolvimento de projetos grandes open source? Sabendo que você esta no ensino medio e provavelmente continuará com a limitaçao de hardware por pelo menos um ano.
-
O que seria o ponto chave para impedir a bomba de efeito moral ao abrir um projeto open source 10x maior do que os maiores que você ja fez sozinho
-
Algum conselho dado o contexto do post?
> Obrigado pela atenção.