2011-08-06

プログラムを理解させるには?

K&RのCで書かれたプログラムを渡された(もう少し正確に言えば、VisualStudioのWizardで作られたものにK&RのCでコーディングしてある(C++ですら無い)ので純粋なCでは無いが果てしなくK&RのCだ)。あと、これを作った人はどうにも「ポインタ」の概念が無いらしく、無駄に多次元配列だったり、配列アドレス渡しとかが多用されている。

作業指示は、これを流用して、C++/CLIかつ.netFramework3.5使用かつ新規案件対応せよ、との事。

個人的にはどう見積もっても3人で4ヶ月かかる量なんだが、予算が1人で1ヶ月、と言って来た。理由は「Cからの流用だから」。

参ったな。自分としては、C++/CLIはもはや別言語だと思っているんだが。

どうにも上司顧客に説明出来ない。説明出来ないのは、自分が理解していないせいだ、と言われればそれまでなのだが、自分感覚で言うと、高段者がうっている将棋囲碁の一手を初心者に教える、とでも言うか、小学生微分積分を教えるというか、そんな感覚がある。

いや、相手が、K&RやANSIC++C++/CLIを分かっている人間になら、説明は出来るのだが、相手のレベルに合わせて、説明が出来ない。

今回のこれに限らず、見積もりとかすると、「なんでこんなに時間かかるの?」とか「高い」とかよく言われるのだが、やっぱり説明が出来ない。デスマってるプロジェクトには、よくさらなる人員投入がされる事が多々あるのだが、デスマってる時点で負け戦だし、「混乱したプロジェクトに人を投入すれば、さらに混乱するだけ」と自分は思っているので、やめてもらいたいと思っている。

「あんたの小学生なる子供が、100人いたら、東大合格するくらいの学力が発揮されるんですか?」と問いたい。

あれは、VisualBasic4が出た頃か。それまでWindowsプログラムというものをCまたはC++で書いていた自分には、驚異的な言語に思えた。そしてみんな言う。「VBで作れば簡単ですよ」

自分にはVBという言語はとてつもなく難しい言語に思えた(MFCは論外)。なぜなら「かゆいところに手が届かない」言語だったから。だから、皆が言う「VBなら簡単」の理由がさっぱり分からなかった。ちょっとした使い捨てツールや、極々Windows標準的な事しかやらないのであれば、VBは簡単な言語であったのは分かる。実際自分もそういう使い方をしていたから。

そして、うちの職場ではそんな製品を作る所では無く、仕様を満たすためにはサブクラス化とかWin32APIを使うとかしないと実現出来なかった。もちろん「VBで作れば簡単ですよ」と言っていた連中にサブクラス化など理解出来ようも無く、ただただ右往左往してデスマーチ突入していった。

その時も、お偉方や顧客に説明が出来なかった。「VBなら簡単」と言っていただろう、と言われるだけ。

まぁ、VB.net時代になってから、だいぶマシになってきたと思うけどね。少なくとも、スレッドセーフになってくれただけでもありがたい。

まぁ、その辺はともかく、もしかしてデスマIT土方とかなるのは「説明が出来ないから」なのではなかろうか?と思えてきた。必要な時間予算を説明出来ないから、泥沼になるのではなかろうか、と。

説明が出来ない限り、プログラマー永遠にIT土方であり、地位向上は望めないと思う。人月神話じゃなく、ファンクションポイント法とか、なにか定量的に説明出来ればいいのだけど。ファンクションポイント法だって、それが分からない人には通じないわけで。「小学校入学した児童にも分かるような」説明が出来ないとダメなんだろうなぁ。どうすればいいんだろ?

  • リファクタリングしないでいいなら1人月でいけるのでは? K&R Cで書かれた部分はそのままモジュール化して、ラッパをかぶせて使えばいいんでしょ? 性能低かろうか、機能が足りなかろ...

  • マジレスすると説明ができようができまいが関係ないとおもう。なぜなら、営業さん(上司・お偉いさんも)は話を聞く気がないみたいだから。 個人的にはどう見積もっても3人で4ヶ月...

  • 説明しても判らないであろう部分は、抽象化して説明すれば良いんでないか。 相手は理解をしたいわけじゃないだろう。 納得したいだけ。

  • こんなの書いてねーで行進しろ

  • VBで作れない要件のシステムを受託してる時点で最初から負け戦だな。 そういうものは自分で構想して、箱に詰めて、値札を貼って、店頭に置くものなんだよ。 受託開発で相手に聡明さ...

  • 定時で帰れば?

  • プログラムを理解させるには?のブックマークコメントを読んでいて。 ブックマークコメントの中に、「資格」とかのコメントがいくつかあった。 既に情報処理試験とかあって、いろん...

    • 失敗したマンガや小説を他の作家がリカバリーする、というのはあり得ないのにね。 漫画はアシスタントが居るからありうるんじゃね? 要は、共同で何かをすると、誰かがリカバリ...

  • 話を聞く気がない客に何を言っても無駄。 1人月でやれば、今度は0.75人月とか言い出し始めるだけ。 理屈ではなく、前回いくらだったか?を基準にしてるんだから、努力すればするだ...

  • そんなの、普通にありのまま話せばいいと思うが。 「ざっと見た感じ、4人月いりますね」と。 どうせ細かい説明しても向こう分んないんだし。 どうしても工期短縮しろってんなら、...

  • お金持ちに大量に触れて気づいた8の共通点 http://anond.hatelabo.jp/20110825105018 3317users 生活・人生 2011/08/25 --------------------- 自分でWEBサービスを作りたいと思っている人へ http://anond.hatelabo.jp/201...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん