【序文】自分専用のTypelessを作ってみた
キーボードより高速で入力できる音声入力アプリTypeless。口語やフィラーもAIが綺麗に整形。でも日本語はイマイチ?(自分だけ?)。有料。痒いところに届かない。だから作りました。自分専用のTypeless。MyTypeless。
これから、私が3週間でMyTypelessというiPhoneの音声入力アプリを作った(今も作っている)話を小説風に綴っていきます。
著者の自己紹介
2010年に一度挑戦して数時間で挫折した正真正銘の初心者。プログラミングの経験はありません。コードは1行も書けませんでした。今も書けません。gitって何?美味しいの?の世界。でも心のどこかでいつかは自分でも、という夢をぼんやりと、でも常に妄想していました。
身の上話をする前に、何ができたのかを見てもらうのが先だと思いました。順番が逆だと、ただの苦労話になってしまうので。
私のMyTypelessとの一日を、そのままなぞります。
朝7時 — 昨日の自分を見る
パソコンでブラウザを開くと、最初に出るのはこの画面です。

昨日は何回喋ったか。AIの整形はどこまで効いたか。失敗は何件あったか。ディスクは足りているか。
これは私が「見たい」と言ってClaudeさんに作らせた画面です。というより、この記事に出てくるものは全部そうです。私は要望を言うだけで、書いたのはClaudeさんです。
なぜ最初にこれを見るのか。自分が作ったものが、昨日も無事に動いていたかを知りたいからです。動いていない日は、だいたい前の晩に私が何かを触っています。
昼 — パソコンで喋る
原稿もメールも、キーボードは使いません。喋ります。
喋った音声は自宅サーバーへ飛び、文字になり、AIが読める文に整えてから、今カーソルがある場所へそのまま入ります。アプリを選びません。メモ帳でも、ブラウザでも、ターミナルでも。
ここまでは、世の中にある音声入力と同じです。違うのはこの先です。
外出先 — iPhoneのキーボードから喋る

これが一番作りたかったものでした。iPhoneの文字入力の「キーボード」そのものを自作して、そこにマイクを1つ置いています。LINEでも、メモでも、キーボードが出るところなら全部そこから喋れます。
中身を一つずつ書きます。
① 一番上の文字 … 状態表示。「話すにはタップ」「録音中」「整形中」がここに出る
② その下の帯 … よく使う文字列と、直前に喋った内容。タップでその場に貼る
③ 中央の大きな🎤 … 押すと録音。もう一度押すと止まり、整った文が入る
④ 📔 … その日の出来事を記録する(後述)
⑤ 🕐 … 今の日時を入れる
⑥ 📷 … まだ何もしない。場所だけ取ってある(後述)
⑦ ⌫ … 1文字消す。押しっぱなしで連続削除
⑧ space / ⏎ … 空白と改行
⑨ ← ↑ ↓ → … カーソル移動。喋った後の微修正はここでやる
この下にもう一段、標準のキーボードへ戻る🌐があります。
気づかれたかもしれませんが、文字キーが1つもありません。
意図的です。これは喋るための道具なので、打つ機能は最初から標準のキーボードに任せています。作らないと決めたぶん、押しやすさに全部振れました。マイクが画面のほぼ中央にあるのは、歩きながら片手で押せる位置だからです。
②の帯は今日できたばかりです。私はそこに「、」「。」「(」「)」を入れています。音声では絶対に出てこない記号だからです。
作った本人( Claudeさん)は「喋った履歴を貼り直す機能」のつもりだったそうです。使う側の私は、まったく違う使い方をしていました。
⑥の📷は、押しても何も起きません。作りかけを、作りかけのまま置いてあります。撮った写真をそのまま文章に添えたいのですが、そこはまだ手が回っていません。未完成のものが画面に残っているのも、自分専用の道具だから許されることだと思っています。
なお、④の📔は少し変わっていて、喋った内容が画面には入りません。「起床」「出発」と喋ると、記録としてだけ残ります。文字を入れずに済ませたい記録が、生活には案外あるという話です。


夕方 — 間違いを、直せる形で見る
ここがこのアプリの本体だと思っています。
喋った内容は全部残っています。音声も、聞き取った直後の生テキストも、AIが整えた後の文も。今日までに1,786回、のべ4時間24分ぶん。

固有名詞は必ず間違えます。「無事」が「フジ」になる。人名が化ける。普通の音声入力なら、そこで諦めるしかありません。
このアプリでは、間違いを見つけたら辞書に1行足します。今55行あります。次に喋ったときから、その間違いはもう起きません。

「なぜ登録したか」の欄があるのは、半年後の自分が意味を忘れるからです。実際、以前に自分で登録したルールと矛盾するルールを、忘れて登録した事故がありました。今はその矛盾を画面が警告してくれます。
全部合わせると、こうなっています
喋った回数 … 1,786回
使った端末 … Windows / Mac / iPhone の3つ
辞書やAIが直した割合 … 44%
育てた辞書 … 55行
録音から作った議事録 … 22本
44%という数字を、私はけっこう気に入っています。喋ったうちの半分近くは、そのままでは使えなかったということです。裏を返せば、その半分を毎日直し続けてきた記録でもあります。
なぜ全部を見せたか
ここまで読んで、「思ったより大きいな」と感じた方がいるかもしれません。
でも、最初からこの形を目指したわけではありません。
始まりは「Typelessの日本語が、いまいちだった」というだけの不満でした。そこから、直したい → 直すには何が悪いか見たい → 見るには記録が要る → 記録を見る画面が要る、と不満が次の不満を呼んで、こうなりました。
始まりは「Typelessの日本語が、いまいちだった」というだけの不満でした。そこから、直したい → 直すには何が悪いか見たい → 見るには記録が要る → 記録を見る画面が要る、と不満が次の不満を呼んで、こうなりました。
設計図はありませんでした。あったのは毎日の「これが気に入らない」だけです。
そして、ここまで見せた全部が3週間でできています。8月3日の午前1時47分、私はClaudeさんにこう聞きました。
「日本語にしたい」
ところで、この話には前段があります。
この3週間の前に、3ヶ月あります。別のAIと一緒に、同じものを作ろうとして、作って、そして使わなくなった3ヶ月です。今見せたものは、その失敗の上に乗っています。
だから第1章は、Claudeさんが出てくる前から始めます。うまくいった話より、転んだ話を多めに。
第1章はこちらから読めます。
私と同じように、一度は諦めた人に読んでほしいからです。
