Como sair da complexidade do Kubernetes com Kamal
10 de fevereiro de 2024Apache Flink: retrospectiva de 2023 e vislumbre do futuro
13 de fevereiro de 2024APIs podem parecer mágica — a menos que você seja um desenvolvedor. Para os desenvolvedores, as APIs exigem muito trabalho para fazer a tecnologia parecer mágica.
Em uma pesquisa, a Nylas, que oferece APIs e ferramentas de desenvolvimento para construir e integrar funcionalidades de e-mail, calendário e contato em aplicativos e software, descobriu que os desenvolvedores passam muito tempo lidando com APIs. A empresa entrevistou 1.200 desenvolvedores industriais, líderes de engenharia e executivos técnicos nos Estados Unidos, com cerca de 60% das respostas provenientes de desenvolvedores. Dos entrevistados, 73% disseram que gastam até cinco horas por semana na manutenção da API e na resolução de bugs. Apenas 23% dos entrevistados disseram que experimentam consistentemente um forte desempenho de API.
Embora as APIs devessem facilitar a integração, 64% disseram que a integração de novas APIs em sua pilha de tecnologia existente é um obstáculo e um desafio significativo.
“É aqui que os guias de início rápido, SDKs e suporte podem ser fundamentais para remover atritos em todo o processo de integração e permitir que os desenvolvedores construam com mais rapidez”, observou o relatório.
A pesquisa também analisou quanto código eles estão escrevendo com ou sem APIs, sendo a teoria que este é um bom indicador de uma experiência positiva do desenvolvedor. Descobriu-se que, embora 80% afirmassem que esperavam escrever pelo menos 500 linhas de código sem API, 41% previram que ainda escreveriam pelo menos 500 linhas de código com uma API.
Nylas concluiu que há quatro pilares que devem constituir uma API moderna:
- Desempenho
- Experiência do desenvolvedor
- Segurança
- Inteligência
A Nylas construiu a versão mais recente de sua API, a Nylas API versão 3, com esses quatro fatores em mente, de acordo com Isaac Nassimi, vice-presidente sênior de produto da Nylas. Tudo começou com desempenho e latência.
Lidando com o desempenho da API no frontend
“Como desenvolvedor, você deve considerar a latência muito difícil ao usar uma API pela primeira vez, porque desligar é difícil”, disse Nassimi. “Também está fora de seu controle, uma vez que você realmente decidiu usar a empresa. O grande problema é que há um certo limite de latência que os usuários aceitam e, assim que você ultrapassa esse limite, você obtém um comportamento muito estranho dos usuários.”
Esse comportamento é particularmente problemático para o frontend, onde os usuários começam a realizar ações imprevisíveis, como clicar em atualizar, pressionar o botão Voltar, fechar abas, clicar em spam, bater no teclado ou abandonar o site completamente. A única solução quando uma API estiver implementada é colocar algo na UX para ajudar o usuário a saber o que está acontecendo, como carregar barras. Mesmo barras de carregamento sintéticas, onde o desenvolvedor apenas assume quanto tempo levará e cria uma barra de carregamento de acordo, é melhor do que apenas deixar o usuário experimentar o tempo de processamento”, disse ele.
“Como desenvolvedor, isso é ainda mais difícil de codificar, porque você fica preso a essas condições que podem colocar dados e contas em estados muito estranhos. A comunicação com o usuário é como você contorna isso. Mas a melhor solução é não escolher uma API que terá muita latência.”
Em última análise, porém, é melhor que a API funcione como deveria, o que levou Nylas a resolver problemas de latência em sua API atualizada. Normalmente, os desenvolvedores de seus clientes enfrentam latência ao conectar uma conta de e-mail e calendário, pois a API aguarda a sincronização com um sistema CRM e o e-mail do usuário.
“Os desenvolvedores fazem a integração, mas depois precisam criar estados de carregamento intermediários e coisas para poder verificar se a sincronização foi concluída e intersticiais que podem mostrar ao usuário para que ele goste. ‘Ei, ainda estamos pegando suas coisas’”, disse Nassimi. “O Nylas v3, que estamos construindo há alguns anos e estamos lançando – tudo isso acabou. Como desenvolvedor, só preciso integrar os endpoints e sei que os dados já estão lá, então não preciso fazer todo esse trabalho para lidar com esses estados intermediários.”
A latência aprimorada é “quase instantânea”, disse ele. Nylas reconstruiu a API para ter integrações de provedores de e-mail de primeira classe, disse ele, de modo que os dados sejam enviados instantaneamente, em vez de serem replicados por Nylas, disse ele.
“Você verá todas as APIs avançarem nessa direção nos próximos anos”, disse ele.
“Ainda fazemos muitos segredos mágicos nos bastidores, mas no geral, a coisa mais importante a lembrar é que estamos apenas passando esse pedido direto para a fonte da verdade”, acrescentou.
APIs mais inteligentes
Uma adição que Nylas previu é que as APIs precisarão ser “mais inteligentes”. A inteligência pode ser adicionada por meio de análise de dados, análise preditiva e o que Nylas chama de composição inteligente, que dá aos desenvolvedores a capacidade de usar qualquer GPT que desejarem.
A inteligência pode aliviar os desenvolvedores e reduzir seu volume de codificação, disse Nassimi.
“O que considero verdadeira inteligência é quando você usa essas ferramentas para poder dar aos usuários coisas que eles nem sabiam que queriam, mas assim que veem, eles dizem: ‘Sim, preciso colocar isso no meu plataforma’”, disse ele.
“O que estamos procurando são coisas como análise, então veja, você tem muitos dados de e-mail passando pelo seu sistema. Claro, nós fornecemos os e-mails, mas também podemos fornecer o que está nos e-mails. Alguém compra alguma coisa, bom, podemos te dar os dados que estão naquele recibo, podemos te dizer o que ele pediu e te dar as imagens das coisas que ele pediu. Podemos retirá-los para você de uma forma estruturada.”
Segurança e melhor experiência do desenvolvedor
As APIs modernas também devem abordar a segurança, especialmente porque as violações de API são “extremamente prevalentes”, acrescentou.
“Algumas coisas são realmente o que determinam a sua segurança”, explicou Nassimi. “Obviamente, existe o código que você escreve, mas também existem os processos que você implementa e as operações – essencialmente, quão bem você mantém esses processos. Internamente, sua cultura vai realmente definir o quão bem você faz essas três coisas.”
Nylas tem o hábito de tratar os dados dos clientes com uma certa “santidade”, acrescentou Nassimi.
“Nunca, em meu tempo aqui, vi um e-mail de cliente ou qualquer dado realmente verdadeiro do cliente, o que, francamente, estou surpreso”, disse ele. “Também temos muitos clientes que nos ajudaram a garantir que estamos no nível mais alto, certo? Temos bancos, temos empresas médicas entrando e elas têm os limites mais altos que precisamos superar”.
É fácil esquecer a segurança – até que um desenvolvedor veja os efeitos de negligenciá-la, disse ele.
“Então, para o resto de suas vidas, é uma prioridade bastante alta”, disse Nassimi.
Por fim, a Nylas priorizou a experiência dos desenvolvedores em seus requisitos de API modernos. Como todos os clientes da Nylas acabam criando integrações de front-end, uma maneira pela qual a Nylas melhorou a experiência do desenvolvedor é fornecendo componentes para o front-end que fornecem uma visualização de e-mail ou visualização de conversa acumulada. Eles também oferecem um agendador para que os desenvolvedores possam integrar uma experiência semelhante ao Calendly em seus aplicativos, disse Nassimi.
A postagem Dev Tool Creator Nylas sobre os 4 pilares das APIs modernas apareceu pela primeira vez em The New Stack.