カレーなる辛口Javaな転職日記 RSSフィード

2015年 01/18

綺麗な言葉で話しかけても糞コードは糞コード

誰かのコードを読んでいるとそりゃまあクソコードを見つけることがある。その時どう立ち向かうかという精神論の話。

語るに落ちた.orz

精神論じゃコードは解決しないよ.

例えソレがそうであってもソレを口にするとネガティブが蔓延する。思ってもイイ、でも言ってしまってはならない。あるフェーズに置いては必要だった し、現に動いていて価値を提供している のだ。

これは「今では糞コードになったがかつては意味のあったコード」や「完璧ではないが十分に優れたコード」の話だよね.

それはまだ幸運な人達の話.*1 世の中には生まれた時から何も価値を提供してこなかった,想像を絶する真の糞コードと言う物が存在するのだ.技術的負債って言葉も聞いたことないのかな.

改訂新版 Cプログラミング診断室

改訂新版 Cプログラミング診断室

http://www.pro.or.jp/~fuji/mybooks/cdiag/

あるべき姿を叫ぶの簡単だ。あるべき姿を見ているなら行動しないといけない。見つけたらリファクタだ。出来るところからやるんだ。

そやな.まずは糞プログラマに糞コードを突き返すところから始めよう.

そうしないと糞プログラマはいつまでも糞を垂れ流し続ける.馬鹿は死ななきゃ治らない.


http://b.hatena.ne.jp/entry/ppworks.hatenablog.jp/entry/2015/01/17/152545

  • id:ssig33 このやり方だとこの人の負荷だけが増えていきませんかね、、、、、、
  • id:homarara 糞コードの裏には糞プロマネと糞プロジェクトが潜んでるから、手を触れると糞まみれの残業地獄が待ってるぞ。

激しく同意.

この元記事は,いかにも日本企業の糞プロマネの言いそうなことだから要注意! こういう糞野郎には糞とハッキリ言ってやるべき.


  • id:knjname そのクソを直せる状況になくなおかつそのクソの上に新しいクソをひり出すしかないといったクソ現場は割りとあるけれども、クソを前と後ろから垂れる前に手を動かせ改善提案しろというのは正しい

「糞を垂れ流すしか能のない糞プログラマにコードを書かせるな!」というのが唯一の正解という現場はわりとある.

  • id:love0hate どこからとも無く現れたクソコードをリファクタする作業が今の仕事なのでクソコードと呼ばせてください。/サービスの有用性とコードの質に相関性がないことには同意。
  • id:aya_momo それ以前にどうやってリファクタリングする時間を見つければいいのだろう。
  • id:nekora ”許可を求めるな Pull Request せよ” 雇われている身の場合は、その作業に工数を掛けて良いか、の許可が必須なので、問題が起きているのか、今後改造して再利用する予定のあるモジュールなのか等に拠るだろうな。
  • id:otchy210 まあ、ウンコードと呼んでも、クソースと呼んでもいいんですけどね (屁理屈/…はさておき、リファクタが推奨されている環境かどうか、っていうのはまた重要だよな。

  • id:ysync あんま関係ないけど、diffが意味なさないレベルで書き換えた(い)場合はどうすればいいんかね?
  • id:blueberrystream PRで解決できるようなコードはクソコードではないと思う

  • id:garage-kid クソコードを書いた人ってそこからすでにいなくなってることの方が多い気がする(言いたくても言える相手はすでにいない)。そこで書いてるならこのアプローチがあるべき姿なんだと思う。

前半は同意.

後半は違うな.糞には糞とハッキリ言ってあげるべき.

  • id:lesamoureuses 僕は新卒の子に「クソだと思ったらこれクソじゃないですか?って言って欲しい」と伝えてた。そうした理由があるならそこで話せばいいし、自分がクソだって気づいてないかもしれないから。p-rでもいいけど長い
  • id:YaSuYuKi 「賢明さの態様は非常に少ないが愚かさの態様に限りはない」故にクソコードではなく具体的な問題の名前で呼ぼう。どう愚かなのか伝わらないので/LinuxのMLは罵倒でみちあふれているが大成功しているよ

糞を糞と知ることが,上達への第一歩.

本当の糞プログラマーは自分が最低の糞であることさえ気付いてない.


  • id:masatomo-m 10年前の業界標準で書かれたコードで、当時は許されたけど今ではクソコードと呼ぶしかない状態というのは大いにある。コードがクソでも枯れていることの方が求められるケースも多々あるのが職業プログラムかと
システム障害はなぜ起きたか~みずほの教訓

システム障害はなぜ起きたか~みずほの教訓

許されるのはせいぜい10年までじゃね.そして実際に10年たったら書き直すことも出来なくなってましたといのが,ありがちなオチ.だからそうなる前に先手をとって書き直していく/書き直せる体制を作る必要がある.


酷い時は,もっと短期間で糞化することさえある.

http://d.hatena.ne.jp/JavaBlack/20141227/p1

*1:というか,それは糞コードでも何でもないし.真の糞コードをなめんな.