春到来ですね。
新しい事をスタートするのに、もってこいの季節がやってきました。
プログラミングスクールコードも、順調に生徒さんが増え続けている
ところです。
「とりあえずパソコンを習わせておきたい」
「今のうちにプログラミングを学ばせておいて、就職に有利にしたい。
実際にプログラマーになるかは、わからないけど。」
「もともとパソコン好きなので、それを伸ばしてあげたい。」
などなど、親御様から頂く、要望は様々です。
プログラミング教育は始まったばかり。改善を繰り返す。
小学校のプログラミング必修化が近づいてきております。
それどころか、大学入試の科目に採用される事が決まっております。⇒
大学入試でプログラミング?さらに小中高必修化がすぐそこに
ただ、日本のプログラミング教育はまだ始まったばかりです。
特に学生向けについては、いまだ試行錯誤中です。
例えば小学校・低学年の子にプログラミングを教える場合、どうでしょうか?
小学生と中学生はプログラミング学習のスタートが違う
これまで、当スクールでも多くの小学生に教えてきました。
試しました。いろんな方法を。
出た結論は、
①小学生はブロックプログラミングとブラインドタッチから始める。
②中学生以上はいきなりプログラミング言語を学ぶところから始める。
と、いうものになりました。
プログラミング言語を理解し、コードを書く事がゴールになる
まずは、プログラミング学習を何から始めるかを書く前に、プログラミング学習の
ゴールについて考えたいと。
プログラミング学習のゴールは、プログラミング言語を理解し、各種アプリやゲームの
制作ができるようになる。というのが一般的にわかりやすいゴールかと。
そのためには、コードと呼ばれる英語と数字と記号の羅列を書くスキルが必要です。
一方プログラミングの教育現場では、どうなっているのか?
無料でプログラミング学習ができるという触れ込みで、多くの教室でスクラッチが
採用されました。
そのせいか、この画面がプログラミングそのものだと、思われている
親御様もいらっしゃいます。
この謎の猫の愛くるしさがそういった誤解を生んでいるのかもしれません。
ここで書くまでもなく、プログラミングとはこの謎の猫の事ではありません。
これの事です。
どうですか?猫の愛くるしさ要素ゼロのこの感じ。
よく映画とかでハッカーとかがカリカリやってるあの画面です。
コーディングとスクラッチには大きな川が流れている
じゃあ、先程の猫はなんなのか?どのような生物なのか?
どこからやってきたのか?
スクラッチは、ブロックプログラミングと言われている、
プログラミングの考え方を学ぶためのゲームウェアです。
猫はそのイメージキャラクターとして、この世に生を受けました。
あくまで、プログラミングの考え方を学ぶためのものなので、
これを極めてもプログラマーにはなれません。
そして、ゴールとしているコーディングスキルとの間には、
大きな隔たりがあります。
子供へのプログラミング学習は、コーディングから始めるべきか
ここが今回のブログで取り上げたいテーマです。
僕の結論としては、コーディングから始めるべきだと思います。
しかし、あくまで中学生以上からという条件がつきます。
制約のあるブロックプログラミングでゲームを作っても、
それはあくまでそのゲームウェア内で制限されたものしか作る事ができないからです。
どうせ勉強しなくてはならないのだから、最初からコーディングを始める
べきです。
一方小学生の方はどうか?
小学生の低学年、つまり6歳ぐらいの子にプログラミングを
教える場合、どうしてもコーディングから教えるのは厳しいです。
国語力と集中力の、2つの問題があるからです。
小学生向けプログラミング教育の、2つの問題
国語力の問題は、いかんともしがたいです。
コーディングとは、プログラミング言語を学ぶ事なので、
ある種の国語力が要求されます。
日本語の基本構造が、頭の中にある状況で、ようやく
学習に取り掛かる事ができると。
また集中力の問題は、プログラミングに限らず小さな子に一つの事をさせ続ける
事の難しさに帰属しています。集中力を持続させるには、ゲーム性が
不可欠といえます。
しかし、、、。
コーディングを学習していく最初の時期はブロックプログラミングに比べて
かなり見た目が地味。
ブロックプログラミングは、絵を組み合わせれば、10分くらいで
ゲームを作る事ができます。(あくまで、そのソフトの中だけで動くゲームですが)
一方、本物のプログラミング学習は、最初の方は、
パソコンに「おはよう」と表示させたり、、、、、。
そのため、小学生の低学年の子だとすぐに飽きるパターンも
ありました。
そういう訳で、小学生のプログラミングは段階を踏んでコーディングにたどり着く。
2年近く、試行錯誤を繰り返す事で当スクールのカリキュラムも
だいぶブラッシュアップされてきました。
今なら、小学生の低学年の子に対して、
タッチタイピングのトレーニング
ブロックプログラミング
この2本柱でスタートします。
タッチタイピングは、コーディングの学習に移行する際に
スムーズに入力ができるようにするためです。
さらにブロックプログラミングでは3種類ゲームを
用意して、生徒の興味が持続するように工夫する方法を考えました。
3つのブロックプログラミング
当スクールでは、生徒さんの個性や、進捗に合わせて
3つのブロックプログラミングで遊びながら学んで頂きます。
コードスタジオ
6才ぐらいの子でも、直感的にどうやればいいのか理解しやすく、プログラミングの
取っ掛かりとしてはじめやすいです。
漢字が読めなくても、何を解決すればクリアできるのか、絵によって理解できます。
コードモンキー
当スクールでは、コードスタジオをクリアした生徒に対して、
次のステージとしてプレイしてもらっています。
課題が直感的にわかりやすいのはコードスタジオと同じです。
コーヒースクリプトという、実際のプログラミング言語を入力しながらゲームを
クリアしていく構成です。そのため、コードスタジオよりも実践的です。
インデントなど、プログラミング言語の文法にも気をつけないとエラーが出ます。
コードコンバット
こちらも、コードモンキーと同じようにプログラミングを実際に
入力しながら、ゲームをクリアしていきます。今をときめくパイソンという
言語を学ぶ事ができます。入力補助機能がついているので、小さい子でも
全部コードを入力する必要はなく、サッと書く事ができます。
コードモンキーよりもプログラミングを書く量も単純に増えます。
こんな感じで、主に3つのブロックプログラミングゲームを、
その子の好みや理解度を勘案しながらプレイしてもらっています。
いよいよ本格的なコーディングに移行する
3つのブロックプログラミングをこなし、考え方やタイピングがある
程度身についてきた子に対しては、徐々にコーディングに移行していきます。
ここからは、本を使います。
この本で内容をパソコンに入力し、どう動くかを確認しながら
進めていきます。
プログラミング言語を日本語として、訳しちゃってるところが
今までありそうで無かった点です。
「黄色いマーカーのプログラミングを入力すれば、画面に
ハローと入力されるんだろうなぁ」という事がわかると思います。
子供向けプログラミング教育の始め方
いかがでしたか?この2年でプログラミング教育のノウハウも
だいぶ溜まってきました。
・小学校低学年向けのプログラミング学習は、国語力と集中力の
2つの問題をクリアする必要がある。
・ブロックプログラミングとタイピングで遊びながら、少しずつ
コーディングに移行していく。
・複数の種類のブロックプログラミングで、生徒の理解度に合わせ
ながら学習を進めていく。
今回は、こんな感じでしょうか。今後もブラッシュアップを続けて
より良い教育現場を作っていきたいと。そう思う次第です。それでは、また。