13 pontos por xguru 2024-09-12 | 3 comentários | Compartilhar no WhatsApp
  • Há 3 meses, a Yaak publicou o texto "Why Not Open Source", explicando por que não se tornaria open source
  • Como já havia passado por burnout em projetos open source no passado, compartilhou isso por achar que o processo de tomada de decisão poderia ajudar outras pessoas
  • A maioria dos usuários do Yaak concordou, mas a comunidade open source mais ampla reagiu fortemente contra a maior parte do conteúdo

Reação da comunidade open source

  • "Não confunda open source/software livre com um modelo social específico do GitHub ou com contribuição" - lobste.rs

  • "Mas tudo isso também se aplica a software de código fechado" - ycombinator.com

  • "A argumentação deste post é um completo absurdo. Nem sei o que é este 'app'. Não preciso disso. Vá para a lata de lixo da história" - reddit.com

  • A maioria das respostas não foi construtiva, mas um comentário de 500 palavras no lobste.rs foi realmente excelente. Ao ler isso, pensei que eu poderia estar errado

Vantagens do open source

  • Open source não significa necessariamente contribuições abertas
  • Só de abrir o código já se obtém a maior parte das vantagens:
    • aberto a auditorias de segurança
    • funcionalidades transparentes (sem nada suspeito)
    • flexibilidade (é possível fazer fork e modificar)
    • continua executável mesmo se o desenvolvedor sair

Transição para open source com contribuições limitadas

  • Existem projetos como o SQLite que são open source, mas não aceitam contribuições externas
  • O Litestream inicialmente não aceitava contribuições, mas depois mudou para permitir apenas correções de bugs
  • O Yaak também adotou esse modelo: virou open source sob a licença MIT e aceita contribuições apenas para correções de bugs

3 comentários

 
rmekdma 2024-09-12

Fiquei impressionado com o fato de ele ter lido muitos comentários, selecionado o conteúdo construtivo e o acolhido. Parece ser uma pessoa de mente aberta.

 
savvykang 2024-09-12

Comentários construtivos também são realmente ótimos.

 
xguru 2024-09-12

Este é um resumo de um comentário de 500 caracteres no lobster.rs incluído no texto.
Este comentário foi escrito sobre o post original Why Not Open Source ?.

  • Indo direto à conclusão: não confunda "open source" / "software livre" com o modelo social específico do GitHub de Drive-by Contribution, nem com contribuições em si
  • É difícil concordar com a explicação de por que open source não funciona
  • Muitos dos pontos apresentados são falsos dilemas. Por exemplo: "na prática é difícil adicionar funcionalidades, e muitas vezes é mais rápido o mantenedor implementar diretamente"
  • Se for código fechado, você sempre terá que fazer tudo por conta própria, mas mesmo sendo open source você também pode escolher fazer assim. Não há obrigação de aceitar contribuições de outras pessoas

Refutação ponto a ponto

É possível adicionar funcionalidades - 🟥 Na prática, é difícil

  • Não é necessário aceitar tudo o que qualquer pessoa enviar para que algo seja open source

A transparência aumenta - 🟧 Não é preciso open source para ter transparência. Isso também pode ser feito com roadmap público, não só com código

  • É uma observação válida. Mas não é uma questão de ter só código; é também ter o código. Dá para ter código transparente e roadmap transparente

A segurança vai melhorar - 🟧 Depende do caso. Usuários podem auditar o código de um projeto open source e divulgar problemas

  • Tornar open source não piora a situação. Mesmo que a chance de melhorar seja pequena, pelo menos não há desvantagem

A comunidade vai crescer - 🟧 Isso só acontece com investimento de esforço. Não é algo limitado a open source

  • Novamente, não piora, mas o autor também admite que isso não tem tanta relação

Refutação dos pontos negativos

É difícil lidar com feedback grosseiro

  • Em código fechado também se recebe feedback. Em qualquer um dos casos, não é preciso aceitar

É difícil gerenciar ciclos longos de feedback

  • Basta não aceitar feedback/envio de mudanças. O ciclo de melhoria deixa de existir

É difícil recusar contribuições enviadas sem aprovação

  • Basta escrever no readme "não aceitamos contribuições" e fechar automaticamente todos os PRs

Quando o projeto amadurece, fica difícil recusar a maioria

  • Mesmo em código fechado, os usuários continuarão fazendo pedidos

Fica difícil quando bons contribuidores vão embora

  • Basta não aceitar outros contribuidores. Não há diferença entre open source e código fechado

É difícil aceitar o fato de que as pessoas trabalham sem remuneração

  • Software livre não significa necessariamente gratuito. Também existe software livre comercial, e você não precisa aceitar que outras pessoas trabalhem sem remuneração

Não é bom ter mais de 1000 issues em aberto

  • Basta fechar automaticamente

É difícil porque não tem fim

  • Ter usuários/clientes em código fechado é a mesma coisa