【プログラミング初心者】メンターが必要な5つのポイント





現在、「プログラミングを学ぼう」、「何かを自分で作ってみたい」、「スキルを身に付けたい」という思いを持ったプログラミングに対する初心者・入門者が非常に増加しています。

私はTwitterでアカウントを運用していますが、プログラミングに対して様々な関わりを持つ方と交流しています。

 

その中でも、多くのプログラミング初心者・入門者に対して、”ググればわかる”という安易で乱雑な回答をする方がたくさん存在することを知りました。これは非常に興味深く、教える側も教わる側も気をつけなければならないことだと思い、一つの記事にしてみました。

ご興味があればぜひ一読していただきたいです。

 

独学に限界を感じたなら...
とりあえず独学でプログラミング学習を始めたけど、右も左も分からずあなたの時間が無駄に終わるどころか挫折するかもしれません。

あなたが時間を無駄にした分を回収したいなら【Python】2022年最新!おすすめのオンラインプログラミングスクールをご確認ください!

※期間限定で学習ロードマップを記載しています!

”ググればわかる”はそう簡単なことではない

よく世間でも一般的にわからないことがあれば、”ググる”という検索行為をオススメすることがあると思います。確かに、これはとても有力な問題解決方法の一つに挙げられると思っています。

近年では、コーポレートサイトから個人ブログまで安価な金額で情報発信を始める方々がたくさんいるため、すぐに情報を収集することができるからです。

しかも、Googleの検索エンジンのアルゴリズム上、有益・有用であったり、アクセスを多く手に入れ人気のある記事は検索トップに表示されるよう整えられているので、すぐに知りたい情報を見つけ出すことができます。

 

さらに言えば、基本的に”ググる”ことで問題が解決されるのであれば最高の状態です。

時間こそかかるかもしれませんが、コストをかけることなく、コミュニケーションを誰かにする時間を削り、スムーズに問題解決に取り組めます。これは、まさに理想的な問題解決の一つと言えるでしょう。

当然、プログラマーやシステムエンジニア(専門性で分類される)を目指す方であれば、初心者・入門者のうちから検索に関する訓練に近い取り組みが重要になります。

 

しかし、プログラミングにおいてオンライン学習や教材を基に取り組むことが多いかと思いますが、道筋を作ってもらっている段階でやめてしまう方も少なくありません。

プログラミングは、本来最初からゴールや明確な答えがあるわけではなく、様々な知識と経験から想像し、問題解決へのプロセスを構築していきます。だからこそ、たどり着く先は”ググればわかる”という段階になりましょうと教える側は言葉として放つわけです。

 

そのため、”ググればわかる”というのは数値化できませんが、ある程度の経験者に通用する言葉であり、初心者・入門者の方々にとってこれほど抽象的なものはないかもしれません。

初心者・入門者の方は、ググる行為は理解しているが、検索対象となるキーワードを導けないことに困っているからです。

 

プログラミングを教える側として、この認識の違いを正さなければなりません。
もちろん、教わる側にも整えなければならないものがいくつかあります。

以下でそれらを順に説明していきます。

過去の体験・経験からググる行為は始まる

あなたは、現在の経験値をどのように得られてきたのでしょうか。

それは、あなたの人生の中で起きた過去の体験・経験、そして教育から基づくものです。

 

一つ、教育過程での例を挙げたいと思います。

”数”について学んだことがあると思います。小学校で言えば算数を習い、徹底的に四則演算を学びます。中学校では、方程式や図形の特性、証明なんかも学びました。

高校ではより高度になり、微分積分や確率といったレベルの高い数学に触れ始めます。大学では、学部によりますが、線形代数学や解析学、工学部に所属する人はプログラミング数学や情報理論を学ぶ方もいるでしょう。

 

教育過程での分野はとてもよく分類されており、意識するのは大概5教科と呼ばれる分野です。
数学、国語、英語、理科、社会と呼ばれるものです。

 

ここで、数学にフォーカスしましょう。

数学は、基本的に問題で与えられた数字を計算していきます。それは小学校であっても大学であっても原理原則は変わりません。ただし、扱う問題に対して、知識と経験から利用する公式や定理が変化します。

そして、より理解しなければならないのが、そもそもの問題を理解できているかについてです。
数学においても文章問題や図形だけ示された問題など様々な形で出題されますが、何を求めているのか理解しなければ解答を導くことができません。

 

文章問題で言えば、自然と問題を理解できるか国語力を問われているわけです。大学で数式を扱う論文を執筆している方なら、論文を完成させるために参考文献として過去にあった英語の論文等で英語力を問われる方もいるでしょう。

数学が物理・化学に発展すれば、それは科学に関する分野で応用され、利用するものもあります。
なぜこのような公式・定理が生み出されたのか、誰に利用され喜ばれているのか、社会における歴史を学ぶ人もいると思います。

 

このように何気なく”出来る”状態、すなわち当たり前のように知っているということや発想の手助けとして過去の体験・経験が全てを担っています。そして、これらの経験値があなたの何気ない検索ワードとして言語化され、”ググる”という行為へと繋がっています。

 

ここで、一つ教わる側の注意点があります。

とても重要な内容です。

上記の例は、プログラミングにおいても当てはまるということです。

 

プログラミングとは、プログラムを作成し、人間の意図した処理をコンピュータに指示する行為です。よく、「プログラミングを学んで、アプリケーションを作成したい」、「Webアプリでビジネスをしたい」という人をTwitterで見かけます。

これ自体はとても素晴らしいなと素直に思います。私自身もその1人です。ぜひより良いものを作成してもらいたいし、自身もそうなりたいと心から思います。

 

ただ、プログラミングの行為自体はコードを記述することがメインですが、それだけでは望むものはできません。そもそも自身が望むものを作成するために、プログラミング言語の記述方法だけ理解するだけでは残念ながら作成できないのです。

PC上で必要なインフラであるサーバやデータベース、クラウド、ネットワークやファイル読み書き、データ構造、デザインなど様々な知識が織り交ぜられているということです。
環境によって必要な知識は変化しますが、基本的にコードの記述方法だけではやっていけないのが明らかです。

 

天才に限っては例外ですが、一般的にはプログラミング初心者・入門者の方は、なぜエラーが起きたのか、そもそも対処方法がわからないなど、経験値がないことから検証に至る仮説や検索ワードの知識不足に陥ります。

メンターが必要な理由とは

上記でもお話した通り、あなたは何気なく自然と”ググる”ことができるのは過去の体験・経験によるものです。

 

例としてお話した内容を利用しますが、あなたは経験値を教育という中で培われてきています。
つまり、学校の先生、教授といった方々や家庭環境、友達も含め、あなたの”ググる”ベースを築いています。

 

あなたは必ず今発想できうるものは、どこかで近しいものを見たり、ヒントを周りから教わっていることになります。

 

同時に、あなたはプログラミングにおいてどこかで学びを得なければならないということになります。

 

また、「プログラミングを利用してビジネスしたい」、「営業職から技術職として転職したい」、「IT業界に就職してプログラマーになりたい」など(システムエンジニアであればプログラミングをしない方々もたくさんいます。というよりできない人がたくさんいます。)、高い目標を掲げている人ならばどこまで取り組めば目標に到達できているか計らないといけません。
そんな時に、自身の判断で「ここまで学習したから大丈夫」と明確に基準を持つことができる人は、かなり少ないと思います。

 

だからこそメンターを設けることが重要になります。
もちろん、全ての人がメンターを設けているというわけではありませんが、少なくとも時間をかけず効率的に学習している人は、何気ない出会いを有効活用してメンターを持っている方がいます。

 

こうしてメンターを設けることができた方は、効率的かつ学習速度を速めながら取り組むことを実現しています。

メンターを選ぶコツ

とはいえ、プログラミング経験者の方の全てがメンターになるわけではありません。
”教える”という行為は、プログラミングの技術とは異なるからです。

 

私の中で、メンターを選ぶポイントが2つあります。

 

1. リーダーシップ性

 

このリーダーシップとは、目標を定め、成果を出す能力のことです。
あなたが目標にしていることに対して、間違った方向に努力させない道しるべを計画してくれる人を探してください。

 

車を買う目標を立てても、車の運転方法を知らなければ意味がありません。
車を運転せず眺めるだけで幸せな方がいれば購入するだけで達成できますが、そのような目標の人は稀でしょう。

 

このように、目標に対して取り組むべき方向とプロセスを指し示してくれる人が重要になります。
そのため、そういった方が見つかれば、何をしたいのか教わる側も明確に伝える必要があります。
真剣に取り組みたい人は、まとめておくとよいかもしれません。

 

2. マネジメント管理

 

リーダーシップによる目標へのプロセスを指し示す能力ともう一つ重要なのが、マネジメント力です。
あなたがプログラミングに対して、理解できない、わからない、知らないといった状態になった時、一例を出したり、必要な知識やググる方法など教えてくれる方を探してください。

 

例えるなら、”母親”のような人です。

 

「ハンカチ持った?」
「教科書カバンに入れた?」
「朝ごはん食べた?」
「今日雨だから傘持って行きなさい」
「今日はこの後、用事があるから○○時までに宿題しときなよ?」

 

といったように、自身の行動に対して様々なヒントやアドバイスをくれる人は、きっとあなたの努力を笑ったりしません。
一生懸命な人を放っておけない人をぜひメンターにしてください。
この人を目標に、努力しようと思える人を見つけてください。

 

これはとてもお節介なように見えるかもしれませんが、あなた自身が当たり前のように知っている知識や経験は、小学校・中学校だけでも9年間の長い年月をかけて養われたものです。
プログラミングにおいても、1ヶ月程度でうまくいく人は天才の分類です。私自身、大学で4年間学び、ようやく基礎をインプットできただけだと思ってます。
自由自在に扱えるようになるのはとても難しいということです。求めているスキルのレベルにもよりますが、習得したいならなおさら簡単に理解できるレベルではないことを念頭に置いておく必要があります。

自己投資は惜しみなく

もうネットがなければ生活できないレベルに社会がなっています。
私も、小さい頃からネット社会だったので、当たり前のようにPCがあり、スマートフォンがある時代で育ちました。

 

そして、あらゆるものがとても簡単に操作できるような時代です。
だからこそ、何かを生み出す・創造するという立場になるのは、簡単なことではありません。

 

先ほども、上記で小学校・中学校だけでも9年間の教育があることを話しましたが、この教育にも教育費が投入されています。
あなたが当たり前のように何かを知る・理解する・創造する方法を身に付けるまでに、教育への費用があったはずです。

 

プログラミングも同じです。
独学でかつネットの情報のみでやり切れると考えている人は甘いと言わざるを得ません。
そして冒頭でも記載した通り、”ググる”という検索行為ができるとは思えません。
プログラミング全般に対する語彙力が乏しいわけですから。
趣味程度で良いなら構いませんが、趣味も極める方がずっと楽しいです。

 

当然、あなたの目標がどれだけのものか知ることはできません。
様々な理由で取り組む人がいると思います。

 

今一度伝えておきたいのが、これまでの内容を踏まえて効率的に時間とコストをかけてほしいのです。
そのために自己投資をすることは有効だと私は思っています。
1人で継続するのはとても困難だからこそ、環境を変える提案をしたいのです。

まとめ

1. ググればわかるは経験者のみ
2. プログラミングにも学ぶプロセスがある
3. メンターを設けることも考える
4. メンターをしっかり選ぶ
5. 学ぶことは時間とコストの自己投資

 

ここまでで私が経験したこと、経験から感じたことを綴りましたが、あなたが目標と定めたことに対して正しくプログラミング脳をインストールしてくれる人を探すのも手かもしれません。
また、プログラミング初心者・入門者の方が問題を抱えた時、問題解決の方法と情報収集力が備わっていて初めてプログラミング全体のプロセスが言語化することができ、未知の課題を解決していくことができます。

 

そして、プログラミングにおける”ググればわかる”という領域に到達すると思います。
ここまでを一読していただき、ありがとうございました。

 



ABOUTこの記事をかいた人

sugi

大学卒業後、IT企業に就職を果たす。システム開発・人工知能に触れながら大手企業と業務をこなす。2年半後脱サラし、フリーランス活動経験を経て 2019年2月から起業し、今に至る。 自社サービス及び製品を開発、ブログ収入、クラウドソーシングなど、多方面で売り上げを立てている。