小学校から必修化されるということでプログラミング教育が注目されていますが、プログラミングとは何なのでしょうか? 今回は最初ということでプログラミングとは何ぞやについて書いてみたいとおもいます。
プログラミングは世の中にある機械に指示をだす
身の回りを見渡してみると今の世の中、ありとあらゆるものが機械化されています。絵に描いたとおり自動販売機、信号機、エアコン、冷蔵庫、テレビゲーム、スマホ、ルンバに産業用ロボットと数えあげたらきりがありません。でも、それらの機械を動かしているのがプログラムです。よく機械をプログラムがなければただの箱と称しますが(逆に機械屋はプログラムのことを箱がなければただの文字列と皮肉ったりしますが)、プログラムはそれら機械に命を与えるようなものです。
プログラミングとはプログラムをさらに人間が操作すること
世の中の様々な機械を動かすプログラム。皆さんが学ぼうとしているプログラミングとは、そのプログラムを更に人間が指示するように命令文を書く行為となります。つまり、人間ではとてもかなわないような力を出せる機械、1秒間に何万回と計算できる機械をプログラミングすることで制御できるということです。
プログラミングにはお作法がある
機械に指示を出せるプログラム、それを書く行為であるプログラミングにはお作法(文法)があります。機械は言った通りのことを忠実にこなしてくれますが、曖昧な指示だと理解してくれません。正確に順番立てて指示する必要があります。後で説明があるプログラムの基本である順次・分岐・反復の操作であったり、データ型である変数や配列、更に効率的に処理する関数などを組み込んであげる必要があります。
プログラムを学ぶことは機械を味方につけること
プログラムを何故学ぶのかについては、結局は機械を味方につけることです。
最近はAI(人工知能)が再び話題になってきて、このままだと仕事が奪われるというAI脅威論がでています。でも、AIのことがわからないからといってAIに仕事を奪われるかもしれないという側面に目を向けるのではなく、プログラムを理解してAIをメンテナンスしたり、AIによって新たに生まれる仕事に目を向けた方がいいのではないかと思います。
歴史をみるとパラダイムシフトと呼ばれる時期が必ず来ます、産業革命のときに蒸気機関によって仕事を奪われた人達が確かにいましたが、その反面、工業機械を整備するエンジニアが生まれたり、工場で働く人達を増やしました。またインターネットは、人々を一気につなげ情報の拡散スピードを上げました、また商品もネットで購入するという形となり、既存メディアの新聞や雑誌が売れなくなる、実店舗の売り上げが下がるという面も生みましたが、一方でYoutuberなどの新しい職業がうまれたり、サイトをメンテナンスするWebエンジニアという職業も生みました。
なお、これに関しては映画ドリームで同じような場面がありました。この点について記事にしたのがこちらです。
つまり、結論としてAIって何?得体のしれないものと喧嘩するのではなく、プログラムを学ぶことで理解してAIをはじめとする機械を味方にするのがプログラムを学ぶ意味の1つになります。
このサイトでは、これからプログラミングを学ぶ上での基本となることや、おすすめの教育用プログラミング言語、プログラムを学ぶ上での手順ステップについて僕なりの考え方を書いていきたいとおもいますのでよろしく!
コメント