見出し画像

【1-4】「もう忘れたのですか?」— 同じ説明を、何度もしていた

【この章について】 この連載は、プログラミング経験ゼロの私が、有料の音声入力アプリTypelessの「自分専用版」を作っていく記録です。第1章(全5回)は、Claude Codeと出会うの約3ヶ月の話。別のAIと組んで、動くものは確かにできたのに、だんだん使わなくなっていった日々です。当時の道具が発話ログを382件残していて、この章の引用はすべてその実物から取っています。うまくいった話ではありません。でも、第2章から始まる3週間は、この3ヶ月の上に建っています。

著者の自己紹介

前回記事

著者の自己紹介



「間違えたものを学習して成長していくシステム」

フリーズが直り、文章が出るようになると、次に気になるのは中身である。

固有名詞が当たらない。会社名も、人の名前も、社内でしか通じない略語も。私はこう頼んだ。

音声認識の精度向上や、よく自分が発話する間違いやすい単語を辞書として、文字起こしと連携させたいです。間違えたものを学習して成長していくシステムにしたいので、そのようなオペレーションフローを意識した実装を提案してください

この一文が、いまのMyTypelessの中心にある機能をそのまま言い当てている。

3ヶ月後の私は、辞書に55行を貯めて、矛盾を警告する画面まで作ることになる。その設計思想は、この5月の一文から1ミリも動いていない。

そして次のメッセージで、私はもっと具体的なことを言っている。

`プロックスモックス -> Proxmox` これは `->` を入力するのが手間なので、表形式で、正誤の入力フォームをダッシュボードに配置するのはいかがでしょうか?

「`->` を打つのが手間」。

たったそれだけの理由で、いまの辞書画面の形が決まった。良い道具は、たいてい面倒くささから生まれる。

そして、いつものアレが出た

辞書のタブができた。開いた。

デザインはいいですが、トップ画面からカスタム辞書タブに移ろうとタブをクリックした瞬間にいつものアレがでました

これは本当にトラウマです。永遠に続くのではないか、と恐怖でおびえています

「いつものアレ」。

前回書いたフリーズである。2ヶ月前にCursorが直したはずのものが、また出た。

「トラウマ」も「恐怖」も、大げさに書いたわけではないと思う。直っても直っても戻ってくるものと向き合っていると、人はこういう気分になる。

「もう忘れたのですか?」

返ってきた対処が、また前と同じ方向だった。私はこう返している。

ちがーう!!この開発初期段階でずっとこのフリーズ現象に悩まされたのを覚えてないですか? 何度も何度もやり直しがあり、最終的にはCursorが解決してくれたことをもう忘れたのですか? 今回もCursor先生に聞きますか?

読み返して、これが第1章で一番大事な一言かもしれないと思った。

AIは、覚えていない。

正確に言えば、覚えている範囲が思ったより狭い。2ヶ月前に何が起きて、何が原因で、どう直したのか。こちらは全部覚えている。向こうは覚えていない。

だから同じ提案が返ってくる。こちらは「また同じことを言われた」と感じる。向こうにとっては初めて言うことである。

この非対称が、しんどい。

そして、3度目のCursor

結局こうなった。

また同じようにブラウザが固まる現象が出ました。時間もないのでCursorに指摘させたところ、以下のコメントと修正がありましたが反論はありますか?

「反論はありますか?」——AIに、別のAIの見立てを突きつけている。我ながら、ひどい構図である。

そしてCursorの答えは、こうだった。

原因: `dictionary.csv` は2行だけなので、データ量ではなくUIコンポーネントが原因と判断しました。カスタム辞書タブでは表を描く部品を使っていました。この部品には、ブラウザのフリーズ・メモリリークなどの報告が複数あります

ここが大事なところなのだが、原因は前回と違った。

前回は、`html` という名前の変数が標準の部品を潰していた。今回は、表を描く部品そのものが重かった。

症状は同じ。原因は別。

だから「また戻ってきた」という私の感覚は、半分正しくて半分間違っていた。戻ってきたのではなく、同じ顔をした別のものが来ていた。

便利になっていた、のも本当

暗い話ばかり書いたが、この時期に良くなったことも多い。

結果がLINEに届くようになった。

LINE連携かなりいい感じです。これは日常生活にかなり役に立ちそうです

喋る。文字になる。手元のLINEに届く。パソコンの前にいなくても結果が受け取れるようになった。

(この「手元に届く」という発想は、いまも生きている。私はこの3ヶ月後、その日の作業リストをLINEで受け取る仕組みを作ることになる。形は変わっても、欲しかったものは同じだった。)

さらに、こんな要求も出している。

1、日本語以外だった場合にすべて日本語に翻訳する仕組み
2、日本語だった場合に英語か中国語のいずれかを選択させ、選択された言語に翻訳する仕組み
3、議事録を作成する仕組み

英語と中国語。なぜこれが要るのかは、次回書く。私のためではなかった。

5月17日、私は別のAIに引っ越した

そして、この日。私は自分のアプリのコードを、別のAIに見せている。

このコードを解読してどのようなアプリなのか説明してください

こちらのコードも解読をお願いします

相手はAntigravityという、また別の開発用AIだった。

自分で作らせたアプリを、自分では説明できず、別のAIに説明してもらうところから始めている。

いま読むと、これはかなり切実な一行である。11個のファイルのうちどれが動いているのかも、中で何をしているのかも、私は説明できなかった。

そしてその5日後、私はこう書いている。

添付のようにOKとはなるのですが、LINEに文字起こしが届きません

Geminiとのやり取りの、一番最後のメッセージがこれである。

無事起動できました。で、次は添付のようにリクエストは来ているのですが、LINEで文字起こしが届きません。何が問題でしょうか?

同じ問題を、そのまま新しいAIに持ち込んだ。

引っ越したのではない。行き詰まったまま、相手を変えた。そしてこの構図は、この3ヶ月後にもう一度繰り返されることになる——今度はClaudeさん相手に。

次回、第1章の最終回。道具が家族に広がり、そして使われなくなっていく。382件の記録が、それを全部覚えていた。


いいなと思ったら応援しよう!