洋書、時々プログラミング

博士課程修了→メーカーという経路を辿っている人の日常

プログラミングを学ぶ理由は言語能力を磨くためかもしれない

Twitterを見ていると「プログラミングで年収アップ!」とかそういった年収アップ関連の広告ばかり目にするけれど、プログラミングを学ぶことで得られた副次的な物の方が大きい気がする。「言語化する力」と「プログラミングでできるか見極める力」である。

例えば100個のフォルダからそれぞれ1つファイルを取り出してコピーするという作業を考える。プログラムをかじったことがある人だったらおそらくプログラミングで簡単にできると考えて組もうとする。その時に脳内では「どうすればやりたいことをプログラムに落とし込めるか」と考えているはずである。

やりたいことをプログラムに落とし込むためには、「フォルダ内の特定のファイル」に関して共通する特徴(パスや名前など)を特定し、その特徴をプログラム言語に落とし込む必要がある。つまるところ「100個のフォルダから特定のファイルをコピーする」というのをもう少しプログラムができる感じに言うと、「共通の特徴を持つファイルをある場所にコピーする」と言い換えられる。この言い換える言語能力こそプログラミングをやることで鍛えられている気がする。

この能力はただのプログラミング能力よりも汎用性が高い。人に説明するときの言い換えについても、プログラムが説明したい人に置き換わるだけで大体やっていることは同じ。相手の人が分かる言語がプログラムのドキュメントに置き換えられる。

プログラムをただ文字を打ち込む作業としてではなく、その周辺まで見られるようになってプログラマになれるのかもしれない。もっと広く物事を見てみたいものです。