AI活用未経験(ChatGPTでのチャットすら使った事がない)&Adobe系のアプリやHTML・CSS等も全く扱った事がない人を、約1週間でHP制作者に仕立て上げる…という機会がありました。
その過程を改めて振り返ると、大日本帝国海軍の連合艦隊司令長官・山本五十六が残した有名な格言に当てはまっていた事に気づいたので、記事にしてみました。
やってみせ、言って聞かせて、させてみて、誉めてやらねば、人は動かじ
0.使ったアプリ
Codex にするかで迷いましたが、Google Antigravity(IDEの無い方)にしました。1
- シンプルだから(Qiitaの主な読者層にとってはデメリットでもありますが)
- 会社で活用されてないプラン契約があったから
- 個人アカウントでも、勉強しようと思えば手軽にできるから
- 計画 → 実装 → 確認…という一連の基本的な流れを自然に学習できるから
- Gemini Flash は適度におバカで速いから23
…といった事が主な理由です。
1.やってみせ
まずは環境構築…とよく言われますが、初心者の多くはここで躓きますので、大幅に省略します。
- Google公式サイトから Antigravity をダウンロード ⇒ ダブルクリックするだけでインストール完了! ね?簡単でしょ?
- 作業フォルダを作成しますが、最初は好きに作らせました。※後から修正 = 考え方の矯正をします。
- Antigravity を起動し2を作業ディレクトリとして指定後に、「◯◯のページを作って(◯◯は本人の趣味)」と入力。いわゆる「バイブコーディング」というやつです。
- できたページを本人に見てもらいます。
- 4を人間ではなくAIに見てもらう方法を見せます。
ブラウザの中で勝手にカーソルが動き、勝手にリンクを辿って画面が動いたりすると、やはり「すごい!」ってなるみたいです。ここ大事。
反省点
その人が過去にExcelで苦労して作っていたであろう見積書や請求書等も、(HTML&CSSで綺麗に)作れちゃう…と見せても良かったかな?と、今になって思います。
2.言って聞かせて
ここの主な読者層にとっては耳タコであろう、Perl の作者 Larry Wall による30数年前の格言「プログラマの三大美徳」について話しました。
個人的に、これは開発者にとっての普遍的な金言だと思っていましたが、それがAIをバリバリ活用する時代になってより輝きを増してきたとも考えているからです。
また、一見すると否定的な意味の単語ですので、インパクトもあり、すっと頭に入りやすい…という意図もあります。
-
怠惰(Laziness)
- 同じ作業の繰り返しや無駄な苦労を嫌う気質。
- ⇒ どうすれば楽できるか?を徹底的に考えよう。
-
短気(Impatience)
- コンピュータの無駄な待ち時間や、将来起こるかもしれない不具合に耐えられない気質。
- ⇒ 先回りしてトラブルの起きない仕組みを作ろう。
-
傲慢(Hubris)
- 品質の低いものを世に出して、他人に批判されることを極端に嫌う気質。
- ⇒ 誇りやこだわりを持って作ろう。(ここはかなり端折ったw)
具体的に何をしたか?
1で自由に作ってもらった作業フォルダの何がどう駄目か?を説明し、より適切な作り方を提案しました。(その後構築予定の、ローカルで動作するウェブサーバーへの布石でもある)
HTML・CSS・JavaScriptのコードを実際に見せ、家に例えて
- HTML:土台や壁や屋根
- CSS:装飾
- JavaScript:電気を通したら動く家電
「コードなんてまるで呪文だよね」「今はまだ覚えなくてOK」「今は何となくイメージだけできればOK」…といった昔からの私の定番話に加え、「これ全部やってくれるAIって凄いよね」…のように説明してたと思います。
反省点
歳を取ると、話が長く説教臭くなります(笑)
ウェブの世界には「ハンバーガーメニュー」「パディング」「マージン」といった専門用語が膨大にあるが、それを知れば知るほど言語化能力が磨かれ、AIに的確な指示を出せるようになるよ…とか。
3.させてみて
2を踏まえ最低限の環境を作った後は、簡単なお題を与え、本人の好きなように作ってもらいました。
色々言いたい事があったとしても、なるべく口出しはしないように…。
反省点
イラチ(関西弁です)なので、実際はパソコン操作に対し少し口出ししちゃいました(笑)
4.誉めてやらねば
3を見せてもらい、ワザとらしくならない程度に誉めました。
できたものは、当然ながら凄まじい「AI臭」を放っていましたが、このAI臭に対する感度はAIを使って間もない人にはありませんので、この段階であれこれ言う必要は無いと思っています。
必要なのは、その「AI臭」の正体を論理的に説明し、SKILL等を活用することで、怠惰・短気・傲慢に処理する方法を教える事だと思っています。
若い頃にバイトでパソコンを教える仕事をしていましたが…
- すごい!楽しい!と興味を持ってもらう
- 自己肯定感を高める
この2点は、なるべく意識するようにしています。「好きこそ物の上手なれ」ってやつですね。
で、人は動いたの?
実際は上記よりずっと多くの事を教えましたが、既に1プロジェクトを、ほぼ1人で進めてます。
良くも悪くも変に真面目過ぎるところがありますし心配なところもありますが、頑張って欲しいものです。
話し合い、耳を傾け、承認し、任せてやらねば、人は育たず。
やっている、姿を感謝で見守って、信頼せねば、人は実らず。4
で、そこまでやる必要あるの?
山本五十六の格言に対しては…
- IT系の世界は日進月歩だし、やってみせ・言って聞かせて・させてみて・誉めてやらねば…と、そこまで手取り足取りやらないと駄目な人 ≒ 自主性や主体性に欠けた人は、向いてないんじゃない?
- 変な期待を持たせずに、向いてないものは向いてないと分からせる事も必要では?
…といった厳しい意見も見た事がありますし、私自身が全て独学で、誰かに何かを聞けばすぐ教えてもらえる環境で仕事をした事がほぼありませんので、言いたい事は分からなくも無いです。
でもね。そういう「俺は苦労したのだからお前も苦労して当たり前なのだ」みたいな考え方は、昭和のおじさんの考え方だと思います。
そもそもそういう人は、勝手に独学して勝手にスキルを身に付けているわけで、そこをどうこう言っても意味がないのではないでしょうか。
ただし、以下2点については、かなり厳しい事を言ってます。
AI相手でも(AI相手だからこそ)他責・他罰思考はやめよう
実体験ですが、思い通りの結果が出ない原因を、他責・他罰思考で処理する人には、進歩・成長がない。
しかもAI相手だと、これがより厄介な事になります。
人間なら「いや、それはあなたの指示が…」と言い返してくれますが、AIは言い返しませんし、それどころか「申し訳ありません、私のミスです」と謝ってくれます。
つまり、他責で処理し続けても誰にも怒られない。矯正される機会が無いまま「このAI使えないわ」で終わり、次も同じ結果になります。
バイブコーディングは個人の趣味、あなたがこれからやる事はそうじゃない
個人の趣味と、会社の仕事は完全に別物として考えて欲しい。
趣味なら、壊れても困るのは自分だけですし、飽きて捨てるも作り直すも自由です。
しかし仕事は、壊れた時に困るのがお客様であり、一緒に働く人であり、最終的には会社のお金ですので。
…ということで、やはり説教臭くなりました(笑)