プログラミング

プログラミングの目的は3つ〜激動の21世紀を強く生き抜くために〜

先日ヤフーニュースを見ていたら、たまたまこの記事を見つけまして、思わず読み込んでしまいました。

要約すると、

少子高齢化社会で農業のなり手が減り、土地が余ってきたものの、
ITを使って効率的に農業ができるようになってきた、という内容になります。

GPSもドローンも自動運転も、2000年頃にはほとんど誰も知らなかったと思いますが、

新しい技術の到来が、農業という業界を大きく変える予兆をうかがい知る事ができます。

今はまだ機材の価格がやや高いようですが、一般化されるにつれ価格が下がってくると思いますので、これからますます農業×ITは広がっていくのだろうなと感じます。

そして、子どもを持つ親としての目線から改めて、

『プログラミングの目的とはなんだろうか』と考え、思う事をつらつらと書いてみる事にしました。

Sponsored link

プログラミングの目的1 考え抜く力をつける

2020年より小学校でプログラミングが必修になりました。

文部科学省の『小学校プログラミング教育の手引(第一版)』によると、

情報技術を効果的に活用しながら、

論理的・創造的に思考し課題を発見・解決していくために、「プログラミング的思考」が必要であり、

そうした「プログラミング的思考」は、将来どのような進路を選択しどのような職業に就くとしても、普遍的に求められる力であるとしています。

そして、「プログラミング的思考」とは、

「自分が意図する一連の活動を実現するために、どのような動きの組合せが必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、記号の組合せをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力」
であると説明されています。

小学校プログラミング教育の手引(第一版)抜粋

という事が明記されています。

振り返れば2000年頃、いわゆるITバブルの頃は、

ITといえば、ヤフーや当時のライブドアのような、

パソコンで見れるホームページくらいの認識だった方が多かったろうと思うのですが、

  • パソコンの普及
  • インターネットのスピード改善
  • スマホの普及
  • 省電力化
  • ハードウェア(センサーやプロペラなど)の高性能化

などを通じて、今ではITなしでは考えられない世の中になってきました。

GPSや自動運転、ドローンなども、ここ数年で一気に普及しています。

新しい技術がでてきて大変・・全然追いつけない・・

と思っている方も多いのだろうと思いますが、一方で、

GPS、自動運転、ドローンなどを活用した新しい仕事もどんどん増えていますし、

ここ数年はより変化のスピードが速くなっている気もします。

僕の子どもは2018年生まれなのでまだまだ先の話にはなりますが、

きっと、子どもが20歳になる2038年頃には、

今以上にITが発達し、ITが当たり前の世代ばかりになるだろうなとは思います。

先ほどのGPS、自動運転、ドローンを活用した農業も、もっと一般的になっているかもしれません。

そういったIT道具を活用できる人とできない人で、大きく収入に差がでるかもしれません。

できる事なら、自分でしっかり考えて、自分で問題を解決できるようになる子どもになってほしいと思いますし、

文部科学省が言うところの『プログラミング思考』というものも、

『とにかく自分でしっかり考えられる力を育む』

という意味だと捉えたほうがしっくりくるんじゃないかなと思っています。

Sponsored link

プログラミングの目的2 論理的に考えざるをえない

実際にプログラミングをやっている方なら実感されていると思いますが、

とにかくプログラミングって細かいです。

1つ1つ細かく作っていく必要があります。

人と人同士なら分かり合える事も、相手がコンピュータとなるとそうはいかず、

例えば『歯を磨く』という動作一つをとっても、

赤ちゃんに教えてる時は、見よう見まねで何回も見せて『感覚で伝える』事になりますが、

コンピュータにはそうもいかず。

例えて言うなら、

1 洗面台に向かう
2 洗面台の前に立つ
3 収納スペースを空ける
4 自分の歯ブラシをとる
5 歯磨き粉をとる
7 歯磨き粉のキャップを開ける
8. 歯磨き粉の先と歯ブラシの距離を近づける
9 歯磨き粉を少しにぎって歯磨き粉を出す
9 歯磨き粉を歯ブラシにつける
10 口を開ける
11 歯ブラシを口の中に入れる
12 歯ブラシの先を奥歯に当てる
13 ほどよい力加減で小刻みに10回みがく
14 角度を変えてまた10回みがく
・・・

みたいな感じです。

実際にロボットで実現しようとするなら、歯ブラシと歯みがき粉の距離感をセンサーで判定する必要があるだろうし、

歯磨き粉を程よく出すっていう力加減をどう実現するかって結構難しいんじゃないかと思ったり。

ほどよい力加減で小刻みに、というのも、どれくらいの力で、どれくらいのスピードで、どれくらいの間隔で・・

というふうに、とにかく細かいです。

そういった事を一つ一つ考えていく必要があります。

けれどさすがに、世界中の多くの人が、同じような事を同じように一つ一つつくっていると、とてもじゃないけど効率が悪いので、

よく使う機能、あると便利な機能というものをまとめて配布していたりします。

先ほどの例で言うと、『歯みがきプログラム』を世界中の誰かがもう作っているかもしれません。

となれば、歯みがきに関しては、『歯みがきプログラム』を活用しつつ、

また他の動作、例えば『靴を履く』というプログラムを考えるみたいな、そんな感じです。

プログラミングの世界では、『車輪の再開発』と言ったりしますが、

よく使う機能、あると便利な機能というものをまとめて配布を繰り返す事で、

あると便利な機能がどんどん増えていって、今日のスピードアップにつながっているんじゃないかなと思います。

プログラミングをやっていると、

  • 一つずつ考える
  • 同じ動作や作業はできるだけまとめる
  • あると便利な機能があれば置き換える

などの論理的な考え方もついてくると実感しますし、

例えプログラマーにならなくても、日常の生活にも、論理的に考えるクセがつけば、仕事にも活かせるんじゃないかなと。

Sponsored link

プログラミングの目的3 英語に触れる機会が増える

これはどちらかというと、実際にプログラミングを進めていくと実感する事なのですが、

新しい技術を覚えようとなると、なかなか日本語では情報が少なかったりします。

先ほどの、よく使う機能、あると便利な機能をまとめたものというのは、

何も日本人だけが作っているわけじゃなくて、

世界中のいろんな人がつくっていますし、その多くは英語で書かれていたりします。

日本にいると、英語で話す機会がなかなかないので、

英語いらないんじゃん?

と思ったりする人も多いようですが、

例えばYoutubeでプログラミングの動画を検索したりすると、多くは英語で説明されています。

余談ですが、

Woocommerceのデザインの変更の方法を探した時も英語でしたし、

Laravelというフレームワークを覚えた時も、英語の動画サイトでした。

英語で読む、もしくは聞くという事が当たり前のようにできるようになると、自然と、

よく使う機能、あると便利な機能をまとめたもの

の使える幅がグンと増えるのでプログラミングの効率もあがり、まさに一石二鳥かなと思います。

参考記事

プログラミングの目的のまとめ

まとめると、

  • とにかく考える
  • 論理的に考える
  • 英語に触れる機会が増える

という事が、プログラミングの目的だと思います。

プログラム言語によって得意分野に差があり、
プログラム言語によっては、5年後、10年後には使われなくなる言語というのもでてくると思いますが、

その基礎力となる、

  • とにかく考える
  • 論理的に考える
  • 英語の情報を知れる

という力をつけておけば、

時代が大きく変わり続けている『激動の21世紀を強く生き抜く』事もできるだろうと思いますし、

生まれたばかりの我が子にも、それとなく伝えていきたいなと思います。

PS. 子ども向けプログラミングのとっかかりとして、下記の記事もご参照ください。

Sponsored link

関連記事

  1. プログラミング

    プログラミング思考を身につけるために焼き鳥とハイボールを頼んでみる

    最近たまたま東洋経済という雑誌を見ていたんですが、その中に気になるキー…

  2. プログラミング

    プログラミング学習のためにメンターをお願いすることにしました【MENTA】

    フラットボタン-green突然ですが、プログラミング学習のスピード…

  3. プログラミング

    プログラミングを上達する方法〜とにかく小さくする〜【脱初心者を目指して】

    プロゲートやドットインストールをざっと把握して、実際にホームページ…

  4. プログラミング

    プログラミング思考を鍛える その2 ガソリンスタンドのセルフサービスを考えてみる

    以前、『プログラミング思考』について記事を書いてみたのですが、…

  5. プログラミング

    入江開発室 体験談 劇的ビフォーアフター

    ひょんな事から入江開発室アドベントカレンダー2018 19日目を担当す…

Sponsored link

最近の記事

Sponsored link
  1. MySQL

    検索システムのデータベースの作り方や考え方を8ステップで書き連ねてみる
  2. Laravel

    【Laravel(PHP)】でできる事をわかりやすく(ざっくりと)まとめてみた【…
  3. 検索システム

    バリアフリーなホテル のページをオープンしました。
  4. IoT

    【Arduino】ラジコンをつくってみた 〜今ドキのプログラミングの覚え方
  5. 検索システム

    新しいホテルを探すサービスをつくってみました【楽天トラベルAPI】【条件付】
PAGE TOP