1 Punkte von GN⁺ 2023-09-11 | 1 Kommentare | Auf WhatsApp teilen
  • Der Autor des Artikels nahm am Fahrradrennen Gravel Worlds Long Voyage teil und entschied sich, die Verpflegung durch eine Pizzabestellung bei Casey's General Store zu optimieren
  • Im Vorjahr hatten die schnellen Fahrer bereits alle Pizzen gegessen, sodass bei der Ankunft keine Pizza mehr übrig war
  • Um dieses Problem zu lösen, entschied er sich, ein Skript zu schreiben, das Pizza bestellt, wenn das Fahrrad-GPS eine Geofence-Zone verlässt
  • Dieses Skript wurde auf einem serverlosen GPS-Tracker aufgebaut, den er im Vorjahr erstellt hatte
  • Das Skript berechnet die ETA für den nächsten Stopp und löst eine Lambda-Funktion aus, die Pizza bestellt, sobald der Tracker eine in AWS Location konfigurierte Geofence-Zone verlässt
  • Da Casey's keine öffentliche API für Online-Bestellungen hat, war er auf Web-Scraping der Website mit Playwright angewiesen
  • Er richtete außerdem ein, dass je nach Erfolg oder Fehlschlag der Pizzabestellung Push-Benachrichtigungen an sein Handy gesendet werden
  • Während des Rennens erhielt er fälschlicherweise eine Benachrichtigung, dass die Pizza erfolgreich bestellt worden sei, am Stopp gab es jedoch keinen Bestelleintrag
  • Nach dem Rennen verbesserte er die Lambda-Funktion so, dass sie ein Video des laufenden Browsers aufzeichnet und zur Analyse in einen S3-Bucket hochlädt
  • Er vermutet, dass der Fehler daran lag, dass Lambda die Verarbeitung unmittelbar nach dem abschließenden form.submit() im Playwright-Browser beendete
  • Trotz des Fehlschlags hat er bei diesem Projekt viel gelernt und plant, es bei kommenden Rennen erneut zu versuchen
  • Der Code zu diesem Projekt ist auf GitHub verfügbar

1 Kommentare

 
GN⁺ 2023-09-11
Hacker-News-Kommentare
  • Ein Artikel über ein ungewöhnliches Technikprojekt, bei dem das GPS eines Fahrrads so verbunden wurde, dass während eines Gravel-Rennens Pizza bestellt wird
  • Das Projekt wird mit einer Version von „pizzatool“ für das 21. Jahrhundert verglichen, das bei Sun Microsystems verwendet wurde
  • Die Pizzeria „Waypoint Pizza“ wird erwähnt, die während einer bestimmten Segelregatta in der San Francisco Bay ausliefert
  • Der Artikel erwähnt außerdem den Ultraläufer Dean Karnazes, der während eines Rennens Pizza wie einen Burrito aufrollte und dabei weiterlief
  • Einige Leser schlagen vor, dass die für die Bestellung verwendete Website, falls sie eine React-Website ist, eine direkt nutzbare API implizieren könnte, was den Prozess robuster machen würde
  • Der Artikel wird für seinen Humor, seine technische Problemlösung und die Selbstkritik des Autors am Ende gelobt
  • Einige Leser schlagen alternative technische Lösungen vor, etwa die Nutzung von Freisprechanrufen oder das Veranlassen eines Freundes, anzurufen
  • Es gibt eine Diskussion über die Möglichkeit, ähnliche technische Lösungen auf andere Lieferdienste wie Deliveroo anzuwenden
  • Der Artikel macht deutlich, dass die technische Lösung während des Rennens nicht funktionierte und dies erst bei Meile 200 entdeckt wurde
  • Der Artikel erwähnt außerdem Casey’s Pizza, eine im Mittleren Westen beliebte Pizza, die bei einigen Lesern schöne Erinnerungen weckt
  • Es werden Theorien zum Scheitern der technischen Lösung vorgeschlagen, darunter, dass Lambda die Verarbeitung nach dem Absenden des finalen Formulars beendet haben könnte