じゃあ私はどう思っているかと言うと、プログラマーは、ソフトウェア開発全般に関わる人だと思っています。つまり、「どんなソフトウェアを作るべきか」から始まり、「そのソフトウェアが本当にその自分の作るべきものだったか」を確認するところまでする人、ということです。
・・・その人間がどういうものを欲しているのか、あるいはどういうふうなもの作ると人間にとって役に立つかとか。コンピュータに向かっていたとしても、「何が欲しいんですか」とインタビューしたり。そういう意味でいうと、意外と機械相手の仕事ではなくて、人間相手の仕事である印象を持っています。
役に立ってなんぼなので。そのためには、“役に立つ”ということをまず定義しないといけません。でもそれは機械からは出てこなくて、使う人に聞かないといけないんですよね。「あなた本当は何が欲しいんですか」と。
プログラマーと言葉の定義が広くてまちまちだという話をしましたが、一方でわりと狭めに捉える人もいます。作るべきソフトウェアどんなもので、何をする仕事で、どういうデザインで、というの完全に決まっていて。決められた仕様を満たすようなものを書いて「以上終わり」と。次のチームに渡したらテストしてくれるので、テストで問題見つかったらそれを直します、という感じ。
こんなふうにソフトウェア開発全体の真ん中の一部の部分をする仕事を、プログラマーと捉える人もけっこういて。かつ、チームで働くからこそ、このような働き方をしている人はすごく多いです。
ですが、それはソフトウェア開発のすごく楽しい部分、デザインの部分みたいなものを放棄している感じがするんです。どういうソフトウェアを作るべきか。それによってどういう目的を達成すべきか。その仕様を決める部分の設計から関われるのは、プログラマーの仕事の中でも、すごくエキサイティングで楽しい部分だと思うんですよね。
それを「言語でキーボード叩いて記述することではないから、プログラマーの仕事ではない」と言ってしまうのは、そこを捨ててしまうのは、すごくもったいないなと思います。
0 件のコメント:
コメントを投稿