プログラミングは人類の問題解決の方法のひとつ

人は哲学を持つと強い。

今まで僕は「プログラミング」というもの自体に対して、あまり哲学を持てずにいた。 プラス面であっても「熱中すれば楽しいもの」ぐらいに感じていた。

そしてどこか「プログラミングと言っても、どうせ全部人が作ったものでしょ」と冷めて見てしまう自分もいた。

がどういうことかというと、一般的にプログラミングが好きな人は、プログラミングをどこか魔術めいたものと考えているというイメージがあった。 プログラミングを覚えるということを、世界の謎を解き明かすことのように感じているというイメージが。 「だけどどんなに謎めいていても、どんなにやり方を覚えても、どうせ人が作り出したものでしょ」と考えてしまう自分がいた。

たとえば科学や自然法則の勉強ならば、それを勉強するということは、世界を解き明かすことになる。 けれどプログラミングは科学や数学等に比べて、圧倒的に汎用性が低い知識体系だと感じてしまっていたのだ。 どんなに究極を求めても、どこにも答えがない。 暫定的な答えしか存在せず、どんなに勉強しても技術は廃れ、また他のものにとって変わられる。 夢を見ながら、終わりのないラットレースを走り続けているようなものだ。

しかし僕が改めて、プログラミングについて振り返ってみたとき、これは「人類の問題解決の軌跡」ではないかという考えに行き着いた。 プログラミングを勉強するということは、問題解決の方法を学んでいるのであって、問題解決の手法を進歩させることは、人間にとっての進歩であるはずだ。

こう考えてから僕は、今までよりもプログラミングが魅惑的に思えるようになってきた。 たとえひとつひとつの技術やメソッドは廃れるとしても「問題解決の方法」が進歩し続けることは確実だからだ。

もっと問題を解決しよう。問題解決のプロになろう。