【藤原和博】プログラミングが養う、人生100年時代を「生きるチカラ」
コメント
注目のコメント
学校でプログラミングを必修にしてしまうことのメリット・デメリットはあると思います。
・学校で中途半端にしか習っておらず、プログラミングの深遠さにふれる前に「自分は極めた」と思ってしまう変な万能感
・いやいややらされることによる嫌悪感
を与えてしまわないかと不安にも思っています。
私は中高生に「いまからプログラミングを始めないと遅いでしょうか」という質問をよく受けます。そんなときは「論理的思考を育てる国語、プログラミングの基礎となる数学、情報を収集し発信するための英語をまず磨いてください。すなわち、いまやっていることを一生懸命研ぎ澄ませてください。それからでも遅くありません。その上で、自分でやりたいなら止めませんが、その他の教科をそっちのけでやることはおすすめしません。」と伝えることにしています。
多分、いまプログラミング教育が上手く行っているのは黎明期で熱意のある先生方がいて、学生に好きにさせているからではと思わなくもないです。入試教科になってしまうと、途端にテクニックや受験対策に走ってしまうし、逆に入試教科にならないと中途半端な「おまけ」扱いをされていまう。不幸なことです。
正直に言うと、学生時代の音楽や美術、体育はすごく嫌いでした。自分自身得意でもないのに強制的に得意な他人と競争させられ、順位が付けられる。けど、大人になって自分で勉強したり体験したりすることでどれもとても大好きになったのです。この差ってなんだろう?と振り返ったとき、学校では他人との競争、今の自分は過去の自分との競争なんですよね。プログラミングでも過去の自分との競争に持っていけると良いなと思います。
プログラミング、いまは避けて通れないのかもしれません。それならそれで仕方のないことでしょう。それなら、楽しい!素晴らしい!もっと学びたい!と思ってもらえる教育をしてあげたいと切に願います。向き、不向きはあると思う。
私自身は大学時代の授業で「簡単な問題を自分で設定してパンチカードに打ち込み、大学の計算機センターでプログラムを走らせてその問題を解け」という宿題をやらされた。パンチカード時代である(笑)。そのときの問題は「同じクラスの同級生が何人以上いれば、同じ誕生日の人がいる確率が50%以上になるか」という他愛もないものだった。20数人とか、案外少なかったことを覚えている。
結局、私は向いていなかった。だから、今でもIT系の諸活動ではその道のプロとタッグを組んでいる。
小学校からプログラミング教育を必修とする必要があるかないかについても、意見は分かれるだろう。向き、不向きがあるからだ。
それでも、私がひょっとすると有効かもしれないと思うのは、日本語というリテラシーや英語というリテラシーより、コンピュータ言語のリテラシーの方が話しやすい子もいる可能性があるからだ。ビル・ゲイツもそうだと言っているように、ちょっと昔でいうアスペルガー系の軽度発達障害のある子(現在は自閉症スペクトラム)の一部に、プログラミングという言語を獲得することで天才化するケースがあることが知られている。一条高校での実践でも短期間に進化する子がいた。
ただし、プログラミング言語もコンピュータを動かす道具にすぎないし、それ自体を目的化して語るのはどうかと思う。
そこで本文では、私がこれからの世の中を動かすのに必須の力として以前から指摘している「情報編集力」(正解のない課題について、自ら仮説を出し、試行錯誤しながら納得できる仮説=納得解を創造する力)について解説した。
その構成要素は以下の5つのリテラシーだ。
(1)コミュニケーション(異なる考えを持つ他者と交流しながら自分を成長させる技術)
(2)ロジック(常識や前例を疑いながら柔らかく"複眼思考"する技術)
(3)シミュレーション(頭の中でモデルを描き試行錯誤しながら類推する技術)
(4)ロールプレイ(他者の立場になり考えや思いを想像する技術)
(5)プレゼンテーション(相手とアイディアを共有するための表現技術)
書籍を乱読することで(1)や(4)が鍛えられるが、おそらくプログラミングの学習では(2)と(3)が鍛えられる。
(5)のプレゼン技術については(1)から(4)の総合芸術だと思う。アナタ、自分の乗っている車のエンジンの調整出来ますか?
自分で車検通せますか?
ネジのトルクだとかいちいち知らなくても操作方法わかれば運転出来ますよね。
プログラミングも、全く仕組みを知らないのが良いとは言いませんが、みんながメカニック(プログラマ)を目指します?
こういう記事見ると踊らされてるなあ、、と少し感じなくも。
バズりやすいのかスポンサードなのか本やセミナーの為なのかわかりませんけれど。
ツール(ソフトやOS、アプリケーション)が上手く使える事が、本職プログラマ以外の方には生産性上げる事になるんじゃないですかねぇ。
自動車で言えば、自動車の作り方やメカニックの技術を学ぶのではなくて、必要なのは安全運転講習。そういう事です。
プログラミング=論理的思考
というのも少し違う気がして、プログラムの為に設計に落とし込んでいくのは確かに論理的な思考を使ったりするかもしれませんが、ソースコード書く時はセオリーとルールに沿って記述しながら処理を捌くだけで、頭は殆ど使いませんよ。初心者が頭を使った気になるのは、知らない事が多く都度調べたりする為に難しく感じるだけで、論理的思考?してますかね?
もっとも、プログラムは書いた通りにしか動かないし、書いてない命令は実行しませんし。それをもって論理的というならば、そうなのかも知れませんが。
興味を持つ事は良い思います。DIYでもスポーツその他趣味でも何でも。新しい事始めるのは刺激になりますもんね。