プログラミングについて本気出して考えてみた

    プログラミングに定義をあたえてみよう

    自分の仕事は、プログラマだ。

    そして、この仕事はどのように定義できるのか、考えてみた。

    人生の定義は、幸福の定義は、仕事の定義は・・・
    人それぞれで解釈が違う言葉について、自分は個人的に言葉の定義をしている。

    ここでの定義は、一般的な言葉で概念を捉えようとしているのではなくて、あくまで個人的な定義だ。定義を与えることによって、安心感を得ることができる。

    プログラミングの目的は、自動化による労働からの解放

    自分は、プログラミングを自動化と定義する。

    そしてプログラミングの目的は、

    コンピュータに働かせることで、人間が楽をする

    ためだと決める。

    『決める』ということが、大事なキーワードだ。正しい定義など、存在しないのだから。

    コンピュータは、計算機として生まれたわけだが(スパコンもそうだが)、
    それは、人間の計算を自動化することが目的だ。人間がすれば、一生かかっても終わらない計算を、コンピュータを働かせることで、寝ている間に計算させておく。

    それが転じて、人間がする作業をあらかじめブログラミングしておき、コンピュータに実行させるようになる。プログラミングとは、人間の作業を機械に実行させるためにある。

    プログラマとは、人間を日々の労働から解放するもの、と定義する。

    革命は、人間を労働から解放するために起るのだ

    産業革命によって機械が発明されて、人間は楽ができるようになった。

    洗濯だって、洗濯機のスイッチを押せば勝手にやってくれるし、
    料理だって、薪を拾ってきて、火を起こすこともない。

    IT革命によってコンピュータが生まれた。インターネットが発達した。
    人間は楽ができるようになった。

    図書館に行かなくても、パンツ一丁で世界中の情報を収集できる。
    お金を持ち歩かなくても、電子決済で買い物ができる。

    世の中は、文明は、人間が楽できる方向へ、日々進化している。

    はたして、なぜ自分の人生は楽ができないのだろうか

    しかし、自分の現状はどうかというと、人間が働き、一向に仕事は楽にならない。
    毎日残業は続き、体調を崩している。腰が痛い。平日のリフレッシュは100%諦めている。
    これは、今決めた哲学からすると、根本からして目的と矛盾している。

    開発手法や開発環境へこだわることは、本当に瑣末なことだと感じる。
    効率化やライフハックは、それ自体が目的であってはいけないと思った。
    (困ったことに、効率化できると無上の喜びを感じるのだが)

    それは、このブログのテーマである、ライフハックを否定することになるけれども。

    プログラミングをすることで、労働から開放されなければならない。
    そのためには、自分が働くのではなくて、プログラムに働かせなければならない。