目下炎上中 : 『脱オブジェクト指向のススメ』について

http://b.hatena.ne.jp/entry/http://blogs.itmedia.co.jp/tamaki/2006/06/post_57ab.html
何をかいわんやですが。
まぁ、こういう意見がありえることは分かるには分かります。経営者やマネージャーの立場から考えると、合理的にこのような論理が成立することは、想像に難くありません。なぜなら、システムの多くの部分は、最新の技術*1を必要とする複雑さとは無縁だから、ROI的に最新技術を追いかけるのは合わない結論になると思います。*2
しかし、まぁ、自分の会社の社員ではなくて、よその人のキャリア相談から始まった話なので、もうちょっときちんと書くほうが、いいんじゃないかなぁと思ったりしたわけで。
前にも一度書きましたが、プログラマのキャリアの方向性って2つあると思っていまして、業務に対する知識を深めて、業務要件をどのようにソフトウェア的に実現していくかというところに注力する方向性と、技術に対する知識を深めて、技術的な困難や複雑さをどのように解決していくかというところに注力する方向性に分かれると思うのです。この2つは、相反するというわけではないですが、あたりまえのように両方できるようになるというほど簡単なものではないことは確かですし、性格的な向き不向きもあると思っています。だから、どっちを選ぶの?というところから考えを起こして、キャリアデザインを描いていかないと、なかなか悩みは解決しないんじゃないかなと思います。
ちなみに、人数的には、業務系のプログラマの方が多いのは間違いないと思います。特に、SIerなら、ほとんど業務系になるはず。というのは、業務系は¥に直結するので。SIerで技術系になろうと思うと、相当大手でなければ難しいのではないかと思います。なので、技術系なら、自前で製品を作って売っている所とか、ユーザー企業で自社向けのシステム開発をしている部門とかにもぐりこむべきだと思います。もちろん、そういうところでも、業務系の方が人数は多いと思いますが、技術系にも生きる道が確保されている可能性は高いです。
それにしても、「オブジェクト指向などクソの役にも立ちません!」とは、id:sumiiさんあたりが泣きそうなせりふだ。

*1:オブジェクト指向を最新とか流行っているとか言うのも不思議な感じはしますが・・・。関数型とか言うならまだしも・・・。いや、むしろそっちの方が古いのか? あ、よく読み返すと、最新とは書いてない。まぁ、いいけど。

*2:しかし、同じ口で、処理速度を劇的に速くしたいとか、開発期間を劇的に短縮したいとか、ユーザーの利便性を劇的に向上させたいとか、バグを劇的に減らしたいとかという希望を言って、しかもそれに対する具体的な解決策を持っていないということはままあって、そこら辺、矛盾があるように思うことも少なくないですが、それはこれとは別の話。