2020年度からプログラミング教育が始まります。
息子が小3なので非常に気になる話題です。
僕と同じように気になって調べている親御さんも多いかと思います。
そんな方にも参考になれば・・と書いてます。
ざっと調べたところ
|
ということでした。
流れはわかったのですが、具体的な内容はわかりません。
わからないですが、とりあえず話を進めます。
子供がプログラミングをする事に対する私見。
そもそも「子供の頃からプログラミングをする」という行為はあまり意味が無い・・と思っています。
理由としては
- プログラミングのスキルはプログラマー以外の職業ではあまり必要とされない
- 子供たちの大半はプログラマー以外の職に就く
- 運動系の職業と違って、子供の頃から取り組まなくても習得は可能
「別の目的」は後述します。
文部科学省のHPを更に見てみます。
色々と難しい言葉で書かれていますが大筋としては、
|
僕は上記のように理解しました。
つまり実践的なプログラミングのスキルを習得するのではなく
「プログラミング的思考」を身につける事を目的としている
と読み取れます。
「プログラミング的思考」って何?
【「プログラミング的思考」とは】
有識者会議「議論の取りまとめ」において「プログラミング的思考」は、
「自分が意図する一連の活動を実現するために、どのような動きの組合せが
必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたら
いいのか、記号の組合せをどのように改善していけば、より意図した活動に
近づくのか、といったことを論理的に考えていく力」小学校プログラミング教育の手引 (文部科学省)より引用
文部科学省からは以上のような説明がありました。
要するに「論理的に考えていく力」を身につければ「プログラミング的思考」が育まれる・・といった内容です。
うーん。「論理的に考えていく力」って、算数や国語からすでに得ることが可能と思います。
「プログラミング的思考」という言葉をつくる必要があるのだろうか?
というのが率直な意見です。
乱暴な言い方をすれば「セールスワード」ではないかと。
これからの時代に合わせて、より強調したい・・という事なのかな。
- 「Scratch」「Viscuit」等、ビジュアル型プログラミング言語を使う
とあります。
世間的にはおそらく「Scratch」が有名ですので、僕が考える
初めてのプログラミングに「Scratch」を使うメリット・デメリット
を書きだしてみます。
「Scratch」のメリット
コードを書くことが無く、ブロック群を中央のコーディングエリアで組み合わせてプログラミングを行うため、遊びながら「論理的な思考力」が育む事が可能。 「Scratch」のデメリット 「Scratch」を勉強しても本職のプログラマーにはなれない。
|
将来プログラマーという職業を目指すか目指さないかで見方が変わってくるかと思います。
個人的には、小学生でも「プログラマーになりたい!」という明確な意思があるのでしたら、普通にRubyやPython、Swift等の自分の目的に合った言語でコードを書けば良いと思います。
敷居は高いですが、本気になった小学生の力をナメてはいけません。
- プログラマーの職を選択するのでしたら「Scratch」はナシ
- 今は特にプログラマーを意識していないのなら「Scratch」は経験としてアリ
僕の子供時代、自転車の練習方法は
|
という流れが一般的でした。
現在は「補助輪付き自転車に乗れる」ようになってから「自転車に乗れる」ようになる・・・という2段階にしないで「補助輪はつけずに最初から2輪で練習すべきだ」という考え方の方が増えているように感じます。
僕もその考え方に賛成です。
そしてプログラミング学習にも適用出来ると思います。
つまり「Scratch」を補助輪として考え、プログラミングを覚えるなら「Scratch」を利用せず、最初から必要な言語を覚えるべき・・という事です。
最近、息子は学校で将来の職業を「プログラマー」と書いたそうです。
それならば実際のプログラム学習を体験してもらいたい。
目的を設定する
体験すると言っても参考書を買ってきて、指示通りにコードを書き始めても意味がありません。
まず、目的を設定します。
前述した「別の目的」の事です。
それは
- 自作のWEBブラウザやアプリを公開すること
上記を目標として設定します。
「自作のWEBブラウザやアプリを公開する」ことを目的と設定して取り組むことにより、プログラム習得のみにかたよらず、実務に役立つ様々な経験を体験出来ると思います。
途中で挫折したとしても経験したことは残ります。
小学生がプログラムを学ぶ手段
では、具体的にどうやってプログラムを学ぶか調べます。
小学生向きのプログラミング教室は市内にいくつかありますが、全てビジュアル型プログラミング言語を使用しています。
今回は大人向きプログラミングの習得手段を探してますので、教室はあきらめてネット上のサービスを検討しました。
|
これから始める初心者には上記のサービスが良さそうです。
サービス内容をここで紹介すると長くなってしまうので、使用感も併せて別記事にしようと思っています。
利用サイト・学ぶ言語を確定
Progateで「HTML&CSS」を学ぶ
と決めました。
理由を簡単に書くと
- Progateは、サイト上でコードを書くため、環境を構築する必要が無い
- 「HTML&CSS」は、プログラムとしては最も簡単な部類
です。
「HTML&CSS」の習得は、PC操作にも慣れるという意味合いもあります。
さっそく登録して始めてもらいました。
この記事を書いている段階で、息子がProgateを利用し始めて約1か月。
ちょこちょこと声をかけつつ進めてもらってます。
進行状況は初級が終わり、中級コースに入ったところ。
課金を始めました。
まあまあ順調なんじゃないでしょうか。
やり始めはキーボードも使えませんでしたが、段々と配置を覚えコピー・ペーストのショートカットも使うようになりました。
今後の方針
|
上記の展開を考えてます。
「Unity」はゲームエンジンですが、言語の習得自体にはあまりこだわっていないので問題ないです。
大人が実際に使うツールを触ることが重要かと。
- 2020年度から始まるプログラミング教育についての私見
- 実際に息子にプログラミングを習ってもらう
上記の内容を記事にしました。
学校での教育で「Scratch」を使用するのは良いと思います。
しかし本気でプログラマーになりたい子供達には、現場で使えるものをそのままチャレンジしてもらった方が良いのでは・・?という事です。
息子にProgateで学んでもらっていますが、途中でわからなくなっても前のチャプターに戻ったり、ググったりしてなんとか解決しようとしています。
ぜひ、コツコツと続けていって欲しいと思っています。
プログラミングの状況は、また進展があったら記事にします。