プログラミングが理解できない人にどう教える?原因や育成方法を解説
目次[非表示]
- 1.プログラミングが苦手な人、どう育てる?
- 1.1.プログラミングは教えるのが難しい
- 1.2.個々のレベルに応じた教育が必須
- 2.プログラミングが理解できない理由
- 2.1.何となく苦手意識がある
- 2.2.英文が難しいと感じている
- 2.3.学ぶ目的を理解していない
- 2.4.物事を論理的に考えるのが苦手である
- 3.プログラミングを理解させるための第一歩
- 3.1.まず全体像を把握してもらう
- 3.2.「暗記」ではなく「論理」だと教える
- 4.苦手意識を持っている人を育てるコツ
- 4.1.「何が分からないのか」を明らかにする
- 4.2.目的と結果を明示する
- 4.3.気軽に質問できる環境を作る
- 5.「理解できない」を克服してもらう行動を
プログラミングが苦手な人、どう育てる?
プログラミングに対して『苦手』『理解できない』と思っている社員に対して、手を焼いている担当者もいるでしょう。未経験者を採用してもなかなか技術を習得させられず、苦労するケースもあります。 まずは採用に関わる人事担当者、教育担当者はプログラミングを教えるのが難しい理由やレベル別に教育を分ける必要性を知り、自社での教育方針を考える糸口としましょう。
問題解決力を身に付ける若手、新人SE・PG向けの通年Java研修(1~3ヶ月コース)はこちら
(出(出典) pexels.com
プログラミングは教えるのが難しい
プログラミングは他の技術よりも、教えるのが難しい分野だと考えられています。体系的に理解しにくい概念を用いるため、経験がないととっつきにくいと感じるのが一つの理由です。
若手、新人エンジニアの成長を阻む 人材育成5つの失敗と解決策はこちら
現在は学校でもプログラミング教育が導入され始めましたが、社会人の年齢になっている未経験者は独学か入社後の研修で学ぶケースがほとんどです。 『プログラミングとは何か』を学ぶところからのスタートになる人も多いでしょう。
企業で育成を担当している人自身がエンジニアだと、基礎を飛ばして教えてしまいがちです。 優秀なエンジニアが優れた講師になるとは限りません。自分が理解できている概念を未経験者が分かるレベルに落とし込めず、育成が進まないケースもあります。
個々のレベルに応じた教育が必須
キャリア採用しかしないのであれば、ある程度はエンジニアのスキルレベルをそろえることも可能です。 しかし未経験者だと、一人ひとりの素養やプログラミングに対する理解度が大きく変わります。それぞれのレベルに応じた教育をしなければなりません。
実務経験がなくてもプログラミングが好きな人や素養がある人は、多くが自ら学習してより高いレベルを目指せます。学習環境を整えるだけで成長する場合が多いでしょう。
逆にプログラミングに対して「理解できない」「苦手だ」と思っている人は、丁寧に育成しないと自社で活躍する人材に育ちません。苦手意識がある人たちの中でも個々のレベル別に、理解を促す教育が求められます。
■関連記事
プログラミングが理解できない理由
(出典) pexels.com
エンジニアとして実務経験が長い担当者ほど、未経験者やキャリアの浅い人の悩みを忘れがちです。個々に合った育成を行うには、『なぜプログラミングが理解できないのか』を把握する必要があります。
学歴、学部による「IT知識」「基礎知識」の格差を無くす個別指導の新人研修プロエンジニア育成コース(Java2・3ヶ月コース)はこちら
何となく苦手意識がある
「何となく」という漠然とした理由から、プログラミングに苦手意識を持っている初心者は多くいます。特に社内で非エンジニア職から転向させる場合、プログラミングに興味すら持ったことがない人も育成対象になるでしょう。
自分の中で苦手な理由が明らかになっておらず、うまく言語化できないケースも珍しくありません。何が分からないのか明確でないため、プログラミングが理解できないと決めつけてしまっているのです。
さらに「自分は文系だから」といったステレオタイプな思い込みにより、本格的に学習を始めることなくプログラミングが苦手だと思っている人もいます。 しかしプログラミングは単なるコンピューターへの命令であり、対人の業務指示と本質的には変わりません。漠然とした苦手意識を持つ人に対しては、『とっつきにくい』というイメージを払しょくする働き掛けが必要です。
英文が難しいと感じている
コンピュータープログラムは基本的に英文で記述するため、英語が苦手な人はプログラミングにも苦手意識を持ちやすくなります。 ただプログラミングには基礎的な英語力が求められますが、コードに使用する一定の英単語さえ覚えてしまえばプログラムの読み書きはできます。学生時代に英語が嫌いだった人でも、プログラミングは問題なく習得できるのです。
しかし英語が苦手な人は基本的なコードを覚える前に、英単語の羅列を見ただけで「何が何だか分からない」と感じてしまいます。 最初はプログラムに関連する単語の意味だけ覚えればいいと、教育する側が安心感を与える必要があるでしょう。
学ぶ目的を理解していない
プログラミングを学べば具体的に何が実現できるのか、どういう結果になるのかを理解できていない場合、ゴールがイメージできず苦手意識を持ちやすくなります。
例えば車が動く原理や使う目的を知らないままエンジンの仕組みを学んだとしても、作業の目的や意図は分からないでしょう。 プログラミングでも同じことがいえます。コードを書いた先の完成形・そのシステムで何ができるのか知らなければ、逆算して仕組みを理解するのが難しくなります。 学んでいるプログラムと具体的な活用法を結び付けられないのは、初心者が『理解できない』状態を作る要因の一つです。
物事を論理的に考えるのが苦手である
プログラミングはコンピューターに命令を与えて、特定の処理をさせる技術です。コンピューターは与えられた命令にのみ従うので、徹底した論理的思考(ロジカンルシンキング)に基づいてプログラムを書かなければなりません。 論理的な思考は人によって得意・不得意があるため、物事を筋道立てて考えるのが苦手な人はプログラミングを理解できないと感じやすくなります。
ただし論理的な思考はコツをつかめば身に付くスキルです。未経験者の採用や非エンジニア職からの転換では、論理的思考を養えるような育成が欠かせません。
■関連記事
プログラミングを理解させるための第一歩
(出典) pexels.com
プログラミングを理解できない人の背景が分かると、育成に必要な施策が見えてくるのではないでしょうか。 ただ複数の問題を一気に解決しようとすると、研修の方向性が定まらなくなります。プログラミングを理解してもらう第一歩として重要なポイントから、育成をスタートしましょう。
まず全体像を把握してもらう
エンジニアやプログラマーの経験がない人にプログラミングを教える場合、全体像を把握させる取り組みをスタートラインにする必要があります。 プログラミングが何を目的としているのかを理解できなければ、どれほど丁寧にコードの書き方を解説しても、苦手な人にとっては『雲をつかむような話』に感じられてしまうでしょう。
これから覚えるプログラミングで作るものと、制作する目的を共有する必要があります。そこからコードの全体像・実現する処理という流れで説明すると効果的です。 目の前のコードと最終的な目的を結び付けて考えられるようにすれば、プログラミングが苦手な人でも理解が進みやすくなるはずです。
「暗記」ではなく「論理」だと教える
プログラミングが苦手な人の中には、コードを丸暗記しなければならないと考えている人も少なくないようです。 しかしプログラミングは暗記するものではありません。基本的な文法を理解して論理的に記述することで、コンピューターに思い通りの命令を出す技術です。
書き方のルールを覚えた上で『自分の言葉』でプログラムを書けるようになる必要がある点を、初心者にしっかりと教えなければなりません。 やみくもにコードを暗記しようとする人と自分なりにアウトプットを続ける初心者とでは、後者の方が圧倒的に上達が早くなります。
■関連記事
苦手意識を持っている人を育てるコツ
(出典) pexels.com
プログラミングに苦手意識を持つ人を育てるには、一人ひとりのプログラミングの素養を把握した上でレベルに合わせた教育をしなければなりません。育成する立場として覚えておきたいポイントを二つ紹介します。
個別指導の新人研修プロエンジニア育成コース(Java2・3ヶ月コース)資料ダウンロードはこちら
「何が分からないのか」を明らかにする
プログラミングが理解できない人の多くは、何が分からないのか自分でも明確に理解できていない状態にあります。教える側としてまず取り組みたいのは、理解できない部分を徹底的に洗い出すことです。
初心が分からない部分を放置したまま新しい知識やスキルを学ばせてしまうと、ついて行けずプログラミングに対する苦手意識がさらに大きくなってしまうでしょう。 定期的に時間を取って質問を受け付ける・小まめに面談をするといった工夫で、分からない部分を把握する必要があります。理解が難しい部分に絞って研修を行えば、社内のリソースも無駄に割かずに済むでしょう。
目的と結果を明示する
プログラミングを教える人によっては、目的や結果を説明せずに「とにかく覚えろ」「書けるようになれ」といった教え方をする場合もあります。特にOJTで全てを覚えさせる体制だとよくあるケースです。
しかし目的や結果を明示せずにコードだけ覚えても、全体像を把握できず理解が進みません。書いたコードが何の役に立っているか分からなければ、学習のモチベーションも下がってしまうでしょう。
またプログラムを書く目的は、ゴールとなる制作物を完成させることです。目先のコードだけを教えていても、最終目標から逆算する能力は育ちません。 ジョブサポートの『プロエンジニア育成コース』では、レベルに合わせた個別研修で開発環境や言語が変わっても対応できる基礎力を育てられます。 ゴールを軸にプログラミングを理解できるエンジニアへ効率的に育てたいなら、活用を検討しましょう。
気軽に質問できる環境を作る
プログラミングの学習は気軽に質問できる環境があるかどうかで、習熟度に大きな差が出てきます。エラーの頻発で挫折してしまったり、何をどのような順番で学ぶべきか分からなくなってしまったりするケースは少なくありません。
教わる側と積極的にコミュニケーションを取りながら、気軽に質問できる関係を構築するのも教育担当者の重要な仕事です。 定期的に相談に乗ったりフィードバックをしたりすることで、より理解を深められるようになり、プログラミング学習のモチベーションも上がります。
■関連記事
「理解できない」を克服してもらう行動を
(出典) pexels.com
プログラミングが理解できないと感じている人の多くは、何となく苦手意識があったりコードを書く目的が分かっていなかったりする場合がほとんどです。 まずは『なぜ理解できないのか』を明確にし、初心者・未経験者のレベルに合わせて育成していく施策が求められます。プログラムを作ることで何を成し遂げられるのか、共有すると理解が進みやすくなるでしょう。
教える側がエンジニア・プログラマーだった場合、教育のプロではないと自覚する意識も必要になります。社内研修のノウハウやリソースが足りないなら、外部研修の利用も選択肢です。 ヒアリング・相談の受け付けなど成長しやすい環境も整えて、プログラミングを理解できない人材の戦力化を図りましょう。