paint-brush
Tendências de desenvolvedores do Technology Radar 27 da Thoughtworkspor@ChrisChinchilla
1,807 leituras
1,807 leituras

Tendências de desenvolvedores do Technology Radar 27 da Thoughtworks

por Chris Chinchilla4m2022/11/15
Read on Terminal Reader
Read this story w/o Javascript

Muito longo; Para ler

O Technology Radar da Thoughtworks é um momento regular para dar uma olhada no que os especialistas acham que pode ser a próxima onda de ferramentas, práticas e tecnologias a considerar ou parar de usar. A versão 27 do radar já está disponível e dá continuidade a algumas tendências que o radar vem seguindo há algum tempo, como “plataforma como serviço” ou formas de programação em grupo. Este resumo está longe de ser abrangente, mas apenas os pontinhos que me atraíram ou que podem atrair você.
featured image - Tendências de desenvolvedores do Technology Radar 27 da Thoughtworks
Chris Chinchilla HackerNoon profile picture

O Technology Radar da Thoughtworks é um momento regular para dar uma olhada no que especialistas experientes do setor acham que pode ser a próxima onda de ferramentas, práticas e tecnologias a serem consideradas ou paradas de uso.


Sempre espero adicionar muitos novos “blips” à minha lista ou ver quais estão crescendo em adoção desde a última vez que você deu uma olhada.


A versão 27 já está disponível e dá continuidade a algumas tendências que o radar já vinha seguindo há algum tempo, como “plataforma como serviço” ou formas de programação em grupo. Este resumo está longe de ser abrangente, mas apenas os pontinhos que me atraíram ou que, pensei, podem atrair você.


Se algum deles despertar o seu interesse, ou se você tiver uma opinião sobre qualquer coisa que destaquei, vá até o seu perfil e avise nossos leitores !

Integração do aprendizado de máquina

Realmente parece que nos últimos 6 meses ou mais, o aprendizado de máquina passou de algo com o qual apenas desenvolvedores e cientistas de dados interagiam para algo que o público conhecia.


Houve anúncio após anúncio de outra ferramenta baseada em ML ou IA que cuspiu algum tipo de mídia depois que você colocou algo nela, e fomos inundados com milhares de imagens e vídeos de aparência estranha de celebridades.


Isso também significa que os desenvolvedores interessados em experimentar o ML também têm muito mais recursos disponíveis na forma de conjuntos de dados e estruturas para usar esses conjuntos de dados.


De relevância para os desenvolvedores experimentais é o TinyML , um campo de aprendizado de máquina que permite uma variedade de casos de uso sempre ativos e visa dispositivos operados por bateria.


Outro é o recurso de armazenamento , um método para criar pipelines de ML que pode ser mais familiar para desenvolvedores de outras origens.


Este radar também cobriu ferramentas relacionadas a ML para melhorar a experiência do desenvolvedor de modelos de construção e treinamento, por exemplo, a prática de “aprendizagem de máquina federada” para agregar dados de modelo em máquinas para processamento ou dados sintéticos para teste de modelo inicial.

Observabilidade Contínua

Apesar de ser um termo relativamente novo, “observabilidade” cresceu rapidamente de uma coleção solta de práticas e padrões para construir uma imagem melhor de um sistema em execução para se tornar um termo mais amplo para significar, bem, para significar todos os tipos de coisas.


A última área do fluxo de trabalho do desenvolvedor a receber insights é aquela que me surpreendeu por ter demorado tanto, observabilidade para integração contínua e pipelines de entrega.


Embora o CI e o CD certamente tragam benefícios, os processos frequentemente dão errado com muito pouco insight sobre o que até você tentar, tente novamente.


Agora, um punhado de fornecedores existentes de observabilidade e projetos de código aberto estão trazendo visualizações no estilo de rastreamento de processos contínuos para ajudá-lo a depurar o que estava acontecendo.

Lista de materiais de software

À medida que os desenvolvedores se apoiam cada vez mais em contêineres e pacotes semi-anônimos para seu trabalho, aqueles focados em segurança e legalidades olhavam e se perguntavam: “confiamos nisso?”.


Essa preocupação levou a uma corrida para padronizar e normalizar (principalmente nas empresas) uma “lista de materiais de software”, muitas vezes referida pelo acrônimo cômico, SBOMs.


Embora, em teoria, “qualquer um” possa se aprofundar em um projeto de código aberto e ver quais são seus componentes, geralmente é mais fácil dizer do que fazer e não é possível com projetos de código fechado.


Vulnerabilidades recentes de alto perfil em software revelaram como pequenas dependências podem trazer problemas tão grandes. Embora os SBOMs possam ajudar bastante, imagino quantas empresas desejarão revelar seu funcionamento interno e ser honestas sobre elas.

Codificação sustentável

Este é um tópico que me inspirou a abordar depois de falar com alguém da Thoughtworks sobre sua ferramenta de pegada de nuvem de carbono.


A tendência de lançar infinitamente novas estruturas, ferramentas e estruturas de nuvem em um problema levou muitos de nós a esquecer que todas essas linhas de código realmente são executadas em algum lugar.


E isso leva a emissões de carbono. Água motivada por razões altruístas ou financeiras, e uma recessão ecumênica leva a economia de custos, este é um tema que mais se fala e se pensa.


Intimamente relacionado ao custo ambiental dos projetos e sua infraestrutura, e uma opção que vi usada pelas equipes de produção é o infracost, que estima o impacto no custo das alterações feitas nas definições do Terraform.

Responsabilidades como Código

Qualquer empresa SaaS define indicadores de nível de serviço (SLIs) e objetivos de nível de serviço (SLOs) que seus clientes podem esperar.


No entanto, a forma como as empresas os definiram costuma ser um pouco aleatória e fora do padrão, e com tantas outras definições definidas em pipelines codificados, por que não esse componente fundamental também?


Vários provedores de observabilidade agora oferecem essa opção e, claro, um grupo de pessoas iniciou um padrão, OpenSLO .

Um Não ao Nó

Eu me envolvo com JavaScript e TypeScript e notei recentemente um punhado de alternativas de tempo de execução emergentes para o Node. Não tenho certeza do que há de errado com o Node, além de ser bastante antigo agora, para justificar alternativas, mas acho que a concorrência é boa 🤷‍♂️?


Bun é uma alternativa mais recente que experimentei há alguns meses e admito que não tinha muita certeza dos benefícios que isso me trouxe, mas usa o JavaScriptCore do WebKit em vez do mecanismo V8 do Chrome.


Mais uma vez, a variedade não é uma coisa ruim. Bun é escrito em Zig , do qual eu nunca tinha ouvido falar antes, e afirma ser um substituto C/C++ “drop-in”.


O que leva bem a…

C++

Se Zig, Rust e outras linguagens servirem de referência, muitas pessoas acham que o C++ precisa de um substituto mais moderno. O Google lançou outra opção na lista de concorrentes do Carbon .


A linguagem ainda está em estágio experimental, mas afirma ser mais fácil de entender e integrar. O Google tem a tendência de criar muitos projetos experimentais e depois descartá-los novamente, então a sugestão da Thoughtworks atualmente é “esperar para ver”.