「分からないけど、触ってみる」を続けていたら
「n8n」というツールの名前を知ったのは、けっこう前のことです。
自動化ツール。
ノーコードで、いろんなサービスを繋げられる。
そう聞いて、インストールだけはしました。
でも、そこで止まっていました。
開いてみたけど、英語の画面が広がっていて、何をすればいいか分からない。
「またそのうち」と思って、閉じてしまった。
こういう経験、ありませんか?
ツールの存在は知っている。
便利そうだと分かっている。
でも、最初の一歩が踏み出せない。
「今じゃなくていいか」が積み重なって、いつの間にか忘れてしまう。
私もそうでした。
n8nだけじゃなくて、たくさんのツールでそうでした。
触るきっかけは、突然やってくる

今日、YouTube台本の音声化をやっている最中に、ふと思いました。
「これ、n8nでもできるのかな?」
昨日からPythonでスクリプトを書いて、VoiceboxのAPIを叩いていたんです。
テキストを渡すと、自分の声で読み上げてくれるツール。
APIを叩くだけなら、n8nでもできるはず。
理屈は分かっていました。
でも、自分の手で確かめたかった。
開いてみたら、意外とシンプルだった

起動して、空のキャンバスが表示されました。
ブロックを1つ置く。
「手動で実行する」という意味のブロック。
もう1つ置く。
「HTTPリクエストを送る」という意味のブロック。
URLを入れて、ボタンを押す。
返ってきました。
自分が作った音声プロファイルの情報が、画面の右側に表示された。
「え、これだけ?」
昨日Pythonで何行も書いた処理が、URLを1つ入力するだけで再現できてしまいました。
実はこの前に一つだけ躓きました。
エラーが出たんです。
「接続を拒否されました」と。
原因は、URLの書き方。
「localhost」と書くべきところを……いや、正確には「localhost」じゃダメで「127.0.0.1」と書く必要があった。
同じ意味のはずなのに、ツールによって通ったり通らなかったりする。
こういう小さな引っかかりって、知らないと30分悩む。
でも知ってれば3秒で解決する。
「なんでこんなことで」って思う瞬間は、何度経験しても慣れません。
でも、一つ一つ乗り越えるたびに、使えるツールが増えていく実感があります。
「分からない」のままでいい

思い返すと、ここ最近ずっとこのパターンの繰り返しです。
VoiceboxのAPIも、最初は「APIって何?」から始まりました。
Pythonのスクリプトも、「非同期って何?」と思いながら書きました。
そして今日のn8nも、「何をすればいいか分からない」画面から始まりました。
全部、分からないまま触り始めている。
でも、触ってみたら動いた。
動いたら、少し分かった。
分かったら、次に何をしたいか見えてきた。
この順番が大事なんです。
「理解してから触る」じゃなくて、「触ってから理解する」。
選択肢があるということ

今日、面白いなと思ったことがあります。
Pythonでコードを書いてAPIを叩くこともできる。
n8nでブロックをつないでAPIを叩くこともできる。
やっていることは同じです。
でも、「どっちでもできる」ということ自体に意味がある。
コードが得意な日はPythonで書けばいい。
全体の流れを俯瞰したい日はn8nを使えばいい。
選択肢があるって、自由だなと思いました。
「非エンジニアでも自動化できる」って、こういうことなんです。
特別なスキルが必要なのではなくて、「試しに触ってみる勇気」だけでいい。
そして、その「触ってみる勇気」は、一度経験すると次からはもっと軽くなる。
VoiceboxのAPIを初めて叩いたときも怖かった。
Pythonのスクリプトを初めて書いたときも怖かった。
でも今日のn8nは、あの頃ほど怖くなかった。
「分からなくても、触れば分かるようになる」。
それを身体が覚えてきているんだと思います。
今日やったのは、ほんの小さな一歩でした。
ブロックを2つ置いて、URLを入れて、ボタンを押しただけ。
でも、その小さな一歩が、次の一歩を見せてくれる。
翌日 —— 3時間かけて、ファイルを1つ保存した話

昨日は「ブロックをつないでAPIが叩けた」と喜んでいました。
今日は、その続き。
「生成した音声をファイルとして保存する」。
やることはシンプルです。
昨日の流れに、もう2つブロックを足すだけ。
それだけのことに、3時間かかりました。
まず、音声データをダウンロードするブロックがエラーを出しました。
「完了してるはずなのに、ダウンロードできない」
原因は、「完了した」と「ファイルが準備できた」が同時じゃなかったこと。
コンピュータの中でも、「もう終わったよ」と言われた直後に、まだ片付けが終わってないことがあるんです。
人間の「終わりました」と同じかもしれません。
報告した瞬間、まだ書類がデスクの上にあったりする。
条件をひとつ追加しました。
「完了した」に加えて「ファイルが存在すること」も確認するようにした。
それで通りました。
次の壁。
「ファイルを保存できません」。
保存先を変えてもダメ。
別のフォルダにしてもダメ。
ターミナルからは書けるのに、n8nからは書けない。
セキュリティの壁でした。
n8nは安全のために、ファイル操作に制限をかけている。
それ自体は正しいことです。
でも、今の私には壁でしかなかった。
じゃあ、コードを書こう。
n8nにはJavaScriptのコードを書けるブロックがあります。
5行のコードを書きました。
「モジュール ‘fs’ は許可されていません」
コードを書くブロックでも、ファイル操作は禁止されていました。
正直、この瞬間はちょっと笑ってしまいました。
何をやっても壁。
壁、壁、壁。
途中でn8nを再起動しようとして、うっかり他のプログラムまで一緒に止めてしまったこともありました。
画面が全部固まって、少し焦りました。
でも、大丈夫でした。
深呼吸して、アプリを開き直せば元通り。
答えは、いつもシンプル

結局、解決策は1行でした。
n8nを起動するときに、「ファイル操作を許可します」という設定をひとつ追加する。
それだけ。
もう一度実行したら、全部のブロックに緑のチェックマークが付きました。
フォルダを開いたら、音声ファイルがちゃんとそこにありました。
3時間かかって、やったことは「ファイルを1つコピーした」だけです。
でも、この3時間で学んだことは多いです。
「動かない理由」を一つずつ突き止めていく作業は、地味で、退屈で、何度もくじけそうになる。
でも、原因が分かった瞬間の「あ、そういうことか」は、何にも代えがたい。
昨日は「小さな一歩」でした。
今日は「小さな一歩のつもりが、崖をよじ登ることになった」日でした。
でも、登り切りました。
遠回りの先に見えたもの

崖を登り切って、達成感に浸っていたとき、ふと思いました。
「次は、複数のテキストを順番に処理できるようにしよう」
……あれ。
それ、昨日もう作ったやつだ。
Pythonで書いたスクリプトが、既にそれをやってくれている。
テキストを読み込んで、分けて、音声にして、つなげて。
全部。
私は3時間かけて、既にあるものをもう一度作ろうとしていたんです。
でも、その3時間は無駄ではなかったと思います。
ぶつかったからこそ、「このツールの本当の出番はここじゃない」と分かった。
n8nの良さは、「いろんなサービスをつなげられる」こと。
音声を作る処理自体はPythonでいい。
n8nの仕事は、きっかけを作ること。
たとえば、Googleドライブに台本を保存したら、それを自動で検知して、音声を作ってくれる。
そんな仕組み。
今まで「台本をコピペして、ターミナルを開いて、コマンドを打って」とやっていた手順が、「ドライブに保存する」だけになる。
遠回りしないと、見えない景色があります。
3時間かけてファイルを1つ保存して、「あ、これじゃない」と気づいた。
でもその気づきがなければ、「本当にやりたかったこと」は見えなかった。
最短距離で正解にたどり着くことだけが大事なんじゃなくて、迷った時間が、次の一歩の方向を教えてくれる。
そう思えるようになったのは、きっと、こういう経験を何度もしてきたからだと思います。
つながった瞬間

方針が決まったので、n8nとGoogleドライブをつなぐ作業を始めました。
n8nのノード追加画面で「Google」と検索したら、Google Drive、Google Sheets、Google Calendar……。
ずらっと並んでいました。
「こんなに色々つなげられるのか」
ただ、つなげるためには「認証」が必要です。
Googleに「このアプリがドライブを使っていいですか?」と許可をもらう仕組み。
Google Cloud Consoleというところでプロジェクトを作って、APIを有効にして、認証情報を作って、n8nに貼り付けて……。
手順を書くと長いのですが、一つひとつは難しくありません。
ただ、「次に何をすればいいか」が分からないと迷子になります。
AIに聞きながら、一歩ずつ進めました。
「Account connected」
緑色の文字が表示された瞬間、達成感がありました。
自分のn8nと、自分のGoogleドライブがつながった。
つまり、Googleドライブにファイルを置いたら、n8nが自動で検知できる。
検知したら、音声を作って、またドライブに戻してくれる。
まだ設定は途中ですが、道筋は見えました。
「分からないまま触ってみる」を繰り返していたら、いつの間にか、いろんなものがつながり始めている。
今日は、そのことを実感した日でした。

