💸 Open source é movido a hobistas sem remuneração
Pesquisa mostra realidade dos mantenedores de projetos de código aberto. Mais: vaga mobile na BeTalent (sim, estamos contratando!), programando em C em JavaScript, Deno e um guia para TypeScript.
Talvez você se pergunte o que open source tem a ver com dinheiro: afinal, não é sinônimo de "gratuito"? Talvez também se pergunte o que leva batalhões de devs a codarem madrugadas afora por amor, propósito, aprendizado ou outros motivos, menos dinheiro.
O fato é que, não fosse o open source, muito da tecnologia atual — e mesmo grandes produtos de software pagos — não existiriam, porque dependem desse trabalho voluntário.
Tidelift, empresa focada na sustentabilidade e segurança desse ecossistema, realizou uma pesquisa que ajuda a entender melhor esse mundo. Há vários números interessantes. Vamos a eles:
60% dos mantenedores de projetos open source ainda não são pagos:
44% são hobistas não pagos que gostariam de ser remunerados;
16% são hobistas não pagos que não desejam remuneração.
Quem é pago faz mais melhorias em projetos, incluindo trabalho de segurança e manutenção:
83% dos mantenedores pagos podem dedicar mais tempo à manutenção de seus projetos;
64% podem trabalhar em novas issues.
Principais fontes de renda dos mantenedores são programas de doação e empregadores:
25% recebem de programas de doação como GitHub Sponsors (iniciativa que permite a usuários apoiar financeiramente devs e mantenedores de projetos open source por meio do GitHub);
24% recebem salário de empregadores para manutenção de projetos.
Um sinal dos tempos, mantenedores estão gastando 3x mais tempo em segurança do que anos atrás:
em 2024, 11% do tempo tem sido gasto em trabalho de segurança, comparado a 4% em 2021;
em comparação, o tempo gasto em manutenção diária caiu de 53% para 50% no mesmo período.
Mantenedores pagos implementam mais práticas críticas de segurança do que não pagos:
pagos são 8 a 26 pontos percentuais mais propensos a implementar práticas de segurança;
66% dos mantenedores pagos têm um plano de divulgação de segurança, comparado a 43% dos não pagos.
Mantenedores pagos fazem mais trabalho de manutenção e documentação do que mantenedores não pagos:
53% dos mantenedores pagos têm um processo de revisão de código por pares, comparado a 27% dos não pagos;
74% dos mantenedores pagos publicam um guia para contribuidores, comparado a 52% dos não pagos;
Quase metade dos mantenedores se sente subvalorizada 😬:
48% se sentem subvalorizados ou acham o trabalho ingrato;
50% sentem que não são compensados financeiramente o suficiente ou de forma alguma.
Após o hack do XZ Utils, 2/3 dos mantenedores estão menos confiantes em relação a colaboradores, com 66% menos dispostos a confiar em pull requests de não mantenedores.
Ferramentas de codificação baseadas em IA estão prosperando, mas mantenedores têm preocupações sobre o impacto:
45% preveem impacto negativo destas ferramentas em seu trabalho;
64% estariam menos dispostos a revisar e aceitar contribuições que sabem terem sido produzidas usando IA.
Mais jovens têm probabilidade significativamente maior de usar ferramentas de codificação baseadas em IA:
71% dos mantenedores com menos de 26 anos usam ferramentas de IA pelo menos ocasionalmente;
o número cai para 39% para mantenedores entre 36 e 45 anos.
A comunidade de mantenedores de open source está envelhecendo, com menos jovens entrando:
a porcentagem de mantenedores com 46 a 65 anos dobrou desde 2021 (de 11% para 21%);
já a porcentagem de mantenedores com menos de 26 anos caiu de 25% em 2021 para 10% em 2024.
Se você se pergunta quem desenvolve open source pagando devs, Node.js é um exemplo. É desenvolvido por mantenedores pagos pela OpenJS Foundation, além de voluntários. Linux é outro caso. A Linux Foundation gerencia fundos para desenvolvimento do kernel, além de pagar Linus Torvalds para liderar o projeto, enquanto empresas como Red Hat, Intel, IBM e Google — que dependem do Linux – empregam devs em tempo integral para melhorar o sistema.
A pesquisa da Tidelift foi feita em meados deste ano com mais de 400 mantenedores de projetos. A íntegra, que conta com gráficos e a charge que ilustra esta edição, pode ser conferida no The 2024 Tidelift state of the open source maintainer report.
⁉️ Quer ser um desenvolvedor mobile na BeTalent ou conhece quem queira?
Você não leu errado. Esta edição não tem uma pergunta teórica. A BeTalent está com vaga aberta a desenvolvedores mobile. Os requisitos são simples: ter uma base em programação, saber codar em React Native ou Flutter — se souber os dois, melhor ainda! — e muita vontade de trabalhar em um ambiente colaborativo, 100% remoto, com desafios que irão alavancar sua carreira. Tem interesse ou conhece quem tenha? Inscreva-se neste form. As inscrições vão de 21/09/2024, às 9h, até 30/09/2024, às 23h55, podendo ser prorrogadas. Mas não deixe para a última hora. Torcemos para que você esteja conosco, na BeTalent, em breve!
🔄 Que tal programar em C em JavaScript?
Bun v1.1.28, o caçula dos runtimes JavaScript, trouxe uma inovação interessante: a capacidade de compilar e executar código C nativo diretamente do JS. A funcionalidade, ainda experimental, promete superar limitações das abordagens N-API e WebAssembly, por meio de compilação rápida (em milissegundos). Ideal para integrar bibliotecas de sistema ou para otimizar partes críticas de aplicações, a nova feature abre possibilidades como converter vídeos com ffmpeg 3x mais rápido ou acessar APIs nativas como o Keychain do macOS, por exemplo. Embora não seja recomendada para projetos C extensos, a solução simplifica a ponte entre alto e baixo nível em JS. Mais sobre aqui.
📺 Documentário sobre Deno, o "Node" ao contrário
Deno é outro runtime JavaScript, criado por Ryan Dahl e Bert Belder (os criadores do Node.js) como uma forma de corrigir erros do passado. O canal Honeypot, no Youtube, lançou agora em setembro um documentário com os dois, Dahl e Belder, contando a história da ferramenta. O vídeo explora as origens do Deno, suas diferenças em relação ao Node.js e as lições aprendidas durante seu desenvolvimento. Com depoimentos dos próprios criadores, oferece insights e uma visão sobre o futuro dos runtimes e de JavaScript. O vídeo pode ser assistido aqui — e, aproveitando, a release candidate do Deno 2.0 acabou de sair.
🍲 Libs HTTP Node.js para todos os gostos
E para não deixar de falar do Node.js, o ecossistema oferece uma variedade de bibliotecas HTTP, cada uma suas aptidções. Desde a API Fetch nativa, estável no Node.js 21, até soluções de terceiros como Axios, Got, Ky e SuperAgent, há opções para todos os níveis de complexidade. API Fetch brilha pela simplicidade, Axios se destaca pela API intuitiva, Got oferece controle sobre timeouts, Ky simplifica a API Fetch e SuperAgent chama atenção por uma API encadeável. Cada lib tem pontos fortes em áreas como manipulação de JSON, hooks de request/response e eventos. Esse artigo ajuda a entender mais e escolher a ferramenta para cada projeto.
🤷 Giro da IA: IA eleitoral que vota no Mickey, energia nuclear para treinar modelos e "aulão"
No giro da IA, dois universitários dos EUA que abandonaram a faculdade conduziram uma pesquisa eleitoral que previu com precisão uma votação para primárias democratas. A receita? Perguntaram a milhares de chatbots, que acompanham fatos políticos, quais candidatos preferiam. A ideia deu origem à Aaru, startup que quer inovar em pesquisas eleitorais. O mais engraçado é que, nos experimentos, um agente de IA disse que votaria no Mickey para presidente. Não era alucinação: ele justificou que odiava Trump e Kamala. Mais da IA: a Microsoft quer reativar a usina nuclear Three Mile Island para ter energia suficiente para treinar modelos de IA cada vez mais poderosos. E, aqui, uma entrevista (longa) que ajuda a refrescar a memória sobre como IAs funcionam de fato.
📚 Aprendendo a aprender TypeScript
Não sabe como aprender TypeScript? Este guia do Frontend Masters oferece uma visão abrangente para iniciantes, desde conhecimentos prévios necessários até obstáculos comuns e casos de uso principais. O texto destaca a importância do TypeScript no desenvolvimento profissional de software e explica seu sistema de tipos e compilador. Também fornece uma estrutura de aprendizado em três etapas, com recursos gratuitos e pagos, além de responder perguntas frequentes sobre a relação entre JavaScript e TypeScript. Uma boa introdução ao assunto.
Obrigado por ler!
Voltaremos com mais fatos, tendências e dicas na próxima semana. Curta, compartilhe, comente e vote na enquete. Obrigado por ler e por estar com a BeTalent!