プログラミング

今までの数々の失敗に懲りず、また危険な話題に手を出します。

「プログラミング」といったときに、バリバリの「企業エンジニア」と、バリバリの「個人ハッカー」では、指すものが全く違うような気がします(このエントリでいう「企業エンジニア」「個人ハッカー」という言葉は比喩で、厳密な分類ではありません*1)。「企業エンジニア」のいう「プログラミング」(=コーディング)は、「下流工程」の最たるもので、極言すれば「日本語の仕様書をプログラミング言語に翻訳するだけの作業」と思っているのではないでしょうか。それに対して、「個人ハッカー」(研究者等も含む)のいう「プログラミング」は、基礎理論からアルゴリズム、問題の分析や要件の定義、システム全体の設計、果てはドキュメントやサポートに至るまで、とにかくソフトウェア開発のすべての要素を含んでいるのではないかと…

ちなみに自分のITpro連載は、上でいう「個人ハッカー」が主な読者だと思うので(見当が違っていたらすみません)、いわゆる形式的手法なども、OCamlなりCなり、狭義の「プログラミング言語」の文脈で紹介しています。が、「プログラミング言語理論」は仕様記述言語のような広義の「プログラミング言語」も主要な対象の一つです。(むしろ、そちらがメイン?)

*1:「企業エンジニア」=「企業プログラマ」、「個人ハッカー」=「個人プログラマではなく、要するに「プログラミングはつまらないと言っている人」と「プログラミングは面白いと言っている人」の意です。コメントも参照。