番外編:コンピューターやプログラミングってなんだろう?

こんにちは。鳥井雪です。
ヒューマンアカデミー こどもプログラミング教室の教材監修をしています。

今回は、ちょっと番外編です。
このコラムでは、現役職業プログラマーとして、実際にプログラマーが毎日どんなことを考えてプログラミングしているかを、わかりやすく紹介していけたら…と思っているのですが、その前に、コンピューターやプログラミングってなんだろう?という、大元のお話をし忘れていたので、その話をしますね。それから、プログラミングができると、なにがうれしいのかについても。

コンピューターって何だろう? 何をしているんだろう?

みなさんは、身の回りにどれくらいコンピューターがあると思いますか?
家にあるパソコンの数?少し広げて、職場や学校、図書館にあるパソコンの数?
コンピューターなんて使ってないなぁ、うちにはパソコンもないし...と思われる方もいるかもしれませんね。

でも、たとえばこんな1日を考えてみてください。 朝、駅に行って、券売機でICカードにチャージし、ICカードを当てて改札機を通ります。スマートフォンで初めての訪問先への行き方を検索し、ついでに近くのランチを探します。ランチに行ったお店で、うっかりお財布にお金を入れ忘れていたことに気づき、クレジットカードで切り抜けました。家に帰れば、エアコンがちょうどいい冷たさの風を送ってくれてほっと一息、冷蔵庫から出した食べ物を、電子レンジがいい感じに温めてくれます。
この、特別変わったことのない1日に出てくる機械のすべてに、コンピューターが使われています。1日に関わるコンピューターの数は、100を超えることもあるでしょう。 私たちの世界はもう、コンピューターなしでは回らないようになっているのです。

すごいって思いますか?それとも、ちょっと怖いなって思うでしょうか。
わたしはちょっと怖いと思わないでもないです。子供の頃、「コンピューターが意思を持って突然人間に反逆して...」なんていうお話をよく読んでいたせいだと思います。でも、プログラミングを仕事にするようになって、それほど怖くなくなりました。コンピューターを動かしているのが、血の通った人間だっってことが実感できたからです。

コンピューター(計算機)は、何か目的のために、たくさんの量の計算を組み合わせ、結果を出すものです。コンピューターは、ハードウェアとソフトウェアの組み合わせで動きます。ハードウェアは「もの」そのもののことです。ICチップや、センサーや、スマートフォンの割れやすい画面とすべすべしたボディそのものです。でも、ものだけ、ハードウェアだけがあっても、コンピューターとしての働きはできません。ハードウェアの中に、ソフトウェア、つまりアプリやプログラムがあって、「どんなときに、どんな動作をしてほしいか」を指示することで、初めて目的を与えられ、それを達成することができます。そのプログラムを書くのが、プログラミングなのです。

プログラミングって何だろう? 何ができるんだろう?

コンピューターは、自分で何かをしたいと思うことはありません。コンピューターに目的を設定して、どんなときに、どのように動いてほしいかを考えるのは人間の仕事です。そうして、それを(意外とゆうずうの効かない)コンピューターに分かるように伝えるのも、人間の仕事です。コンピューターに分かる形で仕事を書き表したものがプログラム、それを書くのがプログラミングなのです。

つまりプログラムは、私たちと同じ人間が、「こんな風に動くと便利だ、こうするときっと良いものができる」と思って作っているものです。もちろん人間が作るものですから、間違いはあるでしょう。でも、プログラミングの知識を持つことで、どんな時に間違うのか、どんな危険性があるのかを、なんとなくでも分かると、ずっと気持ちが自由になります。なにより、「正体の分からない何か」が身の回りを取り囲んでいる、という感覚を持たなくなります。

それに、プログラミングができれば、身の回りにあるような「コンピューターを使った道具」を、新しく自分の手でつくることもできます。インターネットやスマートフォンのストアを見れば、世の中にはたくさんの種類のサービスやアプリがあるでしょう。けれど、自分の問題をぴったり解決してくれる、自分のためのアプリってなかなかないものです。

たとえば育児の記録アプリ、家計簿アプリ、言葉遊びゲームや情報交換サイト。「ここがこうなっていればいいのに」「こういうのがあったらなぁ」と考えた時、「自分でつくってみよう」と思えたら、すごくわくわくすると思いませんか?そして、もし自分が作ったものが、同じ問題に悩む他の人の手助けになるとしたら? 同じことを楽しめる他の人を笑顔にすることができたとしたら?それがどんなにささやかなものでも、世界を少し明るくする手がかりになれるかもしれないのです。

まとめ

わたしたちの周りにはコンピューターがあふれていて、プログラムがそれを動かしています。その状況はこれからも変わらないどころか、ますます加速していくでしょう。そんな世界を、「わけのわからないものに囲まれて息苦しい」と感じるのではなくて、「自分で変えられる、自分が働きかけて作っていけるチャンスがある」と感じられる。その扉を開いてくれるのが、コンピューターとプログラミングの知識なのです。

だからわたしは、まずどんな人にも、プログラミングに触れる機会を得てほしいと思っています。合わなかったら合わなかったでもいいのです。自分がプログラムを組み立てて、その通りにコンピューターが動く。その体験があるだけで、きっと周りの世界を見る視線が変わってきます。このコンピューターに囲まれた世界を、自分や自分と同じような人たちが作って、動かし、より良くしようと努力している。そういうふうに見てほしいと願っています。

一覧ページへ戻る