プログラミング教育が始まるけど、そもそもよくわかっていない
2020年からは小学校がプログラミング学習が必修化され、翌年には中学校でも導入予定です。
しかし、保護者からすると全くわからず困惑していたり、教える先生たち教師陣からしてもよくわかっていないケースは少なくありません。
今回は、そういった人たちの「そもそもプログラミングって何?」という疑問にお答えして、優しく解説していきます。
命令するのがプログラミング
黒い画面に英語や数字の文字列が並んでいるようなものを想像して、多くの人がプログラミングと言います。
もちろん間違いではありませんが、それが難しいというイメージを抱かせてしまっているのは間違いありません。
プログラミングは簡単に表現すると、機械(コンピュータ)に対する命令文です。
コードを書いてコンピュータに命令する
機械に人間が命令をするためには、機械のわかる言語で指示してやる必要があります。それがプログラミングのコードです。
日本では日本語、アメリカでは英語、中国では中国語が主流なように、コンピュータの世界にも言語が存在します。
身近なものであれば、スマートフォンです。これももちろんプログラムで動いています。
例えば、アプリのアイコンを押すと、押されたアプリを起動しろという命令が働きます。
これは、ボタンが押された(入力)ことで「対象のアプリを起動する」というプログラム(命令)が実行されたに過ぎません。
スケジュールを立てて人に命令する
小学校の体育祭や文化祭でもプログラムは配布されましたね。名前の通り、あれも立派なプログラムに変わりありません。
事前にどういった流れで進めていくのかを箇条書きで書いているのがほとんどですが、それを人に渡すことで間接的に命令をしていますね。
今回学習するプログラミングは、その対象がただコンピュータに変わっただけです。
プログラミングを学んで得すること
では、実際にプログラミングを学習することでどういったメリットがあるのでしょうか。
色んなことができる中から、今回は3つをピックアップしてご紹介します。
生活に潜むリスクを回避
今やコンピュータに頼らずに生活をしていくことは困難です。パソコンやスマートフォン、色んなサービスを利用する上でも必ずと言っていいほどIT技術に頼ることになります。
便利な反面、そこにはリスクも存在します。
今では被害も少なくなりましたが、昔ワンクリック詐欺というものが流行りました。
IT化した社会から取り残されている人の多くは、こういったものに直面したときに対処方法がわからなかったり、信じ込んでしまい騙されてしまいます。
しかし、プログラミングの学習をすることでコンピュータの仕組みを知れば、こういったものを回避できるようになります。
コンピュータに命令を出すことができれば、実際にどういった仕組みで、原理原則で動いているのかを直接肌で感じ取ることになります。そうすることで、コンピュータに惑わされないための最低限の知識を養うことにつながるのです。
論理的思考の力をつける
文部科学省がプログラミング教育の必修化を決めたときの「新学習指導要領」によると、「プログラミング的思考」は次のように定義されています。
自分が意図する一連の活動を実現するために、どのような動きの組み合わせが必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、記号の組み合わせをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力
機械に命令をする、プログラミングをする上ではこの論理的思考が欠かせません。
物事の仕組みをしっかりと理解した上で、順序立てて考えるということがプログラミングにおいては大切で、これを早い段階から身につけるためにも、小学校の学習で取り入れようということになりました。
将来の仕事につなげる
プログラミングを使った仕事は年々増えており、そういった人材を求める会社も増えてきました。
では、実際にどういった職業があるのか代表的な2つをご紹介します。
プログラマー
プログラミングを仕事にする、と考えてたときに一番最初に浮かぶのがこのプログラマーです。
実際にプログラミング言語を使用してコードを記述して、業務システムやアプリケーションなどを作ります。
プログラマーにも色々あり、使える言語によってその仕事範囲や業務内容、単価も大きく違ってきます。
エンジニア
車を作ったりする人の中にもエンジニアは存在しますが、今回はITのエンジニアという意味での表現となります。
とても幅の広い職業で、実際にどんな業務をやっているのがエンジニアか定義するのも実は難しかったりします。中には、プログラマーのことをエンジニアと呼ぶ人もいます。
ざっくりと説明すると、大規模なシステムを組む際には数十人、数百人が力を合わせて作ることになります。プログラマーもその中に多くいるため、その指揮をとったり、コーディング(プログラミングをする)前にどういったシステムにするか設計をする必要があります。
そういった取りまとめをしたり、構成を考えたりする人がエンジニアと呼ばれています。
また、セキュリティ部分を担当するエンジニアであったり、よりプログラマーに近い位置にいるエンジニアだったり、会社によっては細分化されていることもあります。
プログラマーとして経験を積んでからエンジニアとなることが多いのですが、一概にどちらが上だという定めはありません。
どちらの職種も、システムなどを作る上で重要な役割を担っていることには変わりないのです。
プログラミングは稼げる職業
多くの方がこういったイメージを抱いていますが、これは100%正しいわけではありません。
技術職と呼ばれる範囲が多いので、たしかに稼げるポイントは多いです。また、色んな要因も重なり合って稼げる職業だと言われることもあります。
IT人材の不足
年々、ITの人材は増えていますが仕事もそれ以上のペースで増えて言っています。
会社によっては業務システムを導入することによって社内のIT化をして、そういった人材を求めるようになるケースも少なく有りません。
それもあって、プログラミングの知識があることで会社では重宝されるようなことも増えてきました。
IT化したは良いものの、深く理解せず運用をしていたり、導入しようにもその見極めができず、高額のシステムを売りつけられてしまうようなこともあります。
また、システム開発の会社やそういったサービスを提供する企業も増えてきたことによって、プログラマーやシステムエンジニアという業種自体の需要は高まっています。
その結果、求人が多く出回っているので、働き口に困らないという点でも稼げる職業だと言われることもあります。
共通言語
プログラミング言語は海外でも通用するものです。例えばPHPという言語であれば、アメリカでもフランスでもシステムで使用されているので、そこに言語の壁はほとんどありません。
そういった意味でも、主要言語を1つ押さえて置くだけで、海外企業に就職でき、一般的な業種と比べて高い給料を貰うことができることもあります。
そういった意味では世界が市場となるので、そこに稼げるチャンスが存在しているとも言えます。
GoogleやAppleなどといった国際企業を目指す人も多く、そういった意味では優先して身につけておきたいスキルだとも言えなくありません。
まとめ
いかがだったでしょうか。
今回は「プログラミングを優しく解説!学んで得する3つの理由」についてご紹介しました。
PHPやJava、Pythonなど色んな言語がありますが、そういった言語を理解することだけがプログラミングでは有りません。
まずは、それが何なのか、どういったことができるようになるのかを知っておくことが、プログラミングを理解していく上では必要なことなのです。
最後に、プログラミングを学ぶことで得られるメリットを3つまとめておきます。
IT社会に潜むリスクを回避できる
論理的思考が身に付く
職業の幅が広がる
小学生のお子さんを持っている人や、学校で教えることになる先生方、またはプログラミングを始めてみようと考えている方は、ぜひ参考にしてくださいね。
プログラミングに挑戦してみたいという人は、学習方法についてもご紹介していますので、ぜひそちらも読んでみてください。