AIで作ったアプリが深夜2時に壊れたら、どうするか(開発者でないあなたへ)

昨日は動いていたアプリ。今は真夜中で、何かがおかしい。コードを読めなくても実際に何をすればいいか — 落ち着いた、技術者でない人のための手引きです。

コードを一行も書かずにアプリを作りました。1週間ずっと動いていました。それからユーザーが深夜1時47分にメッセージを送ってきます。サインアップボタンが何も反応しない、と。あなたは、ナイトテーブルの上で光る携帯で目を覚まします。

ライブのアプリを直さなければならない経験が一度もないなら、この瞬間はひどいものに感じられます。コードは読めない。「データベース」が本当は何を意味するか分からない。本当に壊れているのか、ただ変なだけなのか確信が持てず、普段なら助けてくれる人たちは眠っています。

ここに、AIで作ったアプリが壊れて、コードを書けないときに何をするかの、落ち着いた、順序立った手引きがあります。そのほとんどは、事態を悪化させないことについてで、それは誰も警告してくれない部分です。

まず:再デプロイしないこと

AIアプリビルダーのどこかに、「再公開」「再デプロイ」「出荷」のようなことを言うボタンがあります。あなたはそれを押したくなろうとしています。まだ、押さないで。

半分壊れたアプリで再デプロイを押すと、壊れた状態を固定し、そのあたりにあったデバッグ情報のデータを吹き飛ばし、誰にとっても — AIビルダー自身にとっても — 何がおかしくなったかを突き止めるのを難しくしかねません。

最初の動きは、いつも、行動することではなく、見ることです。何が壊れているかさえ、まだ確認していないのですから。

ステップ1 — 自分で問題を再現する

新しいブラウザのウィンドウでアプリを開きましょう — シークレットモードまたはプライベートモードがいちばんです。古いログインやキャッシュを取り除き、それらがあなたとユーザーとで違う振る舞いをさせるのを防げるからです。

ユーザーが報告したまさにそのことをやってみましょう。サインアップボタンが効かないと言われたなら、サインアップしてみる。ダッシュボードが真っ白だと言われたなら、ログインしてダッシュボードを見てみる。

あなたが探しているのは、3つのうちの1つです。

  1. みんなにとって壊れている。 あなたも同じ問題に当たる。これは実は、いちばん直しやすい種類です。一貫しているからです。
  2. あなたには動く。 これはいちばん難しいシナリオです。ユーザーの特定の状況(彼らのブラウザ、彼らのアカウント、彼らのデータ)の何かが問題だからです。
  3. 断続的。 一度は動いて、次は壊れる。これはいちばんストレスがかかりますが、いちばん情報量も多い — たいてい、何かがタイムアウトしているか、リソースを使い果たしていることを意味します。

3つのうちどれを見たか書き留めましょう。助けを求めるときに必要になります。

ステップ2 — アプリを責める前に、明白な外部のものを確認する

驚くほど多くの「アプリが壊れた」瞬間は、あなたのアプリではありません。AIビルダーの中に潜り込む前に、確認しましょう。

  • インターネット自体は大丈夫か? ほかのサイトをいくつか開く。wifi が不安定なら、アプリは大丈夫で、壊れているのはあなたかもしれません。
  • AIビルダー自体が障害を起こしていないか? ほとんどのAIアプリビルダーにはステータスページがあります(プロダクト名に「status」を足して検索)。彼らが悪い夜を過ごしているなら、ほかに何かを突き止める必要はありません。
  • 連携しているツールの1つがダウンしていないか? アプリが決済に Stripe を、通知にメールサービスを、データ保存にデータベースサービスを使っているなら、そのどれもが障害を起こしうる。それぞれに独自のステータスページがあります。アプリが頼っているものを確認しましょう。

5回に1回くらい、答えは「実はアプリではない」で、あなたは眠りに戻れます。

ステップ3 — 怖くても、エラーメッセージを見る

アプリが、テキストの載った画面を表示しているなら — たとえちんぷんかんぷんに見えるテキストでも — 読みましょう。スクリーンショットを撮りましょう。特に、長い文字と数字の連なりがあるなら(人々はこれを「スタックトレース」と呼びます。アルファベットスープのように見えますが、助けを求めるときに持てる、いちばん役立つものです)。

ほとんどのAIアプリビルダーには、最近起きたエラーを見られる場所もあります。それは Logs、Activity、Errors、Console と呼ばれるかもしれません。開きましょう。見えるもののほとんどを理解する必要はありません — あなたが探しているのは、いちばん最近の赤いテキスト、またはいちばん最近のエラーと、それが起きた時刻です。時刻が大事です。昨日の朝のエラーは、おそらくユーザーがたった今サインアップできなかった理由ではありません。

そのエラーをコピーしましょう。少ししたら、それを役立つ場所に貼り付けます。

ステップ4 — AIビルダーに、何が変わったか尋ねる

これは、技術者でないビルダーがいちばん使いきれていない動きです。AIビルダーとのチャットを開いて、平易な言葉で言いましょう。

「私のアプリが壊れています。ユーザーがサインアップできません — ボタンが何もしません。ログからのエラーはこちらです:[貼り付け]。直近24時間で何が変わって、何がこれを引き起こしている可能性がありますか?」

良いAIビルダーは、最近のどの変更がいちばん原因らしいかを教えてくれます。すぐにピンとくることもあるでしょう(「ああ、昨日フォームをもっときれいにしてって頼んだ、それがたぶん送信のロジックを壊したんだ」)。覚えのないものを指すこともあり、それもまた役立ちます — 何か自動的なものが変わったことを意味するからです。連携しているツールが更新された、など。

AIビルダーにまだ修正を始めさせないこと。あなたはまだ診断モードにいます。小さな問題を悪化させる、私が見てきたいちばんよくあるやり方は、誰も何が壊れているか理解する前に、AIに「修正」を始めさせることです。

ステップ5 — ロールバックするかどうかを決める

ほとんどすべてのAIアプリビルダーで、アプリの以前のバージョンに戻れます。「履歴」「バージョン」「チェックポイント」「ロールバック」と呼ばれることもあります。

アプリが動いていた時間や日をはっきり覚えているなら、そのバージョンに戻すのは、唯一いちばん信頼できる動きです。それは、その間に加えた変更(もう要らないかもしれないもの)を犠牲にしますが、目を覚ましたときに動くアプリを与えてくれます。

良い経験則:壊れているものが、ユーザーが毎日やること(サインアップ、ログイン、決済)なら、まずロールバックして、あとで前向きに直しましょう。動くけど古い、は、壊れてるけど最新、にいつでも勝ちます。

壊れているものが、今日追加した、まだ誰も頼っていない機能なら、朝まで壊れたままにして、すっきりした頭で直してかまいません。

ステップ6 — どうしてもAIビルダーに直させるなら

ロールバックが不可能か、しないと決めたなら、AIビルダーに修正を提案させましょう。それがやっている間、心に留めておくべきことが2つあります。

承認する前に、何を変えようとしているか読む。 すべては理解できなくても、1つの的を絞ったものを編集しているのか、アプリの半分を書き直しているのかは見分けられます。小さく、的を絞った変更は、深夜2時に大掛かりなものよりずっと安全です。

できるだけ退屈なやり方で修正をテストする。 ただ「直った?」と尋ねて、その答えを信じないこと。実際に自分でシークレットウィンドウでアプリに行って、壊れていたことをやってみましょう。修正が効いたなら、壊れていたものが今は動きます。動かないなら、AIビルダーが効いたと言ったからといって、変更を受け入れないこと。

ステップ7 — 直せていなくても、ユーザーに返信する

深夜1時47分にメッセージを送ってきたユーザーは、あなたがオンラインだとは思っていません。でも、もしオンラインなら、短い返信が修正よりも大事です。

「教えてくれてありがとう — 今まさに見ています。また動くようになったらすぐに連絡します。」

彼らが有料ユーザーなら、その1つのメッセージが、あなたは反応が速いと人に話すか、あなたに無視されたと人に話すかの分かれ目です。修正は朝まで待てます。返信は待てません。

より大きな教訓:壊れるかもしれない前提でアプリを作る

これがストレスフルだったなら、その救いは、この経験があなたの作り方を作り変えることです。最初の深夜2時の事件のあと、あなたは違うことをし始めます。

  • ステータスチェックを足す。 アプリの重要な部分が動いているかどうかを教えてくれるシンプルなページ。ログインして確かめなくてもいいように。
  • ユーザーデータのバックアップを保つ。 ほとんどのAIビルダーは、頼めばデータをエクスポートしてくれます。これを週に一度やるのは30秒で、最悪の場合にあなたを救います。
  • アプリが何に頼っているか書き留める。 連携しているすべてのツール(決済、メール、データベース、ストレージ)の短いリスト。深夜2時に何かが壊れたとき、当てずっぽうではなくチェックリストを持てるように。
  • 一度に1つだけ変える。 一度に10個変えてアプリが壊れたら、どの変更が壊したか見当もつきません。一度に1つ変えれば、分かります。

コードを書かずにアプリを作れます。開発者でなくても、動かし続けることもできます — でも、そこに関わるスキルは、作るスキルとは別物です。それらはたいてい痛い目を見て、たいてい不都合な時間に学ぶものです。

良い知らせ:それが起きるたびに、怖さは減っていきます。3回目には、恐ろしいではなく煩わしいになります。10回目には、ただの火曜になります。