2019年03月25日 公開
2023年03月10日 更新
もちろん、プログラミングをするメリットは、思考力を高めることだけではありません。最大のメリットは、「世界の天才の技術とアイデアが詰まったモジュールを、簡単に、自分の道具として使える」ことです。
「画像のデータを解読し再現する」「データを圧縮する」「ゲームのプログラムを書ける」。コンピュータの世界には、世界の天才が考え出した、さまざまな機能のモジュールが無数にあります。普段、何気なく使っていますが、実際は非常に高度な技術とアイデアの結晶です。
そんなモジュールを、プログラミングができれば、たった数行のプログラムを書くだけで使うことができ、自分の力だけではできないことをたくさん実現できるのです。
私は、プログラミングとは「人類が初めて手にした、力を合わせる方法」とまで考えています。それを習得しないのは、人生を損しているといっても過言ではありません。
いくら自動車の魅力を話しても、自動車に乗ってみなければ、その良さはわかりませんが、それは、プログラミングも同じ。本などで考え方だけを読んでも、本当の魅力はわかりません。ぜひ、かじる程度でも良いので、自分で手を動かして、プログラミングに触れてみてください。
もっとも、「プログラミングは、自分にとってハードルが高いのでは……」と考える人もいるかもしれません。そんな人に私が勧めているのは、まず「ハードウェアについて学ぶこと」から始める方法です。
コンピュータとは、どのような部品からできていて、どのような仕組みで動くのか。CPUやメモリなどは、どのような経緯をたどって、どんな工夫によって進化してきたのか。こうしたことを学ぶのです。
なぜこれがお勧めかというと、ハードウェアの仕組みがわかると、プログラミング言語の原理もわかるからです。
たとえば、「なぜ、コンピュータは0と1の2進法で動いているのか」「CPUという司令塔は、何に司令を下しているのか」といったことです。こうした仕組みがわかると、コンピュータにとって重要なのは、「いかに低電力で効率よく動かすか」だと分かります。すると、プログラミング言語の意味がおぼろげながら理解でき、言語に対する違和感が少なくなるでしょう。
ハードウェアの進化の歴史は、それほど複雑ではないので、図鑑を見るような感覚で楽しく学べるはずです。
ハードウェアについて学んだら、いよいよプログラミングに挑戦です。プログラミング言語はよく使われるものでも数十種類あり、初心者でも使いやすいものもあります。
私がお勧めするのは、「Python(パイソン)」です。ウェブアプリや人工知能などを創るのによく使われている言語ですが、シンプルで覚えやすい。『退屈なことはPythonにやらせよう――ノンプログラマーにもできる自動化処理プログラミング』(AI Sweigart著、相川 愛三訳)という本があるほどです。
PHP研究所の媒体だから言うわけではありませんが、「PHP」という言語もお勧めです。試しにホームページを作ってみると良いでしょう。
また、「BASIC」は、50年以上前からある古典的な言語ですが、今から触れてみるのも悪くありません。BASICを知ってから他の言語を知ると、進化の過程と、最近の言語の素晴らしさがよくわかるはずです。
これらの言語を使って、ゲームなど、興味のあるものを作ってみるとよいと思います。
<『THE21』2019年3月号より>
更新:11月25日 00:05