こんな Java プログラマとはいっしょに仕事をしたくない

 自社の社員だったら、教育すればいいだけなんだけど、他社の人だったらきっついわーって人。大規模プロジェクトでかき集められた人員がこんなんだったらげんなりします。

javac でコンパイルできない

 IDE に頼りすぎ。いざというときに使い物にならない。こういう人は「そもそも論」がなってないことが多い。

IDE を知らない

 上の逆。テキストエディタでこつこつ作る。そのほうがいいものができると確信してやってるわけでもないやつが多い。そういうやつはもちろん生産性が低い。

Entity クラスでもないのに public フィールドを使う

 カプセル化がわかってないことが多い。Entity クラスだけに限定して public フィールドを使ってたりするのは確信犯(?)だったりするので、別にいいけど。

static メソッドと static フィールドがやたら多い

 そもそも OOP がわかってないことが多い。public フィールドしかないクラスばっかり作ったり(構造体のつもりらしい)。

例外はすべて catch して return にエラーコードを詰めて返す

 これは C の関数ですか? もちろんせっかく JRE が返してくれる例外メッセージは全部捨ててしまってるので、不具合発生時の追求が大変なんだこれが。

Struts がないと何もできない

 それでよく Java プログラマと言えるもんだ。

javadoc の書き方を知らない

 オープン系のシステムになじむ気がない。COBOL 文化に毒されているのに気づかない。という人が多い。

Sun のコーディング規約(Java Code Conventions)を知らない

 同上

ArrayListVector の違いがわからない

 こういう人が爆弾抱えるんだよね。

ServletCGI と同程度のものと考えている

 ライフサイクルなんてぜんぜん意識しない。こういう人も爆弾魔。

StringBuffer(StringBuilder)を知らない

 プロジェクトによっては別にいいんだけど、でも、なんかなぁー。

メソッド宣言に synchronized さえつければスレッドセーフになると思っている / MUTEX を知らない

 うん。あなたは黙って Entity クラスでも作ってて。

開いたものを閉じようとしない / できるだけ早く閉じようという気がない

 ファイル、ソケット、データベース、「開く」という概念のあるものは、必ず「閉じる」もの。しかもできるだけ早くね。その気がないやつが書いたコードはいつだって爆弾庫さ!

GoF デザインパターンなんて見たことも聞いたこともない

 GoF デザインパターンが最高なんておもっちゃいません。それに全部覚える必要もないとも思います。でも、ちょっとは気にしてほしいです。せめて聞きかじっていて欲しい。

コードが鉄筋コンクリート製である

 コンクリートクラス型しか見受けられないコードしかかかない人。困りますわ〜。List でいいところを ArrayList なんて書いちゃったりして。そんなことする人がそういうふうに書くところって ArrayList じゃなくて Vector のほうがよかったりすることもしばしば。

イマドキ、ハンガリアン記法を使う

 クラス作るたびにプレフィックス名に悩むんですか? リファクタリングして型が変わったら変数名も変えるんですか? だいたい、public なフィールドやメソッドしか外部から参照できないのに、なぜ「これは public です」みたいなプレフィックスが必要なんですか?