5 Características de um bom projeto de código aberto

5 Características de um bom projeto de código aberto

A contribuição de código aberto é uma das habilidades mais procuradas hoje em tecnologia. As pessoas perceberam os benefícios de usar tecnologias de código aberto e as recompensas de fazer parte desses projetos.





O desenvolvimento de código aberto é uma abordagem baseada no compartilhamento de código-fonte e melhoria colaborativa.





MAKEUSEO VÍDEO DO DIA

Existem milhares de projetos de código aberto na internet. Projetos de código aberto podem ser aplicativos de mídia social, software de gerenciamento de projetos e documentação técnica. Então, como você escolhe o caminho certo?





assistir tv online grátis sem fazer download

O que procurar em um projeto de código aberto

Um equívoco sobre projetos de código aberto é que você precisa contribuir com código. Embora o código seja essencial, outras áreas, como documentação, gerenciamento de projetos e defesa da comunidade, podem incluir contribuições de código aberto .

Qualquer pessoa que tenha trabalhado em projetos de código aberto falará sobre o poder de tais projetos. Os benefícios incluem inovação, qualificação e relacionamentos produtivos que impactam sua carreira.



Considere as seguintes características para determinar se um código aberto vale o seu tempo.

1. Possui Licença?

Todo projeto de código aberto tem uma licença, normalmente uma licença permissiva ou uma licença copyleft. Uma licença permissiva é comum em projetos de código aberto. Ele não restringe ninguém de usar, distribuir ou vender uma versão modificada do software.





A maioria dos projetos de código aberto tem uma licença permissiva, como MIT, BSD ou Apache 2.0. A licença do MIT compartilha e distribui software gratuitamente e não possui garantia:

  Uma imagem da licença do MIT tirada no GitHub

Licenças copyleft, como General Public License, Mozilla Public License e Affero General Public License, vêm com mais restrições.





Uma licença permissiva permite que os contribuidores alterem e distribuam software de código aberto. Isso significa que os desenvolvedores podem modificar o código-fonte para produzir um novo software e usá-lo ou distribuí-lo sem restrições. A versão modificada estará sob a mesma licença do software original.

No entanto, as versões modificadas não terão o mesmo nome da versão original para facilitar a identificação entre as duas. A licença também deve incluir todas as pessoas e não discriminar ninguém.

Qualquer pessoa que receba o software redistribuído deve ter os mesmos direitos na licença que os proprietários do código original.

Uma licença gratuita não restringe o software a um canal de distribuição ou tecnologia específica. Software e dependências distribuídos juntamente com software de código aberto não precisam necessariamente ser de código aberto. d-source e outras tecnologias pagas usam software de código aberto sem restrições.

2. O código fonte é compartilhado?

Todos os projetos de código aberto possuem uma licença que permite o compartilhamento gratuito do código-fonte. Os direitos também se estendem ao código compilado a partir de contribuições. O projeto deve disponibilizar seu código-fonte para todas as partes sem restrições.

Quando o código-fonte não está disponível em plataformas públicas, ele deve estar disponível mediante solicitação. Qualquer projeto que não compartilhe seu código-fonte não é um projeto de código aberto.

Mas, a licença pode restringir a redistribuição do código fonte e permitir apenas a redistribuição de sua forma modificada. O código modificado pode ter um nome ou versão diferente para diferenciá-lo do projeto original.

3. O Projeto possui Diretrizes para Contribuintes?

Todo projeto de código aberto deve ter um guia de contribuidores. Você provavelmente o encontrará na pasta raiz do projeto, geralmente chamada de CONTRIBUTORS ou CONTRIBUTORS.md. Um guia para contribuidores contém instruções simples sobre como contribuir para o projeto.

O guia mostra aos novos contribuidores como bifurcar, levantar um problema e enviar suas contribuições para o repositório upstream. Os guias do colaborador ajudam a mostrar aos colaboradores como o projeto funciona para reduzir conflitos entre ramificações durante a mesclagem.

Aqui está um exemplo de diretrizes para contribuidores do projeto de código aberto AsyncAPI em GitHubGenericName :

  Uma imagem mostrando um exemplo de um guia de contribuidores feito no GitHub

4. Tem uma comunidade ativa?

A inovação é uma das razões pelas quais os projetos de código aberto se tornaram tão populares. O código aberto reúne comunidades talentosas e entusiasmadas para gerar ideias que promovam a inovação.

Uma comunidade forte garante comunicação, colaboração e marketing claros para o produto. Comunidades de código aberto ativas produzem melhores resultados e escalam inovações mais rapidamente do que projetos individuais.

Para determinar se uma comunidade está ativa, observe seus canais sociais. Comece monitorando suas atividades nas redes sociais, no Discord ou nas contas do Slack. Trabalhar em uma comunidade ativa com um fluxo livre de informações e recursos é melhor.

Comunidades ativas em código aberto aceleram a inovação de três maneiras. As comunidades respondem às tendências atuais em tecnologia, têm ciclos de lançamento frequentes e têm vasta redistribuição do software.

Um exemplo de projeto de código aberto com uma comunidade fantástica é o framework Javascript do Facebook, React.

O React cresceu para a versão 18 em nove anos, enquanto um framework similar Vue.js ainda está na versão 3. Ambos os frameworks têm menos de dez anos. A vibrante comunidade do React ofusca outros frameworks JavaScript populares, como o Angular.

É divertido trabalhar em projetos de código aberto com comunidades ativas. Além disso, você nunca ficará para trás nas tendências e atualizações de tecnologia. Encontrar o melhores comunidades de tecnologia do Discord é uma excelente adição ao seu portfólio de código aberto.

5. Os Mantenedores são Ativos e Atentos?

Em um projeto de código aberto, os mantenedores são contribuidores com permissão para modificar os arquivos no repositório de um projeto. Os mantenedores são responsáveis ​​pelo projeto e garantem que as contribuições feitas ao projeto estejam alinhadas com seus objetivos.

Em um bom projeto de código aberto, os mantenedores são os mais ativos. Eles serão responsáveis ​​pelos canais da comunidade, conduzirão as discussões e responderão às perguntas dos contribuidores. Os mantenedores fornecem atualizações e incentivam a colaboração na comunidade.

Para determinar se um projeto tem mantenedores ativos, observe seus repositórios remotos, como o GitHub. Mantenedores ativos se comunicam bem. Eles respondem a pull requests, configuram problemas e abordam perguntas de colaboradores.

Identifique mantenedores ativos verificando com que frequência eles respondem às consultas postadas nos canais sociais. Qualquer repositório com três meses de falha de comunicação não é um projeto adequado.

Características de um bom projeto de código aberto

Embora muitas outras características definam um projeto de código aberto adequado, as mais importantes são o tipo de licença, a natureza das comunidades, o código-fonte e os mantenedores ativos.

como conectar dois monitores a um laptop

Projetos de código aberto com as características acima inspiram inovação, dimensionamento e marketing de projetos de classe mundial. Além disso, grandes comunidades de código aberto acompanham as tendências tecnológicas e incentivam a colaboração e a diversidade.

Provavelmente, você já usou pelo menos um produto de software aberto em sua vida. Por que não começar por aí? Use as características mencionadas neste artigo para garantir que você obtenha o melhor projeto que complementa suas habilidades e necessidades.