プログラミングは手段に過ぎないのか?-仕事としてのプログラミングの本質と専門家の在り方を考える

菅野 黎樹のプロフィール画像
エンジニア 菅野 黎樹

664 view

プログラミングは手段に過ぎないのか?

エンジニア界隈でちょくちょく話題になることの一つに「プログラミングは手段にすぎないか否か」というのがあるのではないだろうか。前提として、ここで指すプログラミングというのは仕事としてのプログラミングを指しており、設計なども含む。

これに対する私の個人的な意見はやはり「仕事におけるプログラミングは手段に過ぎない」だ。プログラミングで作るものは何かしらのシステムやサイトなわけだが、そもそもそうした成果物は、何かの目的を達成するためのツールにすぎない。

そしてプログラミングはそうしたツールを手に入れるための手段であり、道具に過ぎない。究極の理想をいえば、開発を発注しなくても、「こんなシステム、サイトが欲しいな」と思った瞬間にそれが手に入り、開発期間0秒ですぐさまビジネスにツールを導入できるというのが理想形なわけだ。

極端な話、AI技術やノーコードツール、既存サービスの進化によって、現在のエンジニアがやっているような開発業務がこの世から不要になれば、それは多くのビジネスや活動がより迅速に進むことになり、社会全体にとって良いことだと言えるのではないだろうか。(とはいえ実際になくなったら私は職業的に困りますが…)

なのでやはり私としては、仕事としてのプログラミングは手段であり、そこに高尚な工芸的側面を求めることは適切ではないのではないかという意見になる。個人的に小規模な案件を受けていても、クリエイティブ的思考重視の方たちが言う「良くないコード」の方がベターな選択になる案件というのは少なくない。

しかし忘れてはならない、一専門家としての在り方

しかし一方で、エンジニア個人の在り方として、上述の考えに相反するような職人的気質というのは併せて持っておかなければならない。別に持っていなくてもいいのだが、ほとんどの人はそれがないと仕事に必要なスキルレベルに達するのは厳しいのではないだろうか。

つまり、職人的なこだわりや情熱を持ち、スキルを突き詰めていく面もないことには、「手段としてプログラミングを利用する」ということができるレベルには中々なれない。

業務の中で手段としてのプログラミングを冷静に行い、効率的にさまざまな要素を取捨選択していくためには、多くの無駄を身につけておく必要がある。手段と割り切って仕事でプログラミングをするというのは、スキルが最低限でいいということではない。取捨選択をしようというだけであって、「選択ができる」状態になるためには色々なものを持っている必要がある。

この相反する二面性を持って使い分けるということは非常に基本的で当たり前の話のようで、こうした話題のやり取りの中ではどうもその認識が見逃されがちになることがあるような気がする。

おわりに

色々書いたが実際のところ、プロダクトが大規模になるほど、クリエイティブの文脈で語られる「良い」が必要になってくるケースが多い。クリエイティブ文脈の「良い」も、実際の仕事の中で発生した様々な問題とそれに対する解決策が根底にあることがほとんどだからだ。大事なのは、その必要性がどこに起因しているのかを忘れず、状況に応じて適切な使い分けを選択できることだろう。

関連する日報

    "ググれ、カス"を真に受けないで

    1,113 view

    新屋敷 章寛のプロフィール画像
    新屋敷 章寛 デザイナー
    グループ取材を円滑に進める7つの心得

    434 view

    鈴木はる奈のプロフィール画像
    鈴木はる奈 ライター
    デザインを複数案作る時の心得

    6,426 view

    岡本 早樹のプロフィール画像
    岡本 早樹 デザイナー
    モチベーションの低迷を打破する輪読会のすすめ

    1,125 view

    板垣 琴音のプロフィール画像
    板垣 琴音 デザイナー
    なぜ、地方在住webディレクターがベイジに転職したのか

    1,168 view

    江田哲也のプロフィール画像
    江田哲也 コンサルタント
上に戻る