Firebase Authentication M2M Parte 1

Esse artigo trata de como fazer a autenticação usando o Firebase Authentication porém entre duas máquinas, entre um Client e API, por exemplo.

Recentemente, surgiu a necessidade de desenvolver uma aplicação na qual um cliente precisaria acessar determinados endpoints de uma API. A abordagem mais comum e prática para esse tipo de cenário seria utilizar um client ID e um client secret, enviados via header, validados no backend e utilizados para gerar um token JWT responsável pela autorização das requisições.

O desafio, porém, foi implementar esse fluxo utilizando usuários do Firebase Authentication. Embora o Google Cloud Platform ofereça mecanismos de autenticação para seus próprios recursos, esses não se aplicam diretamente a aplicações customizadas. Diante dessa limitação, optei por construir uma solução própria, utilizando o Firebase Authentication em conjunto com o Firebase Realtime Database para viabilizar a autenticação entre cliente e API.

Continue reading →

Palestra interna Firebase/Orbia

No dia 2 de novembro, participei de um meetup interno promovido pela empresa onde trabalho, no qual tive a oportunidade de apresentar os recursos do Firebase e um pouco mais do GCP. Como atualmente utilizamos o Firebase Authentication como provedor de autenticação dos nossos usuários, surgiu o interesse em conhecer melhor essa ferramenta que já faz parte do nosso dia a dia.

Dessa forma, realizei uma palestra passando por cada um dos principais recursos que o Firebase oferece, demonstrando, de maneira prática, como cada um deles pode ser aplicado dentro da nossa organização.

Os principais destaques ficaram, naturalmente, para o Firebase Authentication*. Em especial, o recurso de login anônimo despertou bastante curiosidade, já que destaquei a possibilidade de começarmos a coletar informações sobre determinados usuários desde o primeiro acesso, oferecendo recomendações personalizadas e enviando dados ao Analytics — o que deixou o time de marketing bastante entusiasmado.

Falando em Analytics, essa foi outra ferramenta que agradou muito ao marketing, principalmente pela facilidade de integração com outros recursos do Firebase, o que promete simplificar bastante os processos do time.

A equipe de Dados se interessou especialmente pela possibilidade de exportação facilitada das informações para o BigQuery, algo que, em outras plataformas, não costuma ser tão simples.

Os desenvolvedores, eu confesso, já estavam conquistados. Ainda assim, aproveitei a palestra para comentar sobre o uso do Crashlytics, inclusive a possibilidade de utilizá-lo também em aplicações web, que virá em futuros releases do recurso, o que gerou uma reação bastante positiva.

O que posso dizer sobre esse trabalho que venho desenvolvendo é que, há alguns meses, a empresa estava prestes a sair completamente do GCP. Não teríamos mais nenhum projeto na Google Cloud. No entanto, com a adoção do Firebase Authentication, a integração do Firebase Realtime Database e a perspectiva de uso de outros recursos, hoje já contamos com três novos projetos criados para atender novas demandas.

Fico muito feliz por ver esse resultado e por ter conseguido transmitir a confiança necessária para que a empresa tomasse a decisão de não abandonar o ecossistema GCP/Firebase 💙

O próximo passo? Flutter, mas isso fica para o ano que vem. 😊

*Ele foi escolhido depois de pesquisarmos outros e avaliarmos os riscos, além do fator de conhecimento técnico envolvido, no caso eu tinha muito mais conhecimento do Firebase

GCP vs AWS

Google Cloud Platform

O Google Cloud Platform (GCP) oferece uma série de vantagens distintas em relação à Amazon Web Services (AWS), tornando-o uma escolha atraente para muitas empresas. Aqui estão algumas das principais vantagens do Google Cloud Platform sobre a AWS:

  1. Inovação em tecnologia: O Google é conhecido por sua forte ênfase em inovação, e o GCP reflete isso. Ele oferece recursos de última geração, como aprendizado de máquina avançado, análise de dados em tempo real e processamento de imagens, impulsionados por tecnologias como TensorFlow e BigQuery.
  2. Escalabilidade e desempenho: O GCP possui uma infraestrutura altamente escalável, permitindo que as empresas aumentem ou diminuam seus recursos de acordo com as necessidades. Além disso, o GCP possui uma rede global de data centers, o que significa que os aplicativos e serviços executados na plataforma podem se beneficiar de baixa latência e alto desempenho em todo o mundo.
  3. Preços competitivos: O GCP tem uma estrutura de preços competitiva em relação à AWS. Além disso, o Google oferece descontos significativos em instâncias de longa duração e opções de uso sustentado, ajudando as empresas a reduzirem seus custos operacionais.
  4. Ferramentas de gerenciamento intuitivas: O Google Cloud Console fornece uma interface de usuário intuitiva e fácil de usar, permitindo que os usuários gerenciem e monitorem facilmente seus recursos na nuvem. Além disso, o GCP oferece poderosas ferramentas de automação e orquestração, como o Kubernetes Engine, para facilitar o gerenciamento de contêineres.
  5. Foco em dados e análises: O GCP possui uma ampla gama de serviços e ferramentas para processamento de dados e análises, como o BigQuery, Dataflow e Pub/Sub. Essas soluções permitem que as empresas extraiam insights valiosos de seus dados e tomem decisões mais informadas.
  6. Ecossistema aberto e colaborativo: O GCP adota uma abordagem aberta e oferece suporte a várias tecnologias e linguagens de programação populares, permitindo que as empresas aproveitem suas ferramentas e frameworks existentes. Além disso, o Google é conhecido por seu apoio ativo à comunidade de desenvolvedores, facilitando a colaboração e a troca de conhecimentos.
Continue reading →

Um Pouco sobre a API PaLM-2

A API PaLM é uma oferta de desenvolvimento que permite acessar as capacidades avançadas dos grandes modelos de linguagem do Google, como o PaLM 2. Você pode usá-la para construir aplicações de IA gerativa para casos de uso como geração de conteúdo, agentes de diálogo, sumarização, classificação e muito mais

Algumas das vantagens da API PaLM são:

  • Ela oferece um desempenho rápido e eficiente, com velocidades de até 75+ tokens por segundo e uma janela de contexto de 8.000 tokens, podendo lidar com prompts e instruções complexas rapidamente
  • Ela é integrada com ferramentas do Google que você já usa, como Firebase, Flutter, MakerSuite e Vertex AI
  • Ela é fácil e segura de experimentar com o MakerSuite, uma ferramenta que simplifica o fluxo de trabalho de desenvolvimento com IA gerativa, permitindo iterar sobre prompts, gerar dados sintéticos e ajustar modelos personalizados
  • Ela melhora a comunicação entre os sistemas, facilitando a transmissão e o recebimento de dados entre diferentes plataformas e serviços
Continue reading →