misc.log

日常茶飯事とお仕事と

純粋プログラマーって地上に存在してるの?

最近「プログラマー」という言葉を以前より増して耳にすることが増えてきた気がするのです。

プログラマーって言葉が指す職種や役割の定義って、一体どこからどこまでなのかがはっきりしない文脈の中で登場して、そのまま議論に突入して「オレはプログラマーだから」「いやオレはプログラマーなんか卒業したから」「ボクはプログラム組めませんが」「プログラマーってどうやったらなれるんですか?」とかいろいろ言い合ったりしてる場がちらほらあるけれど……

その中で気になったのが「設計はSEが、ボクはプログラマーなのでプログラムを」って感じの台詞がちょくちょく出てくるのです。それって、いわゆる「コーダー」と言われていた人種なの?それとも何か違うもの?そこで言ってる「設計」ってどんなものなの?

これまたよくわからない。

自分がやってきた仕事って、なんというかプログラムも組むけれど、

  • どう組む?
  • どういう機能を持たせる?
  • 機能とコードの構成や分割は?
  • UIどうする?
  • エラー処理とかは?
  • メッセージとかどういう風に保持する?
  • 設定情報とかどうする?

とか、全部ひっくるめて「プログラム作ります」的な仕事が多かったので、あまり設計とプログラム作成が分離されていないモノばかりだったのです。もちろん要件定義的なものや、一番外枠を定めた基本設計書、外部設計書的なものは用意されていますが、たいていの場合、VB6.0とVB.NETVBAの違いも理解していないような人が書いたものだから実装寄りのことなんて何も考えてない。

なので、結局のところ「GUIがらみの設計から、データベースの中をいじるコードまで」を全部自分で作ったり、記載が足りない部分は作りながら考えたりというものが多く、「プログラマーだから設計できません」がちょっと意味わからない。みんなそんな「恵まれた設計書」見ながら仕事してるの??

さらに、「がっちり、入出力の変数名まで指定されて、中のロジックもガチガチに指定されてからVisual Studioでコードを書く」なんて作業のどこにおもしろみがあるのかが全然わからない。ま、この言葉に過剰反応する人はたいてい「仕事はおもしろみでやるモノじゃない!」とか言うんですけど、その辺も自分にとっては価値観が違うところで「おもしろくない仕事の成果物で人が喜ぶはずないじゃないですか!?」なんですよね。

だから、今の若い人に「この機能をつくっておいて。細かいところは決めてもらっていいから。入出力だけこの形式にあわせて」とか言うと、ほんと、言ったところしか作ってくれなかったり、ものすごく怪訝な顔をされるわけで。いやいや、自分に決定権があるとかおもしろくないの?? どうやって決めればいいかわからない??その機能が全体のどこに位置づけられるかなんて、もっと上流の設計資料や要件定義見りゃわかるでしょ、そしたら必然的に必要なモノもわかるでしょ?洗練されてなくてもいいからやってみていいよ、って言ってるんだよ?ってか、そもそも自分が時間を費やして作るモノが、一体全体のどの位置にあたるのかって、気にならないの??たっかいお金を出してくれたお客さんが使うものの一部を自分で決めるとか、楽しくないの??とか思っちゃうわけで。イライラする。

完全にジェネレーションギャップって奴なんでしょうか?それとも純粋に私や私の経歴がおかしいのでしょうか?

自分の知らないところで、「きっちりシッカリ書かれた設計書を純粋に人工言語に書き換える」だけの仕事で食べている人って……いるんだろうか?

プログラミングでメシが食えるか!?―成功するプログラマーの技術と仕事術

プログラミングでメシが食えるか!?―成功するプログラマーの技術と仕事術