幻想プログラマー森君(仮称)の残した傷跡
-
cabbagestole
- 2094
- 0
- 0
- 0
![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
聞いてくださいよ。後輩の書いたSQLに where hoge >= x and hoge < x とか書いてあるの。それで「1行もデータ出てきません!DBのデータがおかしいです(キリ」とか言ってるの。出るわけねーだろ!
2011-06-22 22:18:07![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
「from年月日時分とto年月日時分の合計10個のセレクタがあって、from-toの範囲が1日を越えていたらalart()を表示する」という要求に対し、セレクタの値変える度にalart()だしやがる。ウザイ。 onSumit の時に判定だろ!?常考。
2011-06-22 22:24:37![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
森君のトンデモ:(JavaScript) id属性とname属性の引数を直前まで持ってきてるのに、getElementById()にname属性変数与えるコードをリリース。当然動かない。言い訳が「あれ?開発中は動いていたのに」
2011-06-22 22:30:57![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
森君シリーズ:(php/Smarty) テンプレートファイルを所定位置でない所に配置してsvnに登録。当然動かない。言い訳が「開発サーバにはちゃんと置いたんですが」現地リリースする時に違う場所に配置されるだろ常考。
2011-06-22 22:34:17![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
森君おやくそくシリーズ: if( true == foobar) と書かずに if (foobar = true) と書くクセがついている。やっちゃいけないお約束の基本をしっかり押さえてるwww(当然代入されるから評価式は変数の値によらず常にtrue)
2011-06-22 22:37:39![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
森君はいはいくまくまシリーズ:linuxがターゲットなので ソースコードはUTF8でLF改行で書いてください→当然のようにSJIS+CRLF改行で書いてsvnにチェックイン!
2011-06-22 22:40:53![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
森君(略:過去2年間事あるごとに正規表現使えとやってみせ、言って聞かせて、させてみてしてるんだが、未だに substr,substr,substr。
2011-06-22 22:48:41![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
森(ry:「自分情報処理の専門出てるんで(キリッ プログラム任せてくださいよ(キリッ」 森君のすごい所は(1)学習しない(2)成長しない(3)すぐ忘れる 。これで情報処理で飯食っていけると勘違いしてる所
2011-06-22 22:50:44![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
森君はもうPJから放逐したけど傷痕は残る。実効の無いコード書いてあったり、ソースファイルの文字コード間違えてるだけなのに無理矢理mb_encode()使って矯正したり、日付の書式違うの確認しないでリリースしてたり。
2011-06-24 10:19:34![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
森君は文字列至上主義でオブジェクトを使わないが、SQLに展開したとき Where datetime = TO_TIMESTAMP('2011-06-23', 'YYYY/MM/DD') とやってしまう位に、言語毎の時間文字列表現の違いを理解してる訳では無い。
2011-06-24 10:34:10また一緒に組むことになったので続編を追加
![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
今年同じ部所から退職者が多い。そのうち一人の担当PJを引き継ぐ事になったがここでまた森君(仮称)と組む事になった。PJはプロトタイプ開発で進められプログラム作成テストは完了、ドキュメントを整備して納品するだけの残作業の筈だが、未整備のドキュメントを見てまたアイタタを発見・・・
2011-11-25 10:46:03![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
具体的には手順書のユーザ設定項目のパラメータ名誤記が酷過ぎる事。key-value形式で動作パラメータを設定するのだけどこれが酷い。以下森君(仮称)シリーズの誤記リスト
2011-11-25 10:55:42![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
☓ ConfigRation ◯ Configuration 頭大文字の規約で作ってるのでどうやら森君は Config と Ration の合成語だと思ってるらしいw
2011-11-25 10:58:00![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
☓ MENTTOOLE ◯(多分)MaintenanceTool 何故か全て大文字。メンテもツールもタイポw スペルが長くて省略してごまかそうとしたが2文字目からいきなり間違えてるからその戦略も破綻w
2011-11-25 11:05:33![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
値は E または I とする。E,Iは Effective, Invalid の頭文字。とあるwwwwww 対語なら Enable Disable だろうに。値は一文字とか自分ルール持ち込むからOn/Offと選択できず自分で首絞めた結果だろ
2011-11-25 11:10:392011/12/14追記
やっちゃいけない事のテンプレート集に出来そうなのでコツコツメンテしよう。
またまたネタを提供してくれた森君に感謝(!?)しないと。
![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
ただの業務アプリなのに何故かSQL文がファイルに外出し。理由は「将来変わるかもしれないから」「で変わる可能性はあるの?」「ありません」 ハードコードでいいよ…
2011-12-14 09:12:51![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
ストアドプロシージャの中見たらSELECT文を実行するだけ。理由を聞いたら「where句の値を設定する為」バインド変数使えよ…
2011-12-14 09:15:12