gallu’s blog

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

優秀とか有終とか憂愁とか幽囚とか

相変わらずっていうかいつも以上に純粋な「主観」ですのでご注意のほどを。


元ネタ
http://d.hatena.ne.jp/yotaropg/20081026

http://d.hatena.ne.jp/yotaropg/20081029


えと…まず。
コメントでも書かせてもらったのですが。

  • 素晴らしい機能を持った巧緻な、一本のプログラム
  • 凡庸な機能と性能しか持たない、幾つかのツール

最後に残るのはたぶん後者。

んと。優秀な人が書くのは「わかりやすいインタフェースとシンプルな機能を持った素晴らしいいくつものツールとその組み合わせによるプログラム」。
「巧妙な一本のプログラム」を書くような人は間違っても優秀じゃないと思う。
この辺は、以前にも紹介したですが、この書籍を「本がぼろぼろになるまで」読み倒すべきだと思う。

UNIXという考え方―その設計思想と哲学

UNIXという考え方―その設計思想と哲学

で。

構造も使い方も理解しやすいツールをうまく組み合わせて仕事を回すほうが、柔軟性・残存性が高い。

はYes。問題は「ツールを適切にチョイスして」「うまく組み合わせる」ために、相応に高度なスキルが必要であるってところくらいかと。そのあたりは http://d.hatena.ne.jp/gallu/20071213/p1 のエントリーあたり参照。


んでもって。

優秀なプログラマー
にもいろいろ種類があると思うんですよね。

1. ユーザーの言いたいことを汲み取れる人
2. 言語を奥深くまで理解していて「黒魔術?まーかせて!」な人
3. どっちも出来る人

先日のエントリでメモしたのは「1の人がSI分野にもっとも向いた人だなー」って点でした。

んと。
1は「ニーズのヒアリング」で2は「1に対する実装方法がわかっているかどうか」なので。最近よく使う単語ではあるのですが「どちらも欠かし得ない両輪」にしか見えないのですが。

わたしの言いたかったのは「技術的に優秀(でも他のことはあんまり・・・)なプログラマー」のことだったのでした。

今までの経験的には「技術的には優秀だけどほかはあんまり出来ない人」って見た事ないですね。
「技術的に中途半端に優秀っぽいけど実際には低スキルでしかもほかがあんまり出来ない人」はたくさん見てますが B-p

大抵の場合、昨今においてユニットはクラスになろうかと思われます

という視点は技術的にかなり高度。そして客側から見ると高く付きそうで怖い。

最近とみに目にするし感じるのですが。
オブジェクト指向プログラミングってそんなに「高度」なんでしょうか?
個人的には「基礎」程度にしか思ってないのですが正直。っつか今時オブジェクトでもの作ってないようなサイト&現場、逆に怖くて行けないのですが(苦笑

現場的には

  • main()1個で出来てるCのデータ加工ツール
  • 調達部門の人が頑張って書いたExcelのマクロ
  • システム管理者がオマケのつもりでメールで流したRubyスクリプト

こういうのを.batで繋いで「起動が面倒だからVBGUIを被せとけ!」みたいなのが重宝したりするわけです。

えと…各々怖いプログラムだなぁとか思うのはおいといて。それをラッピングする、程度のことは大抵の場合「片手間で片付いて終了」で、出来るとか出来ないとかっていうレベルで論じるものでもないと思うのですが…つまりは「この程度のことすら出来ない人が結構いる」ってことなんですかねぇ?
# いやまぁ「GUI嫌い」はあり得ますし理解もできますが。


で…上述を踏まえた上で

だからプログラマーの技術力話って、あんまり仕事に絡めて話しちゃいけないと思うんですよね。

って単語を見ると…なんていうかその現場のレベルの幽愁っぷりがすごく痛いのですが…いわゆる普通の「SIer的な仕事」というのが概ねこういうレベルなのだとすると…なにかもの凄く切ないものを感じます正直。