困ったちゃんの話

もう時効だと思うので、昔々に参画したプロジェクトの話。

新しくプロジェクトに参画した人が困ったちゃんだった。何に驚いたかって初日からいきなり自前の PC とキーボード(それも親指シフト)を持ち込む。プロジェクト全員 Word を使っているのに、頑として **敢えて名は秘す ** を使ってドキュメントを作成する。本人にしてみればそれがもっとも自分自身の生産性を高めるための道具立てなんだろうけど、結果として生み出されるドキュメントがそんなフォーマットなんじゃ、とても周りはやってられない。

…とか何とか言いながら自分を振り返ると

  • キーボードは US 配列じゃないと戦えない。106 なんて糞喰らえ。106 じゃキーが遠すぎて右手小指が死ぬだろ。
  • Ctrl は A の横だろ。左下にあって何が嬉しいんだウザい氏ね。
  • コード書くなら Emacs だろ。Eclipse? 何それ。
  • 日本語入力モードでスペースバーを叩いたときに所謂「全角空白」が出てくると気が狂いそうになる。空白は常に 0x20 だろ。それ以外あり得ん(って言いながら、ことえりにはそんな芸当出来ないけど)。
  • ASCII に含まれる記号は常に所謂半角に変換されてしかるべきだ。
  • Word のツールバーが 2 段以上出ているなんてあり得ない。
  • Cygwin が入ってない Windows なんて欠陥品。

…何てこった。気がついたら自分自身が第一級困ったちゃんだ。こんなことではペアプロはおろか、他人のマシンさえ触れない。でも私と彼が異なるのは、他人とは異なる道具を使っても、他人と同じモノが作れる(Eclipse で書いても Emacs で書いても Java のコードは Java のコードだ)ってところ。

閑話休題

プログラマの習慣っていうのは、所詮習慣に過ぎない。矯正不可能なものじゃない。でもその習慣は、個々のプログラマがその長い人生の中で「仕事を手早くやるにはこうすべきなんだ」という強い信念の元に生み出してきたもののはず。だから「習慣」だと言って軽んじることは出来ないし、「習慣だったら変えろ」とは言えない。その習慣はその本人にしてみれば必然なのだし、それによって彼は高い生産性を生み出しているのだから。

プログラマに対してマシンの数が少なかった頃はとにかくあるものを使うしかなかったので、プログラマは与えられた環境の中で仕事をするしかなかった。でも最近ではセキュリティ強化のために、自由にアプリケーションをインストール出来なかったり、おざなりのマシンを「共有マシン」として使うしかない、といった環境で仕事を強制されているプログラマも多いと思う。それって本人にも組織にも不幸。道具を選べないプログラマは、どうやって最高のパフォーマンスを出せばよいのだろう。

思い切り自戒を込めて: 他人の習慣が自分の習慣とは異なるからといって、それを非難するのはやめよう。その習慣は彼の必然なのだから。