新入社員研修から「プログラミング研修」がなくなった。
おれもそれがいいと思う。AI がコードを書いてくれるし、研修レベルで身につく程度のプログラミング スキルなんて不要だろう。(好きなやつは勝手にやるしな)
でも、「プログラミング教育」はすっげー大事だよな、と思う。こういうことをいうと混乱させてしまう。どういうことか説明できるよう、まずは文章で整理したい。
結論はこんな感じ。
- プログラミング教育が育てるものは、プログラムを書ける能力ではない。
- 本当に育てたいのは、「変化する世の中に適合できる人材」としての能力。
- 特に重要なのがこの3つ。
- 論理的思考
- 問題解決の能力
- 新しい価値を生みだす能力
まぁ、プログラミング教育の重要性はなんとなく一般化されている気がする。
だって、小学校でプログラミング教育が必修化されたとき、文部科学省は上の結論とほぼ同じことをいっているのだから。
目次
プログラミング教育の本質
2020 年度から小学校で「プログラミング教育」が必修化された。
目的はプログラマーを育てることではない。
問題を解決する力や新しい価値を生み出す力を養うことだ。文部科学省 風にいうと「論理的思考力や創造性、問題解決能力等の育成」となる。(風というか引用なのだが)
「必修化」といっても「プログラミング」という教科が新設されたわけでもない。
(あまり、じっさいの教育現場は知らないが、どうやら)算数・理科などの既存の教科のなかで、プログラミング的思考を育てる学習がおこなわれるようになったそうな。
調べたらいろいろ出てくる。
例えば、算数では「正多角形を描く問題」をこんな風に進める。
前に 100 進む、 右に 72 度回る。
この命令を5回繰り返すと、正五角形が書ける。
児童は:
- 360° ÷ 5 = 72°
- 5回繰り返す
- 命令を並べる
─── ということを考えながら、課題を解いていく。
例えば、理科では「電気がつくライトの制御」がある。
- ひとが近づいたらライトが光る。
- 暗くなったらライトが光る。
- 一定時間後にライトは消える。
こんな制御を体験し、「条件によって動きをかえる」という考え方を学ぶ。
こんな感じに、プログラムを書くことではなく、「どういう手順(方法)なら目的を達成できるか」を考えたり、身の回りの仕組みを理解する学習をしているらしい。
プログラミング研修というと
プログラミング研修というと、プログラミング言語とパソコンをつかって、九九の表を作成したり、サイコロアプリを作ったりする課題を想像する。
ちなみに、おれが新入社員のときのプログラミング研修はそれだった。
まぁ、中途半端にかじったところで、仕事でまったく役に立たなかったよね。
やり方が全然よくなかったんだろうな。
研修っていう環境は、あまり考える時間もない。
分からなければ講師に答えを教えてもらって終わりだ。
「答えの再現」でしかないのだから、プログラミングのチュートリアルですらない。思考を必要とせず、時間を潰してがんばった風にすればクリアな研修で、なにが育つというのか。
(いまの小学生のほうが、よほどまともなプログラミング教育を受けているはず。まぁ、うちの研修は「適性検査」であって、教育ではなかったんだろうが。)
ああ、でもみんなでワイワイしながら課題をするのは学生の延長戦みたいで楽しかったな。それで同期とも仲良くなったと思うし、そういう意味ではアリだったのかなぁ……
プログラミング教育が必要な理由
話をもどして、プログラミングが義務教育に組み込まれた理由を考えてみる。
プログラミングを学ぶ過程では、
- 問題を整理する
- 手順を分解する
- 試行錯誤する
- エラーを分析する
- 原因を探す
- 改善を繰り返す
こうした「思考」を何度も繰り返す。
価値を生み出すための土台となる「プログラミング的思考」が鍛えられる。試行錯誤しながら学ぶことそのものに価値がある、のだろう。
なぜ、プログラミング教育が必要か?
「社会に適応できる人材を育てるため、だろうな」とおれは思う。
「世界で勝ち残るため」の能力と思うひともいるかもしれないし、おれみたいな無能は、もっと目標が低く「世界でなんとか生き残るため」の能力だと思っていたりする。
─── が、やはり「世界で勝ち残るため」なのだろうな。
おれは、なんとなくだが、プログラミング教育こそが次世代のビルゲイツを生み出す方法だと思っている。
ビルゲイツは優秀なプログラマーだが、彼よりも能力の高いひとはいくらでもいる。情報オリンピックでメダルを取る学生であれば、凌駕するテクニックをもっているかもしれない。
ここで、ビルゲイツと、単に能力が優れているひととの違いが明確になる。
アイディアを持っているか。そして、そのアイディアを製品・サービスに結びつける能力があるかどうかだ。
いくらプログラミング能力があっても、アイディアだけでは価値は生まれない。技術を需要と結びつけ、それを製品というカタチにしなければならない。
以前、こんな記事を読んだ。「ある会社では、毎年の新入社員が研修で業務アプリを作り、社内でそれを使う。毎年ひとつずつ便利ツールが増えていく!」というものだ。
これに「スゲーいい研修だなー」と感銘を受けた。
需要を調査し、課題・問題を洗い出し、それを製品にし、価値を生み出す。プログラミング的思考でじっさいにモノを作ってみようというのだ。
そういう経験をしていると、研修後も、自分のタスクを効率化するときにプログラムを組んでみたり、需要をカタチ(アプリ)にするという発想になりやすいらしい。
まぁ、いろいろ述べたが、結局は「AI が生まれて、お金を稼いだのはどういうひとたちだった?」という話が一番説得力が高いのかもしれないな。
もともと世の中の変化に強いやつが、需要をいち早くキャッチし、リビドーをくすぐるアイディアをカタチにしただけだ。「プログラミング的思考」をもっていた猛者が、新しい武器をもって大暴れしていただけだっただろうが、ってね。