1 pontos por GN⁺ 2023-09-11 | 1 comentários | Compartilhar no WhatsApp
  • O autor do artigo, após participar da corrida de bicicleta Gravel Worlds Long Voyage, decidiu otimizar sua alimentação pedindo pizza na Casey's General Store
  • No ano anterior, os ciclistas mais rápidos comeram todas as pizzas, e quando ele chegou não havia mais nenhuma
  • Para resolver esse problema, decidiu escrever um script que faz um pedido de pizza quando o GPS da bicicleta sai de uma geofence
  • Esse script foi construído sobre um rastreador GPS serverless criado no ano anterior
  • O script calcula o ETA da próxima parada e aciona uma função Lambda para pedir pizza quando o rastreador sai de uma geofence configurada no AWS Location Service
  • Como a Casey's não tem uma API pública para pedidos online, ele recorreu a scraping do site com Playwright
  • Também configurou o envio de notificações push para o celular conforme o sucesso ou a falha do pedido de pizza
  • Durante a corrida, recebeu uma notificação incorreta dizendo que a pizza havia sido pedida com sucesso, mas não havia registro do pedido na parada
  • Após a corrida, melhorou a função Lambda para capturar um vídeo do navegador em execução e enviá-lo para um bucket S3 para análise
  • Ele supõe que a falha pode ter ocorrido porque a Lambda encerrou a execução assim que o form.submit() final foi processado no navegador Playwright
  • Apesar da falha, aprendeu muito com o projeto e pretende tentar novamente na próxima corrida
  • O código desse projeto está disponível no GitHub

1 comentários

 
GN⁺ 2023-09-11
Comentários do Hacker News
  • Artigo sobre um projeto técnico incomum que conectou o GPS da bicicleta para fazer um pedido de pizza durante uma corrida de cascalho
  • O projeto é comparado a uma versão do século 21 do pizzatool usado na Sun Microsystems
  • Uma pizzaria chamada Waypoint Pizza é mencionada, fazendo entregas na Baía de São Francisco durante uma determinada regata
  • O artigo também menciona o ultramaratonista Dean Karnazes, que corria durante provas com pizza enrolada como um burrito
  • Alguns leitores sugerem que, se o site usado para fazer o pedido fosse um site em React, isso poderia indicar a existência de uma API utilizável diretamente, o que poderia tornar o processo mais robusto
  • O artigo é elogiado por seu humor, pela solução criativa de problemas técnicos e pela autocrítica do autor no final
  • Alguns leitores sugerem soluções técnicas alternativas, como usar chamadas em modo mãos livres ou fazer um amigo ligar
  • Há discussão sobre a possibilidade de aplicar soluções técnicas semelhantes a outros serviços de entrega, como o Deliveroo
  • O artigo revela que a solução técnica não funcionou durante a corrida, e isso foi percebido por volta da milha 200
  • O artigo também menciona a pizza da Casey's, uma pizza muito querida no Meio-Oeste dos EUA, o que despertou lembranças felizes em alguns leitores
  • Uma teoria para a falha da solução técnica é proposta, sugerindo que a Lambda pode ter encerrado o processamento após o envio do formulário final