Joe Fay cobre a indústria de tecnologia há 30 anos e editou publicações em Londres e São Francisco. Ele também é analista colaborador da GigaOm.
Código em contexto: como a IA pode ajudar a melhorar nossa documentação
8 de abril de 2024Por que o Flux não está morrendo depois do Weaveworks
8 de abril de 2024PARIS — Quando a Cloud Native Computing Foundation anunciou novo suporte corporativo para FluxCD na KubeCon + CloudNativeCon Europe no mês passado, isso pareceu ilustrar exatamente o que a comunidade nativa da nuvem poderia alcançar quando se dedicasse a isso.
Pouco mais de um mês depois que a Weaveworks, a empresa onde o FluxCD foi desenvolvido e seu principal patrocinador, anunciou que estava encerrando as operações comerciais, os principais usuários da ferramenta GitOps afirmaram seu apoio e prometeram contribuições contínuas, com os principais mantenedores encontrando novos espaços, incluindo o ControlPlane.
Mas, apesar do final feliz, os esforços da CNCF também destacaram os riscos potenciais que os usuários enfrentam quando os projetos de código aberto são atingidos pelo inesperado. E o último ano viu muitos acontecimentos inesperados.
Apoiadores entusiastas do código aberto, como a Weaveworks, sofreram um clima de negócios mais difícil. Outros viram os investidores voltarem sua atenção para, bem, a IA. E empresas aparentemente de código aberto mudaram de licença, como é o caso da Redis, Buoyant ou HashiCorp.
Qualquer um ou todos esses cenários podem lançar um ponto de interrogação sobre o futuro de um projeto. Então, como um chefe de escritório de programa de código aberto ou gerente de engenharia navega nisso? E o que a comunidade de código aberto pode fazer para ajudar usuários e mantenedores?
Os gerentes de programas de código aberto em organizações de usuários finais tradicionalmente se concentram em questões como licenciamento, conformidade e segurança, disse Chris Aniszczyk, COO da CNCF, ao The New Stack.
Mas, disse ele, está cada vez mais claro que isso não é suficiente para avaliar a sustentabilidade dos projetos ou o risco que representam. E nada diz sobre a possibilidade de se tirar o tapete de um projecto, seja porque um projecto se tornou insustentável ou porque uma organização comercial decide alterar a licença.
Ele citou uma conversa recente com o chefe de código aberto de um banco, que disse que “o código aberto de um único fornecedor agora é basicamente um fator de risco”. Isso não significa que tais projetos devam ser evitados completamente, mas a falta de diversidade entre os mantenedores será outro sinal que os líderes e desenvolvedores abertos considerarão.
Como o CNCF preserva a escolha do usuário
Na mesma linha, a governança de um projeto torna-se importante. Se um projeto é hospedado por uma fundação, argumentou Aniszczyk, a base de mantenedores geralmente é mais diversificada e a licença fica com a fundação.
“Nada do tipo essencialmente puxar tapete é possível em terrenos de fundação”, disse ele. As fundações atuam como árbitros, acrescentou, garantindo condições de concorrência equitativas.
É significativo, observou Aniszczyk, que o CNCF suporte vários projetos na mesma área, o que ajuda a preservar a escolha do usuário.
Embora a CNCF tenha agido rapidamente na resolução da situação do Flux, Aniszczyk disse que a organização não tinha um processo formal para gerir tais situações.
No entanto, existe um processo da CNCF para arquivar um projeto que se tornou insalubre, disse. Ele citou o exemplo da RKT. O mecanismo de tempo de execução do contêiner foi doado ao CNCF pela CoreOS em 2017. Mas após a aquisição da CoreOS pela Red Hat em 2017, parecia que o projeto estava sendo despriorizado por seu novo proprietário.
“O que eventualmente foi notado pela comunidade foi que a RKT não estava fazendo lançamentos e respondendo a questões de segurança”, disse Aniszczyk. “Enorme bandeira vermelha.”
A CNCF abriu uma “questão pública” e trabalhou com a equipa da RKT, disse. O comitê de supervisão técnica “chegou à conclusão de que este projeto é realmente prejudicial à saúde e não há como realmente corrigi-lo, ninguém queria realmente intervir para fazê-lo. E então arquivamos e foi nosso primeiro projeto arquivado.”
No caso do Cortex, disse Aniszczyk, o resultado foi muito diferente. Grafana decidiu trocar de recursos, deixando o projeto, uma ferramenta de monitoramento de banco de dados de série temporal, exposto. Novamente, uma questão pública foi aberta, mas neste caso “AWS e Red Hat intensificaram e mantiveram o projeto em andamento”.
Quanto ao FluxCD, disse ele, já havia “alguma diversidade no projeto”.
O CEO da Weaveworks, Alexis Richardson, veio ao CNCF para explicar a situação comercial de sua empresa, mas também para garantir “que o Flux permaneça vibrante e saudável”, disse ele ao The New Stack algumas semanas antes da KubeCon. Ele também procurou descobrir se o ecossistema mais amplo da CNCF queria empregar os mantenedores do projeto.
“O GitLab também fez uma declaração pública de que o Flux era superimportante, eles teriam mantenedores lá”, disse Richardson. “Então o vácuo foi preenchido muito, muito rapidamente.”
É hora de uma abordagem mais formal para lidar com essas situações? A CNCF aprimorou seu processo, disse Aniszczyk: “Nosso conselho técnico abrirá uma verificação de saúde e solicitará comentários da comunidade”.
Então, “vamos expor isso ao nosso quadro e basicamente dizer: ‘Ei, alguém quer contribuir?’”
Há limites para essa abordagem, acrescentou. “Não posso dizer: ‘Ei, Oracle, você precisa contratar 10 mantenedores’”.
Seria difícil prever se uma empresa iria fechar no final do ano, disse ele. Mas poderia criar ferramentas que sinalizassem projetos com menos ou com um número decrescente de mantenedores.
A CNCF e a Linux Foundation estão construindo ferramentas internas para tornar essas métricas “um pouco mais disponíveis”, acrescentou.
Qual é a sua estratégia de gerenciamento de risco?
A rotatividade de mantenedores pode ser uma coisa boa por si só. Isso é algo que os usuários devem observar, sugeriu Richardson, mas não necessariamente porque é um mau sinal.
“Uma coisa que é sinal de um projeto saudável e de código aberto é que você pode ver os processos, a forma como funciona, a forma como os usuários o utilizam para representar um certo tipo de prática madura”, disse ele. “O que significa que as pessoas podem entrar e sair sem que tudo desmorone.”
O fato é que, para alguns fundadores de projetos, a diversão dos projetos pode acabar com o tempo, disse Richardson. “O que a CNCF não pode fazer por si só é agir como uma espécie de fiador de que um projeto permanecerá útil para sempre, ou de que seres humanos individuais trabalharão num projeto para sempre porque naturalmente as coisas mudam.”
Quando se trata de melhores práticas para garantir que os projetos permaneçam sustentáveis e estáveis, ele disse: “Acho que se for numa fundação, é melhor do que não estar numa fundação”.
Por um lado, isso significa que uma organização comercial não pode fazer uma isca e troca de licença. Além disso, disse ele, uma fundação como a CNCF terá regras e práticas de governança e melhores práticas de segurança, o que “significa que o software é provavelmente muito mais seguro do que apostar em projetos comerciais”.
Mas também vale a pena examinar os modelos de negócios dos principais financiadores de um projeto, disse Richardson. Estar excessivamente dependente de um pequeno número de grandes clientes pode representar um “risco de concentração”, o que, por sua vez, pode deixar os investidores de capital de risco nervosos e propensos a desligar a tomada.
“Se você quiser ter uma segunda regra de melhores práticas”, disse ele, “é possível provar que você tem clientes provenientes de produtos gratuitos para produtos pagos ou de seus principais projetos de código aberto aos quais você está apoiando. você é pago?
Ele também sugere considerar quem dará suporte ao produto em três anos, caso ele exija um patch. “Porque você não quer que seja um maluco que realmente não se importa com o código aberto. Porque posso prometer que essa pessoa, daqui a três anos, estará fazendo outro projeto.”
“Se você é um gerente de riscos de TI e está pensando em questões de aquisição, deveria estar se perguntando: ‘Qual é a minha estratégia de gerenciamento de riscos? Tenho todos os meus ovos na mesma cesta. Se eu fizer isso, pode estar tudo bem. Mas isso significa que pode exigir que eu tenha, digamos, uma gestão de risco mais ativa.”
Em última análise, a gestão de riscos será um desafio para qualquer líder de engenharia. “As empresas comerciais e o software falham o tempo todo”, observou Richardson. Mas o The New Stack não publica artigos sobre eles, “porque é apenas o curso normal dos negócios”.
Quanto ao Flux, Richardson disse: “O melhor aqui é que o Flux está agora em uso por tantas empresas e incorporado em tantos grandes fornecedores… Ele não vai desaparecer de jeito nenhum. E então tudo ficará absolutamente bem.”
YOUTUBE.COM/THENEWSTACK
A tecnologia avança rápido, não perca um episódio. Inscreva-se em nosso canal no YouTube para transmitir todos os nossos podcasts, entrevistas, demonstrações e muito mais.
SE INSCREVER