(以前に同じ趣旨の事を書きましたが、再度考える事がありました。)
オープン系(MS系)の仕事をしていると、互換性信奉者を煙たがったりしますが、私の社会人初仕事はMainFramerでして、複雑な思いをすることがあります。汎用機でCOBOL、中型機でRPG(Ⅱ、Ⅲ、400)を数年携わっていました。
(注: RPGはカラム固定の定位置書式言語。青三角がなければソースが読めない。....知らない人には意味不明かも)
其の時に受けた教育の一つが、「プログラムソースは改変要求が無い限り永遠に動作するものである」というのがありました。
だったら、2000年問題を引き起こすなよ..という突っ込みはさておいて。OS/Compilerが進化しても、バイナリはそのまま動作する。ソースはコンパイルできる。が必須条件でした。
業務システムの耐久性を考えると至極当然の事なんですが、開発技術面からみると、刺激が少なくマンネリ感が生じたりします。
反面、10~20年前の知識でも仕事が可能だったりします。
純粋の業務からみれば、何十年経っても動作するのが理想であることは理解できます。
現在のAPIを殺さずに、新技術の導入は難しいし、過去を捨てることで実現できる事もあります。
ジェネリックの無い .NET1.xには戻れない、ましてや、VS6.x以前の仕事は断ってるし、勝手なものです。www)
結果として、オープン系文化は、システムの耐久性よりも、開発技術の進歩を選択したのだと思います。2~3年でガラリと変わる、我々にとっては面白い事この上ない世界になってます。
汎用機文化とオープン系文化は成り立ちが異なるので、善悪/良し悪しを論ずること事態、成り立たないしナンセンスです。
ところが。互いに攻撃しあったり、自分の文化を相手に強要したりする輩があとを絶ちません。
ソース互換がないから新版は使えない。と言って今だに, Win3.1 + VB2.0 を使い続けているSI/顧客もあると聞きます。
ウォータフォールは汎用機文化に馴染んでいますが、SE/PGの謂れ無き差別を生んだと思ってます。PM/SE/PGは役割の差であって、上下関係でないのは、明白でずか、上下関係だと位置づけられているIT業者が少なからずあります。
弊害として、開発技術を理解していないSEが設計して、時流に沿わない非効率的な設計書を書きデスマーチに突入することが起こったりします。
若い技術者でも汎用機文化に染まると、そのような思考が身に付いてしまうみたいですね。
「互いの価値観を認め合う」という基本が通じないのは、どの世界にもあることだなぁ。と考えてしまいます。
大仰に考えれば、
石炭産業が石油産業に駆逐されたとき、敗戦処理を誤った結果が夕張問題だと言えなくもない。
駅馬車組合がいくら反対しても鉄道文化に駆逐された。
昭和初期、車を運転できるだけてエリートだったが、運転できることの価値は少なくなった。
NTT-CAPTAINは Internetに敗れた
この伝で行くと汎用機文化の人は考えないと危ないかも....www)