プログラミングは、コンピューターや工場などの特別なものではない
プログラミングというと、コンピューターを使った一部のプログラマーと呼ばれる人の特殊スキルだと思うかもしれません。
そんなイメージがあるかもしれませんが、それは間違いです。
なぜなら、プログラミングというのはコンピューターと関係なく存在しているからです。
コンピューターがない時代であってもプログラミングはありました。
そしてそのプログラミングは、機械やロボットなどの工場・生産現場にある特別なものでもないのです。
プログラミングは思考そのものなのです。
私たちはプログラミングしながら生きている
私たちが動くすべての行動は、プログラミングと共にあるのです。
歩こうとするならば、たとえば、
右足を前に出すという命令を送り、
左足にある体重を右足に移動させて左足を開放し、
その左足を前に出す
というような命令を出しています。
実際にはもっと複雑ですが、私たちが何気なく行っているすべての動作は、すべてプログラミングされたものを利用しているのです。
私たちが生存していくために必要な動作は最初からプログラミングされています。
呼吸したり
手足を動作したり
食べ物を食べたり・・・
しかし、私たちが生存していくこと意外のことは、すべてプログラミングが必要です。
たとえば足し算を覚えることもプログラミングの一つです。
何かを足し合わせるというプログラミングなわけです。
プログラミングとは、単に記憶されたものではなく、それを使って何か生産的な活動を生み出すことができるのです。
プログラミングの概念
学校教育における教育計画は、一種のプログラミングです。
義務教育で学ぶ9年間を経ることで、一定の能力が身につくわけです。
もちろんそこには習得にばらつきはありますが、一定の水準を達成させる再現性があるのです。
たとえば家庭のテレビのリモコンも、毎回違う動きをするわけではなく、同じボタンを押せば同じ動きをするはずです。
これも再現性のあるプログラミングがされているわけです。
つまり、
再現できる手順をどのように組み立てられるのか
ということがプログラミングであるわけです。
家事もプログラミング
私は男性ですが普段から家事をしています。
家事はある意味でプログラミング能力がなければ成り立たない業務だと思います。
家事は手順を間違えると成り立たないのです。
調理もプログラミングです。
素材を手順にそって進めていくことで、料理が出来上がります。
掃除も、どこからどのように掃除をすると効率的なのかが問われます。
洗濯も、天気を予測し、洗濯量を見て、干し場の予測をして、時間との関係はプログラミングであるといえます。
再現性を保ちつつも、条件によってその作業工程を変えるということも、プログラミングにとって大切な要素の1つです。
プログラミングは、工夫ができる
プログラミングをするという観点で考えると、その1つ1つの要素を分解し並べ直すことができるということがわかります。
しかし実際に普段やっていることについて、要素を分解して並び替えていく作業は行いません。
でも、そういうことをする場面というのは必ず起こります。
それは、工夫や改善をしたいと思った時です。
何か時間を短縮したいと思ったとき、あるいは条件が変わった時にそれをやりきらなければならない時に、そうした要素分解をして並び替えをするという作業を頭の中で行います。
たとえば料理でも、いざ調味料を使おうと思ったらなかったという時には、これまでの工程を見て、現在ある調味料を検証し、そこから新しい味を想像して作り出していくわけです。
要素を分解して作り直すことで、工夫や改善ができる
これはプログラミングという考え方で最も大切なスキルとなる要素だと思います。
経営も事業も、ほとんどがプログラミング
経営であっても事業であっても、あらゆる仕事はプログラミングというスキルが求められます。
現在ある要素が何か
足りないものが何か
それによってどんなものが組み上げることができるのか
その結果どんな成果を生み出すのか
ビジネススキルと言われればそれまでですが、これはまさしく、プログラミングができるか/できないかというスキルの問題です。
私は常に何かのディレクション(工程管理)をしていますが、常に要素を洗い出して組み替えるということを行っています。
リアルタイムに、そのようなプログラミングをすれば最善を尽くせるか?ということだけを考えています。
実際、そのスキルさえあれば、仕事で生きていくためのスキルは備わったようなものです。
プログラミングは、生きていくためのスキル
プログラミングは何歳から始めるといいのか?
最近、初等教育におけるプログラミングの必要性について議論が活発になっています。
2020年ころから必修科目になるという噂もあります。
いま巷ではプログラミングスクールが独自で始まっています。
私の子も体験で通わせましたが、そこの教室では未就学児からプログラミングの必要性を説いていました。
あるスクールでは小学校からでないとダメだというところもありました。
私は、プログラミングに年齢は関係ないと考えます。
なぜなら私たちが生きている動作すべてがプログラミングであるからです。
プログラミングはコンピューターを使えるスキルではないので、そこを多少勘違いしている人や教室も多いようです。
そこで私はレコエデュケーションの発売している、レゴを組み立ててiPadからプログラミングして操作できるものを誕生日に買ってあげました。
6歳でも十分に動かしています。
プログラミングというのは、あまりに当たり前の動作であることも多いので、概念を教えるのはなかなか難しいことかもしれません。
そこをコンピューターという、プログラミングでなければ動かない装置を用いてプログラミングの概念を身につけるということはとても良いと思います。
その概念さえ身につけられれば、あらゆる物事をプログラミングに置き換え、その上で、独自のプログラミング構築を行うことができれば、きっと人生も仕事も豊かになっていくのではないかと感じます。
プログラミングは、ライフスキル
私は断言できますし、これからの子供たちにとっては大切なスキルの1つになると思います。