1 ポイント 投稿者 GN⁺ 2023-09-11 | 1件のコメント | WhatsAppで共有
  • 記事の筆者は、Gravel Worlds Long Voyage 自転車レースへの参加後、Casey's General Store でピザを注文して補給を最適化することを決定
  • 前年は速い選手たちがピザをすべて食べてしまい、到着したときにはピザが残っていないという問題が発生
  • この問題を解決するため、自転車GPSがジオフェンスを離れたらピザを注文するスクリプトを書くことにした
  • このスクリプトは、前年に作成したサーバーレスGPSトラッカーの上に構築
  • スクリプトは次の休憩地点への ETA を計算し、トラッカーが AWS Location サービス内で設定したジオフェンスを離れると、ピザを注文する Lambda 関数をトリガー
  • Casey's にはオンライン注文用の公開 API がないため、Playwright を使ったウェブサイトのスクリーンスクレイピングに依存
  • ピザ注文の成功または失敗に応じて、自分のスマートフォンにプッシュ通知が送信されるよう設定
  • レース中、ピザの注文に成功したという誤った通知を受け取ったが、休憩地点には注文記録がなかった
  • レース後、ブラウザ動作中の動画をキャプチャして分析用に S3 バケットへアップロードするよう Lambda 関数を改善
  • 失敗の原因は、Playwright ブラウザ内の最後の form.submit() が処理された直後に Lambda が実行を終了したためではないかと推測
  • 失敗にもかかわらず、このプロジェクトから多くを学び、今後のレースで再挑戦する予定
  • このプロジェクトのコードは GitHub で確認可能

1件のコメント

 
GN⁺ 2023-09-11
Hacker Newsの意見
  • 砂利レース中にピザを注文するよう自転車のGPSを連携させた、ユニークな技術プロジェクトに関する記事
  • このプロジェクトは、Sun Microsystemsで使われていたpizzatoolの21世紀版になぞらえられている
  • Waypoint Pizzaというピザ店が言及されており、特定のセーリングレース中にサンフランシスコ湾で配達している
  • 記事ではまた、Dean Karnazesというウルトラランナーがレース中にピザをブリトーのように巻いて走ったことにも触れている
  • 注文に使われたWebサイトがReactのWebサイトであれば、直接利用できるAPIがあることを意味する可能性があり、そうすれば処理をさらに堅牢にできると提案する読者もいる
  • この記事は、そのユーモア、技術的な問題解決、そして最後の著者の自己批判が称賛されている
  • ハンズフリー通話を使ったり、友人に電話をかけてもらったりといった別の技術的解決策を提案する読者もいる
  • Deliverooのような他の配達サービスにも、似た技術的解決策を適用できる可能性について議論がある
  • 記事では、レース中にこの技術的解決策が機能しなかったことが明かされており、それは200マイル地点で判明したという
  • 記事ではまた、中西部で愛されているCasey'sのピザにも触れており、一部の読者に幸せな思い出を呼び起こしている
  • 技術的解決策の失敗についての仮説も示されており、最終フォーム送信後にLambdaが処理を終了してしまった可能性があるとされている