こんにちは!好奇心おばけのかわそん (@KKohey4)です!
本記事の内容
- 「プログラミングがわからない」は7種類
- 簡単に解決できる
この記事を書いている僕は、年間50人以上の中高生にプログラミングを教えています。
その中で、「わかりません」とたくさん質問されてきました。
でも、つまづいてるパターンは同じ。
解決策も、いつも同じ。
そこで今回は、そんな経験をもとにして書きます。
必ず、思い当たる節があるはずです(`・ω・´)ゞ
目次
[初心者]プログラミングがわからない?→7種類あります[解決]
結論から。初心者の「わからない」はこの7つに分類できます。
- そもそも、苦手意識がある
- 基礎的な用語がわかっていない
- エラー文の意味がわからない
- 英語がわからない[思い込み]
- 概念が理解できない
- 処理のフローがわかっていない
- ググり方、その大切さがわからない
順番に説明します。
①そもそも、苦手意識がある
そもそも苦手意識を持ってるパターンです。
プログラミング=難しいもの、数学に近いものっていうイメージ
挫折した経験
この辺りが原因です。
ピーマンが苦手だと思ってる僕は、いくら「食べなよ〜」ってオススメされても、好きにはなりません。
同じです。
②基礎的な用語がわかっていない
用語がわからないだけなのに、プログラミング自体がわからないって思い込んでます。
引数、メソッド、クラス
この辺りの「プログラミングで使う言葉」
関数、モデル
この辺りの「他とは意味が違うもの」
ごちゃごちゃになって、わけわからなくなってます。
③エラー文が何を言っているか、わからない
下記のツイートをご覧ください。
僕がプログラミング初心者に相談されるエラーって
・スペルミス,全角ミス7割
・シェルのアタッチ,権限周り1割
・ちょっと重め2割
っていう感じ😌自力で解決しようとしてソースと睨めっこの挙句、数時間消耗する事も多い.
最初は経験者に素直に聞く人が伸びてる。#駆け出しエンジニアと繋がりたい
— かわそん/Web大好きマン (@KKohey4) 2019年3月19日
このエラー。
解決方法は、エラー文を読んだだけです。
ですが、最初はわけわからないです。
ほんとに。
もし、さっきみたいに、用語がわかってなかったら、なおさらですね。
例えば、「Argument Error」って出た時。
ググっても、「引数が違う」って返ってくるだけ。
引数ってなんだ、、? 結局、どこが違うんだ、、?
「わからない」の渋滞です。
④英語がわからない[思い込み]
英語がわからない=プログラミングがわからない
こう思ってるパターン。
例えば、同じ例なのですが、「Argument Error」
「Argument」なんて、普通に訳したら、「議論」ですよね。
一発で「引数」なんて訳せません。
ここが苦手になってる人も多く、思い込みです。後から、説明します。
⑤概念が理解できない
プログラミングは、「足元」ほど、わかりづらいです。
どういうことか。上図をご覧ください。
僕たちが普段、ストアからダウンロードしたり、触ってるアプリは、一番上です。
馴染みがありますよね。
でも、その時にどんな通信が行われてるか、、、
考えたことありますか?
ぶっちゃけ、難しいです。
ここまで、いきなり勉強しないといけないと思って、混乱してます。
⑥処理のフローがわかっていない
実行される順番がわかってないやつです。
プログラムが動くには、順番があります。
最初にこのファイルが読まれて、次にこの関数が動いて、、
みたいな。
これをざっくりにでも理解していないと、応用が全くできません。
⑦ググり方、その大切さがわからない
ググりましょう。大切です。
、、これがですね、どれだけ言っても伝わらないわけなんですよね。
残念ながら。
まあ考えてみれば、普段
って思える人が多くないのはあり得るかなと。
ぜんぶ、自分の頭で解決しようとして、人に頼らない。結果、わからないって感じです。
7つの「わからない」の解決方法
「わからない」を7つに分けました。
解決策を一言でいうと、
- そもそも、苦手意識がある
→成功体験から - 基礎的な用語がわかっていない
→組み替え - エラー文の意味がわからない
→別記事 - 英語がわからない
→Google翻訳 - 概念が理解できない
→あきらめよう - 処理のフローがわかっていない
→気になった時に調べるだけ - ググり方、その大切さがわからない
→慣れです
上記の通り。
✔️①苦手なら、最初は小さい成功から始めればOKです。
プログラミングは、難しくありません。
もし、過去に挫折経験があるなら、こちらをどうぞ。
✔️②用語の理解は、「組み立てなおす」べき
人の言葉や説明って頭に入りにくいです。
自分の理解しやすい形に組み替えましょう。
繰り返してるうちに、ストンと自分の頭に落ちてくる瞬間がありますよ。
✔️③エラーの解決方法
朗報でして、別記事を用意しました。
質問されることが多いですので。
✔️④英語がわからなくてもOKです。
Google翻訳を使えば、問題ないです。
難しいのは「英語を読み始める」っていう最初のハードルだけですよ。
[優先順位アリ]プログラミングに英語は必要?[結論:最低限で十分]
✔️⑤概念の理解はあきらめよう
どう考えても、初心者には荷が重いです。
後から、繋がってくるので、最初はざっくり理解でOKです。
✔️⑥処理のフローは、気になった時に調べる
これも同じ。
最初から、完璧に理解しようとすると、ハマります。
コーディングに慣れてきたら、ちょっとずつ、調べ始めればいいですよ。
✔️⑦ググり方には、コツがあります。
ググることに最初は抵抗あるかもです。
でも、プログラミングをやっていくなら、必須です。
ですので、ググる癖をつけましょう。
コツについては、こちらが参考になると思います。
「わからない」を効率よくクリアする方法
解決方法をご紹介しました。
ぶっちゃけ、聞いても、何から手をつけたらいいのか、わからないかなと。
- 人に教えてみる
- いろいろテストしてみる
これから始めてみるといいですね。
上記7つを知った後で、これをやると、「自分がごまかしてるところ」がわかるので。
例えば、
と聞かれた時の頭の中。
(しかも、インスタンスってどうやって説明したらいいんだろう?)
あと、コードの中の数字をいじってみる
あ、ここって意味わかんなかったけど、こんな処理してたんだ!
こんな納得感が出てくるので、一歩先に進めます。
最後に:楽しみながら、ある程度の気楽さをもつのも大事ですよ。
記事のポイントをまとめておきます。
- 「わからない」は7種類あります。
- 解決策も紹介しました
- 人に教えてみる
- コードをいじってみる
- 自分の「ごまかし」に気がつきます。
こんな感じですね。
ぶっちゃけ、初心者の方がつまづくのは、どれかに当てはまるはず。
プログラミングって、最初はしんどいです。
ですが、徐々に慣れてきますので、ファイトです。(`・ω・´)ゞ
以上です。
この記事がモヤモヤを言語化するために、少しでもお役に立てれば幸いです。
✔️記事中で紹介したリンク
✔️参考記事
できればプログラミング経験者から、初心者がいう『わからない』の中身を解説して欲しいです。」