わたしのプログラミングの教え方 ~ 樋口 至計の場合

わたしが長年、プログラミング初心者を対象とした新入社員研修( Java )の講師を務めてきた中で学んだ、教え方のコツや、何を教えるべきなのか、など私が大事にしているプログラミング研修のあり方をまとめました。
もくじ
「プログラミングアレルギー」を起こさせない3つのコツ
プログラミング研修で一番気を付けていることは、 「受講生がプログラミングアレルギーを発症しないようにする」ことです。
このプログラミングアレルギーというのは、特に新人にありがちな症状で、次から次へと出てくる専門用語に苦手意識が生まれ、全ての内容を受け付けられない状況に陥ってしまう症状です(何がわからないのかわからない状況)。
わたしも新人の頃にこの症状を発症し、非常に苦労した経験がありますが、昨今のプログラミング研修でもこのアレルギーを発症する方が多数見受けられます。
個人的な意見とはなりますが、この症状を発症させないように、講師として教える際に気を付けるべき部分が 3 点あります。
1. どんな用語でも、何度でも、説明を惜しまない
まず 1 つめが、講義した内容や単語について、他の内容を説明する場面であったとしても、都度その単語などについて軽く説明しながら対応するという部分です。
教える側からは簡単と思われる単語でも受講生がしっかりと理解しているとは限らず、受講生はそれを聞けずに、そのステージで立ち止まっている場合があります。その場合、次に何を言われても理解などできるはずもありません。
自分勝手に専門用語をふんだんに使い、講義を時間通りに進めるだけであれば、それは講師としてプロではないと考えています。
2. プログラミング言語を日常生活のものや行動に置き換えて説明する
2 つめは、プログラミングの用語をプログラミングとして説明しないという点です。
わたしは受講生が全員初学者という考え方を元に常に講義を行いますが、初学者に対してプログラミング言語をプログラミングの考え方で教え、すぐに理解できるはずがありません。
単語であっても式であっても、まずは日常生活で目にするもの、行動に置き換えた上で教え、それをプログラミングに転化して教えることで苦手意識を芽生えさせることも少なくなり、理解も早くなります。
データベースへの接続を行い、その値を取得するという構文であれば、データベースまでのコネクションを「航路」に例え、そこで船に「積み荷」と「通行手形」を積み、やり取りを行うというような説明をして、コネクションや積み荷、通行手形がプログラミングの何に当たるのか、追って解説しています。
これであれば、コーディングエラーが起きた時に何が足りないのかを身近なものと結び付け調べることができるので、最初は全く分からないと言っていた受講生でも理解が容易になります。
3. 雑談や笑いをもとに記憶させる
3 つめが、難しい内容の講義ほど、雑談や笑いを入れるという点です。
講義中に雑談を入れると気が散ってしまうと思われる方もいらっしゃるかと思いますが、ここでいう雑談はもちろん、その講義の内容に対する雑談です。
この講義方法になんの意味があるのかというと、実は非常に大きな効果があります。
まず、雑談を入れることで、その講義で引っかかっている部分の質問を多く拾い上げることができます。講義一辺倒の研修では、「こんな質問していいのかな?」という意識を受講生は常に持っています。しかし、雑談を入れることで「今なら質問してもいい」と、気持ちのハードルを下げることができます。特に引っ込み思案な受講生の意見を聞くには非常に有用となります(脱線しすぎて元に戻らなくなる可能性が大いにあるので注意は必要です)。
次に笑いを入れるという部分については、実は別に笑いでなくても問題ありません。単に、「引っ掛かり」をそこに残しておきたいだけですので、それさえ残せればなんでも構いません。わたしは楽しく講義を行うというのを矜持としていますので、「笑い」になっているだけです。
特に難しい部分の講義をし、そこに引っ掛かりも何もなく、数日して再度その演習があった場合、ほとんどの場合は内容を覚えておらず、再度テキストを見返します。
しかし、引っ掛かりがあれば、受講生自身や、受講生同士で「あの話をしてたときの内容だ!」と思い出すことができます。わたしは講義での笑いを、知識に付箋を付けるような感覚で使用しています。
他にも気を付けるべき点は多くありますが、この 3 点が最低限、気を付けている点です。
プログラミング研修で身につけてもらうこと
講師が目指す理想のゴールは、全受講生が余すところなく知識を定着させて研修を終えることだと思います。しかし、それでは講師にも受講生にも荷が重すぎます。
そのため、わたしが考える研修のゴール(到達目標)を 3 つ挙げます。
- 基礎は完ぺきに覚える
- プログラムは〇〇言語と呼ばれるように、日本語や英語などの一種と考えています。
日本語を使えないと聞き取ることも、冗談を言うこともできません。
そのため、言語の基本的な使い方(フィールドやメソッドなどの使い方など)は完ぺきに覚えることを第一のゴールとしています。
- プログラムは〇〇言語と呼ばれるように、日本語や英語などの一種と考えています。
- 自分で調べる能力を身につける
- 研修後、実務にて応用や、複雑なコーディングを求められる場面が必ずあるはずです。そのため、その際にどのような調べ方をすれば最適な解を求めることができるのか、その能力習得を第二のゴールとしています。
- 自分でわからない場合の、他の人(先輩)への聞き方
- どんなに自分で調べても、会社のルールや規定など、どうしても答えにたどり着けない場合があります。その際は他の人に聞くことになるのですが、他人にどういう聞き方をしたら最速で答えが貰えるかという聞き方の能力習得を第三のゴールとしています。
受講生がいるからこそ講師がいる
最後に講師としてのわたしの考えについて書かせていただきます。
講師として登壇する以上は、講義を行っている 7 ~ 8 時間が講師の役割ではなく、 24 時間、常に講師であり続けるべきだとわたしは考えています。
研修期間、受講生が一番頼りにしているのは講師です。
少し甘いと感じられるかもしれませんが、頼りにしている講師に少しでも避けられていると受講生が感じると、頑張ろうと思う気概がなくなってしまうのは当たり前ですよね。
常に受講生を第一に考え、自分の時間を削ってでも対応するべきだと考えます。
そして、研修は楽しくないものであってはなりません。
受講生が「研修は楽しく有意義であった」と思える研修を常に心がけるべきだと考えています。
まとめとなりますが、講師はそれぞれ様々な考え方を持っていますが、必ず考えなくてはならないのが、「受講生のために何ができるか」という部分だと思います。きれいごとに聞こえるかもしれませんが、それを軸としてそれぞれの矜持のもと、講義を行うべきと考えます。
わたしは今後もこれまで同様、受講生のために何ができるか、どうしたら楽しく講義ができるかを日々追求し講義を行っていこうと思っています。

大手企業の営業、 TEL オペレーター、水商売を経て 24 歳から IT 業界に携わり、ほぼ独学でプログラミングを習得する(主な言語は Java ) 。
SE を兼任しながら、数々の企業で IT 系の研修を行い、受講生のプログラミング言語習得はもちろんのこと、メンタル面のケアも抜かりなく行い、受講生からの信頼も厚い。
講義には笑いが必要と豪語し、笑いの取れなかった講義のあとには驚くほど落ち込む傾向にある。
空手、柔道の有段者で、元プロボクサーという異色の経歴を持つが、今やその面影は全くない。