見出し画像

プログラミングをなぜ学ぶのか

こんにちは。へびそるです。
今後のキャリアに絶賛葛藤中の40代です。
今日は「プログラミングをなぜ学ぶのか」と称して綴ります。
こちら私の自己紹介です。お時間許す方は覗いていってくださるとうれしいです!
画像の出典:bookdragonさんによるPixabayからの画像

私は、日本の産業を支えるのはエンジニアだと思っています。
日本の人口が減少していくなかで、企業の生産性向上のためにはエンジニアの存在は欠かせません。
そんなエンジニアを象徴するものといえば「プログラミング」です。
最近は、小学生でも学校でプログラミングを学んでいるそうですね。
今日はプログラミングについて紐解いていきたいと思います。

そもそもプログラミングとは

そもそもプログラミングとはなんでしょうか?

プログラミングとは「コンピュータを動かすための指示書を書くこと」です。
コンピュータは人間と違い、指示された通りのことしかできません。コンピュータを動かして思い通りの結果を出すためには、正しい指示書の作成が必要です。
この指示書が「プログラム」であり、プログラムの作成によってコンピュータに指示を伝える作業がプログラミングといえます。

引用 https://www.sejuku.net/blog/2100

コンピューターを動かすための指示書がプログラム。
その指示書をつくることがプログラミングということですね!

子どもにもわかりやすい表現でいうと・・・

「プログラミング」とは、コンピュータ用語で「計画の実現のために、手順を作成して実行させること」をいいます。わかりやすい表現では、「スタートからゴールに行くための道筋や攻略方法を考えて、コンピュータに命令してゴールまで行かせること」ともいえるでしょう。
身近なものにおきかえると実感しやすいかもしれません。「リモコンを押すとテレビがつく」で例えると、「テレビがつく」がゴールで、「リモコンを押す→テレビの電源が入る」とプログラムされているのです。

引用 https://miraii.jp/programming-59

なるほど!
リモコンを押すとテレビの電源が入る、とプログラムされている。
そのプログラムを作っているのがエンジニアということですね。

リモコンに入っているコンピューターを動かすための指示書をつくるためには、コンピューターにわかるような言葉で書く必要があります。

とはいえ、人間が直接コンピューターにわかる言葉で指示することは難しいです。
なので、いったん人間は、コンピューターに実行させたい指示を英単語などの組み合わせで示します。これがプログラミング言語です。
プログラミング言語で書かれた指示(ソースコード)が2進法(0と1)の羅列に翻訳されます。これが機械語です。
機械語になってはじめてコンピューターは理解でき、所望の動作がなされる、というわけです。

プログラミング教育が必修に

2020年に新しい学習指導要領が実施され、小学校でプログラミング教育が必修となりました。2021年からは中学校でも必修化されています。さらに、2022年には高校生の授業にもプログラミングが導入されました。
大学入学共通テストでも、2024年度からプログラミングを含む「情報」が新教科として出題されることが文部科学省により決定されています。
小学生では、複雑なプログラミング言語の習得は目的とされておらず、「プログラミング的思考」を身に付けることを目的として授業が導入されているようです。
私が子どもの頃は全くプログラミングに触れる機会はありませんでした・・・。ではなぜいまなのでしょうか?
私なりに考えてみます。

①論理的思考力を養うため
プログラムは正しく指示をしないと動きません。当然ですがたとえ1文字違うだけでも動かない。人間であればなんとなく前後の文脈で推測できてしまうところですがプログラムはそうではない。
問題を解決するために、ゴールから逆算して、正しい手順を理解し、実行する力が必要です。そういった力を養うにはプログラミングはうってつけなのかもしれません。

②ITリテラシーを身につけるため
これが一番の理由なんじゃないかと思っています。現代はIT機器が世の中に溢れています。小学生といえどもスマホや携帯を持つ時代です。正しく使えば子どもの好奇心や興味関心を満たし、世界を広げてくれるツールですが、一歩間違えれば犯罪や悪行と隣り合わせのダークな側面もあります。
プログラミングを身につけることは直接的にそれらを防ぐことにはなりませんが、ITに興味を持ち、リテラシーを高めるきっかけにはなりそうです。

③グローバルな感覚を身につけるため
プログラミングは世界の共通言語です。プログラミングは英語で記述することが多く、PCとインターネットさえあれば場所も選ばずにできます。
年齢も学歴や所属先も関係なく、実力があれば認められやすい世界です。
プログラミングを学ぶことで、そういった世界の入り口に立てるわけであり、子どもの可能性を広げてくれる大きな意味があるといえます。

④生産者の視点、経験を身につけるため
プログラミングは自分でプログラムを組むことで、実際にモノを動かすことができます。大人のエンジニアと話していても、エンジニアを志した理由にこのことをあげる人が多くいます。自分がつくったものが、今目の前で動く。この喜びや衝撃は相当なインパクトだといえます。
世の中の人間の大多数は消費者側です。ひたすらにモノやコトを消費・浪費する。そんななかでプログラミングは生産者側に立てる数少ないツールです。プログラミングを通じて生産者側に立つことの喜びを与え、生産者側の人間を増やしたい、少なくとも生産者側の視点を持った人間を増やしたい、という意図が窺えます。

大人がプログラミングを学ぶ意味

では大人がプログラミングを学ぶ意味はあるのでしょうか?
確かに上記①~④は大人にも当てはまりますよね。
それ以外に、エンジニアは需要がある、稼げる、というようなものもあるかと思いますが・・・

私としてはこのProgateのCEO加藤さんとCOO宮林さんの記事が刺さりました。

「プログラミングを学ぶことで、プロダクトをつくる人への敬意や共通言語が生まれます。営業サイドからエンジニアへ何かを依頼するときにも、それがすごく難しいことなのか、簡単にできることなのかを知っているだけでコミュニケーションや人間関係は円滑になります。これからは、基礎教養のひとつとしてプログラミングを学ぶことが必要だと感じます」(宮林氏)

引用 https://www.businessinsider.jp/post-237744

ビジネス側の人間として、エンジニアのことを理解しているつもりでも、エンジニア側に半歩でも歩み寄ってプログラミングを学んでみることで、見えてくる世界がある。やってみたからこそわかる「やっぱりエンジニアはすごい」という感覚を得た人とそうでない人には、明確な差があるような気がします。

エンジニアに携わる者としてプログラミングをやってみる!
私の目標です。
まずは転職活動を決着してからになりそうですが・・・。

ここまでお読みいただき、ありがとうございました!

この記事が参加している募集

仕事について話そう

この記事が気に入ったらサポートをしてみませんか?