こんにちは。どんぶラッコです。
先日、G’s Academyのプログラミング講師として教鞭をとりました。
2日間でHTML / CSS の基礎から JavaScript, そしてAPIやFirebaseの使い方まで(!)を一気通貫で学習をするプログラムです。
そして、その後1ヶ月間自主的に課題に取り組み、最終発表として自分の作品を公開するという結構ハードなスケジュールです。
その中で、講師目線として、「このように授業を受けると理解力が高まるな」と感じたあったので、この場を借りてご紹介します。
「なぜ?」と思う点があったら都度解消する
これに尽きます。
プログラミングの概念にはいくつか暗黙の了解があります。
例えば、上から順番にコードが実行されるというのもそうですね。
上で処理を書いても、下で上書きをしていればその処理の方が優先されます。
この原則を理解しておかないと、”なぜJavaScriptをHTMLの下段で読み込むの?”のような疑問がたくさん湧いてきてしまいます。
今回の授業でも、抑えておきたい大原則は、最初に説明をしました。
我々が日本語を文法を考えることなく操ることができるのと同様に、プログラミングにもいくつかの大原則が存在します。
その原則を理解できていないうちは、「ん?なんでこんなことするんだ?」と理解が進まない場面があります。
例えば…
- なんで
<p>
タグを使って囲わなきゃいけないの?<br>
でも改行できるんだからそれでいいじゃん - なんで
<script>
はHTMLのbody
タグ 一番下に書かなきゃいけないの?head
に書く方法はないの? id
とclass
の違いって何?
…などなどです。
頑張ってググれば出てきますが、せっかく教室に通っているなら、質問をしてしまうのが一番です。
とはいえ、教室が終わった後は自分でプログラムを実装していかなくてはいけません。だから無闇に質問をしてはいけないということも事実です。
ではどうしたらいいのか?
プログラミングスクールにおいて、私はこのように切り分けをすべきだと考えています。
- なぜ?(Why) については質問
- 何(What)、どうやって(How) についてはまずググる。その内容でわからないことがあれば質問
なぜ?の疑問は質問で解消しましょう。
原理原則の部分は自分で調べるよりも経験者に質問する方が早いです。そのための講師・メンターです。
これからプログラミング教室に通われれる皆様、ぜひ教室を使い倒してしまってください!!
何(What)、どうやって(How)は大抵のことはググれば出てきます。実際にエンジニアになった後も多くはググれば解決することが多くて、実際にコーディングしているより設計段階でググる時間を結構使います。
要件をプログラムレベルで考えたときに、取得したい値が見えてくると思うので、それを実際に適切な検索キーワードで検索する力です。
こちらはまた別の機会にエンジニアにおけるググる力については解説していきたいと思います。
とにかく、プログラミングスクールにおいて、講師への質問は「なぜ?」を聞くようにして、本質的な理解をするようにしましょう。