O OpenSource possui um problema: Financiamento

Problemas recentes mostram a fragilidade do modelo OpenSource quando é usado por grandes companhias para lucrar, sem qualquer financiamento.


| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. 
Mais detalhes clicando aqui.


Nota: Este artigo possui caráter pessoal e é de cunho informativo porém também opinativo. Peço discrição ao lê-lo.

1. Introdução

O Linux não é o único projeto de código aberto que sustenta a internet como a conhecemos, mas é de longe o principal, com o conjunto padrão de servidor LAMP: Linux, Apache, MySQL e PHP, sendo todos estes projetos de código aberto, também.

E ainda temos outro fato, de que hoje em dia, há toneladas de novas tecnologias sendo usadas para substituir esses vários componentes citados; mas a maioria deles é de código aberto também. Com o surgimento do Node Package Manager (NPM) por exemplo, ficou mais fácil do que nunca acessar centenas de milhares de bibliotecas para seus projetos, a maioria deles de código aberto.

Salientando que os números de download do NPM não são bons indicadores de popularidade, com o caso de uso comum do NPM sendo enviar seu arquivo package.json para produção e permitir que seus servidores de produção baixem os pacotes NPM que você precisa. Como resultado, um usuário com alguns milhares de servidores que enviar atualizações várias vezes ao dia pode facilmente adicionar 100K ao contador de downloads em menos de um ano.

Um exemplo prático é o log4j. É uma das bibliotecas de log mais populares usadas online. Ele oferece aos desenvolvedores de software uma maneira de criar um registro das atividades e ser usado para qualquer coisa, desde solução de problemas até auditoria, rastreamento de dados, etc. Empresas como Apple, IBM, Oracle, Cisco, Google e Amazon, todos usam o Log4j.

2. Problemas

Tudo as mil maravilhas, exceto que ESTA biblioteca tinha uma enorme vulnerabilidade que afetou quase toda a internet alguns meses atrás.

Outro problema recente com um resultado muito diferente foi com a biblioteca COLORS,muito popular dentre as bibliotecas e o “faker”. A “Colors” permite aos usuários “obter cor e estilo em seu console node.js”. Ele foi baixado mais de 23 milhões de vezes por semana e tem quase 19.000 projetos que dependem dele.

Já o “Faker”, cria dados falsos e realistas para fins de testes e foi baixado mais de 2,4 milhões de vezes por semana e tem mais de 2.500 projetos dependendo dele.

Exceto que seu desenvolvedor se cansou de ter projetos super bem sucedidos que não renderam nenhum dinheiro, e foram usados ​​por empresas da Fortune 500, então um dia, ele decidiu enviar uma atualização que interrompeu a saída de ambas as bibliotecas, tanto a faker, quanto a colors!

2.1 Conceito

Aqui entram alguns contrapontos:

  • Primeiro, teria sido mais fácil identificar o problema no log4j se as empresas que usaram essa biblioteca tivessem implementado um processo de revisão de código para o código-fonte aberto que desejam usar e talvez contribuíssem para melhorar esse código.
  • Em segundo lugar, se as empresas decidissem que iriam fazer seu trabalho depender de projetos menores de código aberto, uma contribuição monetária não seria uma má ideia.

O modelo atual, aonde gigantes da internet baseiam suas próprias ideias e projetos nos ombros de voluntários não remunerados, e esperando que tudo isso funcione perfeitamente sem nunca contribuir para isso seja com código ou dinheiro, não é algo sustentável.

E a consequência disso?

3. Consequências

À medida que um projeto é usado por empresas maiores, ele se torna obviamente um alvo para hackers, dificultando garantir que esse código seja seguro, o que pode se tornar um trabalho em tempo integral, que ninguém deveria esperar que um voluntário não remunerado faça. – Mas as grandes empresas infelizmente esperam que isso ocorra.

3.1 Free and Open

Muitas pessoas assumem que o código aberto, ou software livre, é gratuito, mas, embora geralmente seja o caso, não é uma obrigação. Isso acaba em um paradoxo: software voltado para o usuário que tem uma interface e é usado por usuários comuns tende a ter acesso mais fácil a financiamento do que as bibliotecas do lado servidor, que são usadas por empresas gigantes que faturam bilhões a cada ano.

E ninguém escapa disso! A Google®, o Facebook®, a Microsoft®, a Sony®, Intel®, diversas empresas até colaboram com código OpenSource e melhoram o código existente, porém há empresas que só pegam o código pronto no GitHub e usa, sem devolver contribuição, seja com código, seja com dinheiro.

Isso ocorre porque os usuários básicos perderão mais facilmente seu dinheiro, um dólar de cada vez, do que uma empresa que realmente não sabe o que usa para fazer suas próprias coisas funcionarem.

Em várias situações, um desenvolvedor remunerado que trabalha para uma empresa vai optar por usar um código open source porque ele é ágil, fácil e gratuito; mas a empresa em si sequer sabe que aquele código foi usado! As vezes nem há esse controle.

Isso espanta ainda mais a possibilidade de que grandes empresas colaborem com o OpenSource, caindo num outro paradoxo: Se o desenvolvedor insistir em doar para o projeto de código aberto, a empresa pode simplesmente contextualizar e optar por pagar a este desenvolvedor de carteira assinada que desenvolva uma nova solução, deixando o projeto anterior de código aberto, de lado, sem uso.

E isso nos leva ao segundo ponto importante:

A internet moderna é fortemente dependente de software livre e de código aberto.

Como mostra uma antiga piada da página de humor xkcd, muito desses grandes projetos no ar hoje em dia são sustentados por pequenos desenvolvedores não remunerados que apenas programam nos fins de semana e outros horários de folga.

O resultado disso é um modelo que não se sustenta.

4. Empresas FOSS

Para que esse modelo FOSS mencionado se sustente, temos situações onde uma empresa específica é fundada e sustentada por patrocínio, desenvolvimento e até donativos; mas com o objetivo de unificar e manter projetos ou códigos.

Empresas como Red Hat, Canonical e até mesmo a Suse são necessárias para o todo. Sua capacidade de aumentar a adoção e gerar receita em torno do FOSS é essencial, pois fornece o capital para investir em desenvolvimento e o incentivo financeiro para reter os melhores desenvolvedores. Quanto mais os apoiarmos, mais eles poderão apoiar o FOSS.

Dessa forma o modelo se torna economicamente sustentável, com a empresa garantindo um produto sóbrio para o mercado, porém ainda não diria ser o ideal porque vários desenvolvedores menores não vão receber a fatia merecida de seus códigos depois que a empresa pega o código – livre e gratuito – e passa a mantê-lo, relançando-o em novas versões específicas de seus sistemas.

5. O Dinheiro

Essa controvérsia surge tanto de pessoas de dentro quanto de fora da comunidade de código aberto. Como podemos esperar que pessoas de fora da comunidade levem o OpenSource a sério se a comunidade FOSS pensa que FOSS é apenas grátis?

Sempre que um projeto tenta incorporar qualquer forma de monetização, eles encontram grande resistência de dentro da comunidade com respostas como “como eles ousam me cobrar por isso”. A ironia é que essas pessoas vão caluniar o software proprietário, mas economicamente é isso que faz com que os desenvolvedores de código aberto se sustentem.

A maior parte da contribuição real do trabalho vem do código aberto. A maior parte da contribuição econômica vem de tecnologia proprietária. O que torna ambos interdependentes um do outro. E as pessoas que pensam que os desenvolvedores de software de código aberto não precisam de dinheiro são as piores.

É por isso que precisamos de um meio-termo…

6. Conclusão

Sob a ótica de um profissional de segurança digital, existem ações pertinentes que ajudam a prevenir situações como as relatadas.

Qualquer departamento de TI de uma grande empresa legítima deve ter conhecimento e documentação mostrando quais softwares, bibliotecas e dispositivos de hardware são usados ​​em sua infraestrutura. Dessa forma você deve adotar aquelas soluções FOSS que possuem um respaldo maior da comunidade – e se possível, contribuir financeiramente pra essas soluções – enquanto que, se for utilizar algum projeto mantido por uma comunidade pequena, ou mesmo por apenas por poucos indivíduos, é interessante que se separe caixa para ajudar com donativos.

Afinal, não existe almoço grátis e mesmo um projeto FOSS requer dinheiro para ser mantido! Pense bem nos desenvolvedores que usam seu tempo livre desenvolvendo algo de graça para muita gente, sem ganhar 1 centavo por isso.

Não digo que você tenha uma obrigação moral de doar para todos aqueles cujo código aberto você utiliza – seria algo que provavelmente vá beirar o valor de uma licença do Windows® – mas pelo menos para alguns dentre aqueles que fazem a diferença no seu dia a dia, como a comunidade da distro Linux que você utiliza, do navegador, do editor de imagens, etc.

Qualquer 5 reais que forem doados farão a diferença!

E você? O que pensa a respeito da forma como o Software OpenSource é tratado pela “comunidade empresarial”? Qual sua opinião sobre o modelo de negócios atualmente adotado? Como ajudaria a reduzir os problemas que a situação causa?
Deixe nos comentários!

Fonte: The Linux Experiment

Deixe um comentário