クソコードの起源を追う

背景

年末頃のことです。X(旧Twitter)にてクソコードに関する呟きと、そこから色々な考えが連なってきて「商売ができるクソコード vs 商売ができないキレイなコード」と思われる構図が見受けられました。

よくよく考えると、「クソコード」という言葉を自分なりに理解なく使っていることを感じ、以下のような書き込みをX(旧Twitter)に残して色々と調べてみることにしました。

そして以下のようなポストを残していろいろな合間に調べていました。

https://twitter.com/hima0398/status/1740164322981208195

 

古くに語られていたクソコードというワード

例えば「技術的負債」という言葉は、Ward Cunningham
1992年にオブジェクト指向プログラミングのカンファレンスで
コードの初回リリースを「負債」と喩えたことが起源と言われています。

その喩えで表現しようとしていたことはt_wadaさんのブログにまとめられており、起源を辿ることができます。

t-wada.hatenablog.jp

では「クソコード」はどうなのか?月並ですが現在インターネット上から
検索できる情報を探してみます。

 

2011年クソースという記録

当時日本工学院八王子専門学校の講師 大圖衛玄さんが(おそらくCEDEC 2011で発表された)「ソースコードの品質向上のための効果的で効率的なコードレビュー」のスライド中(p.74以降)に下記のような解説が確認できました。

https://www.slideshare.net/MoriharuOhzu/ss-9224836

クソース [kusource]

理解不能で変更困難なプログラムコード。
巨大かつ複雑で、重複しているケースも多い。
変更するたびにバグが発生し、バグが収束することはない。
地方によっては、uncodeと呼ばれる。

 

2012年ウンコード・マニア

酷いコードに苦労したプログラマーに溜まった何かを吐き出し、

反面教師から学べる(?)サイトです。

unkode-mania.net

上記クソースのスライドはこちらのサイトからのリンクでした。

2023年の投稿もあり、10年以上酷いコードが蓄積され続けているサイトになっていました。

 

2012年ハッシュタグ「#俺が見たクソコード選手権」

当時Twitter界隈では、2012年頃にすでに#俺が見たクソコード選手権というハッシュタグが観測でき、合わせてNAVERまとめへのリンクがありました。

しかしながら、NAVERまとめは2020年に終了しており、現在リンク先の参照はできませんでした。

 

まとめ

「クソコード」という言葉をなるべく正しく認識して使うために起源に近づいてみました。今調べられた時点では2010年代前半にいくつか目立った話題が観測でき、さらに以前にも使われていた話はあるものの、それより前の具体的な話は見つけられずでした。

 

その他

年末年始に何やっているのだろう。。