193
ありあ @aria_nico
某頭のとてもいい大学院卒の方がプログラム修正してくれたら、元々200行くらいコードが書いてあったはずの場所に何もなくなっていて、凡人には理解しきれない正規表現が一行だけ書いてあった。 #本当にあった怖いプログラム
えすびぃ @SB_RX29
あがってきたソースをマージしてビルドかけたら、大量にエラー吐いたので確認したら別言語で書かれていた。 #本当にあった怖いプログラム
吉村美代 @myonyomu
int i; int j; int k; //以下二千行に渡るforとifとforeachが乱舞するゴッドメソッド #本当にあった怖いプログラム
an_shida @an_shida
いかにも見た目がCOBOLだった社内システムが実際はC++かなんかで、COBOLの技術者を呼んだら「こ、これはCOBOLではありません!」と言われたこと。 別に怖くないかもだけどアニメっぽかった。 #本当にあった怖いプログラム
みなぎ @mi_nya_gi
一部機能システムを外出ししたら「出来ました」と戻ってきたので画面のボタンを押してみたら何も起こらず、ソースを見たら1行も処理が書いてなかった #本当にあった怖いプログラム 原因は部長が「みれば常識でわかるだろ」と画面設計のみで機能設計を1行も書かずに外注したから
ナイアル @nyal013
イテレーター(i,j,k,l,m,n)がグローバル定義 #本当にあった怖いプログラム
zeroyoung @zeroyoung
rm -rf $a/ …ただし$aに値が入らない場合がある #本当にあった怖いプログラム
____ @bcccc1234
1週間が8日、 1日が24*60*60*60 秒。 書いてあったコメント _人人人人人人人人人人人人_ > // 60かけるの一回多い <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄ #本当にあった怖いプログラム
♨️ ガッキー ♨️2Schwarz3CP+ @kimagure_bito
#本当にあった怖いプログラム if(true){ //処理 } 俺はこのコードみて背筋が震え上がったことがある。
もち @opbox
データベース操作してるけどエラートラップが見当たらないVB6 #本当にあった怖いプログラム
けーほす @joaku2013
半角スペースを全角スペースにしてエラー起こさせる嫌がらせ #本当にあった怖いプログラム
しょご@ファンフェス参加 @shogo_drumer
別会社に委託作成したらしい仕様書等ドキュメント皆無のプログラムの保守を引き受けた際に見たソースを処理順におっかけてたら // ここは○○さんに仕様を聞く ってコメントアウトがあった。 誰だよ。。。 #本当にあった怖いプログラム
ひねこ @SS_scatlet
コントローラとの通信が途絶える直前まで稼働させていた場合、通信不能になった時にロボットが右に走り続ける #本当にあった怖いプログラム
ぺっちぺち @pechipechi
既に市場にでてる製品のソース見てたら こんな処理を見つけた時 #if 0 // リリース時にはこちらを有効化 〜 #else // デバック用  〜 #endif #本当にあった怖いプログラム
ほりのり @horinoritw
#本当にあった怖いプログラム // ここでメモリリークします。 見たときに「直せよっ!」と叫んでしまった。
闇影幼女 @kagenoD
#本当にあった怖いプログラム 「スクリプト?いじれます!」と言った社員の書いたコードにfor文がひとつもなかった。6万行。
クロノス@製造が設計より上位工程な現場 @risc2009s1
if文、switch文、goto文、ラベルのみで記載された2千行を超えるゴッドメソッド。 #本当にあった怖いプログラム
こうよし(右) @kouyoshi_co
稼働中のソースに「とりあえず理由は分からないけど動くからこれで!後でリファクタリングとかしてください」的なことがコメントで書いてある #本当にあった怖いプログラム
コージャ月村@3/31セゲいち @mugon001
ほとんどがBASICで書かれたMMLの演奏プログラムがパート別に十数台あって選曲の度に5インチフロッピーからデータ読み込んでMIDIとFM音源でオーケストラをフルで演奏する8ビットPC群 #本当にあった怖いプログラム
神代樹 in YW @itsuki9046
#本当にあった怖いプログラム Rubyベースの言語なのにeachが一度もなく全部for。
偽赤翡翠 @fakefirebird
#本当にあった怖いプログラム 四捨五入処理が末尾一桁が4以下で切り捨て、5以上で切り上げになっていた。
偽赤翡翠 @fakefirebird
#本当にあった怖いプログラム 部品表をたどるVBA、Lv3までしか展開できない処理の中身をのぞいてみたらLv1~3までLvごとに固定のFor Loopで処理するようになっていた。 (普通は再帰関数を使う) なお、そのモジュールはSUB一つだけだった。
猫又にゃぉ助@宿毛湾泊地所属提督 @nekomata_nya
開発が間に合わなくて、月次処理の値を電卓で計算し、その値をvalue値に手でいれて印刷してた、某料金請求システム #いうなよ絶対にいうなよ #本当にあった怖いプログラム
残りを読む(373)

コメント

にゃあ @kirikami 2016年4月21日
まとめを更新しました。
にゃあ @kirikami 2016年4月21日
まとめを更新しました。
とりっく☆すたぁ @trickstar1982 2016年4月21日
if(true) ってどういうときに使うんだ……? if(false) ならたまに使うけど
きゃっつ(Kats)⊿4/7日向坂大阪個別 @grayengineer 2016年4月21日
DBからあるテーブルを全件取得して、そのレコード数分ループする中で他のテーブルからデータを取得する処理が10件くらい。外注さんから上がってきたものだったんだけど本番データで動かしたら何分も処理が戻ってこないので直してくれと言われた。結局SQLを修正して1回の処理で必要なデータ全部取ってこれた
ちいさいおおかみ〜クリアカード編〜 @siu_long 2016年4月21日
Paizaネタがあったので噴いた。駄菓子菓子、Paizaではもっと恐ろしいコードが身を潜めていた!
ちいさいおおかみ〜クリアカード編〜 @siu_long 2016年4月21日
プログラム勉強初歩の時点で"これを忘れると無限ループになります"と講師から指摘されていて、それをやってしまってTSS上で無限ループこいた時は真っ青になる。#本当にあった怖いプログラム
Chief Buster @chief_buster 2016年4月21日
if(true){ ... } と書かないと、オプティマイザが誤動作するとかなんとかが大昔にあったような... ... 割り込み処理だったかなぁ。
FFR31 @FFR31 2016年4月21日
今度は熱いお茶が怖くなってきた
にゃあ @kirikami 2016年4月21日
まとめを更新しました。
しょーた @shota243 2016年4月21日
この手のまとめの本当の楽しみは、本当にいる怖い「本当にあった怖いプログラム」報告者を探すことだよな。
いもいも@BOTは星になりました @imoimo2009 2016年4月21日
あるシューティングゲームで、敵の出現ポイントの数だけIF文がずらっと並んでたのは見たことあるなぁ。 かなり手の込んだ演出も入ってたので、これはこれでスゲぇって思ったw
せい@桜の花散る下で @tarotaro2007 2016年4月21日
意味不明で難解なのがおもしろいまとめ
にゃあ @kirikami 2016年4月21日
まとめを更新しました。
初瀬 神楽 @Kagura_d34272 2016年4月21日
intなんとか型ってなーに、intの拡張版?って言ってる某大手SIer社員がいて、そいつがメンテしてるソースを覗いたら件の変数がIntPtrで、しかも/unsafeなコードをASP.NETで動かすような割とエグいやつだったとかいう怖い話なら割と最近聞いたような、聞かないような。
ゆうき @F001Yuki 2016年4月21日
酷いコードはどこにでもあるので、怖さを決めるのはそのプログラムが何に使われているのかってことだと思う。あと、「今も動いている」とか。その辺のこと考えてこのタグに書ける人は、いい仕事する人だと思う。
にゃあ @kirikami 2016年4月21日
まとめを更新しました。
undo(長寿と繁栄) @tolucky774 2016年4月21日
ループ処理が出来ないプログラマーって実在するの?(白目)
ビッター @domtrop0083 2016年4月21日
if(ret==RET_OK){/*なにもしない*/}else{ ・・・
倉瀬美都 @clausemitz 2016年4月21日
ID番号が大きいほど、やたら遅くなるプログラムで、これって目的の位置にseekで飛んでるんじゃなく律儀に先頭から1バイトずつ読んで移動してるんでないの?って冗談で言ったら、その通りだったことがある。 orz
愚者@BOOTH通販開始 @fool_0 2016年4月21日
珪素おじさん「そんなプログラムは無い」
にゃあ @kirikami 2016年4月21日
まとめを更新しました。
ITDOREIKUN @wtpgjmwtpgjm 2016年4月21日
またまた~、みんなこの程度じゃ怖くないでしょ?
アルビレオ@炙りカルビ @albireo_B 2016年4月21日
「誰だこんなクソコード書いたのは」って言いそうになったけど、コメントに上司の名前があるのに気づいて命拾いしたことがあるからコメントは大事。できれば書いた人の名前も入れよう☆(冷静になるとVB6じゃこんな書き方するしかないか、ってやつだったし)
KITI @KITI_TW 2016年4月21日
動けば正義ですよ。
toshifumi takizawa @tackyto 2016年4月21日
3000行のデータ取得SQL。JOIN と CASE式と UNION が複雑に入り組んでて発狂した。 if(true) はソースのバージョン管理が出来ない業務にて、条件分岐を外す改修でやったことがある。コメントは付けといたけど。
にゃあ @kirikami 2016年4月22日
まとめを更新しました。
空弁者 @scavenger0519 2016年4月22日
rm -rf $a/ $aに値が入らない場合、現在のunixではメッセージが出るはず。つまり「いきなり/からの消去(削除)はない」筈。
Naruhito Ootaki @_Nekojarashi_ 2016年4月22日
通信が途絶えたら停止するか左右どちらかに旋回し続けるって制御はわりと普通でしょ。
Briareos@残弾数はいつも────── @briareos 2016年4月22日
C言語が主流だった頃、重要な変数が全部グローバル変数で、デバッグしようにもどのタイミングでどこで変数の値が更新されるのかさっぱり見当つかなくて、デバッグが困難を極めたことが有ったなぁ。最近はよほどのことがない限りローカル変数で処理するように教育されるようなので、そういうのはないと思うけど
the loyaltouch @theloyaltouch 2016年4月22日
COLUMN_LENっていういかにも定数っぽい見栄えの値が実はユーザからの入力を検査せず格納してる変数だったっていうのは見かけた。
きゃっつ(Kats)⊿4/7日向坂大阪個別 @grayengineer 2016年4月22日
『最近はよほどのことがない限りローカル変数で処理するように教育されるようなので』 それはそれで、全体を通してスタティックに使われる変数までローカルにして、いちいち全部の関数の引数で渡すような実装にする人もいるので、どっちか極端に倒せばいいというものでもなく、要するに「用途に応じたスコープで宣言しなさい」が正解だと思います
アルビレオ@炙りカルビ @albireo_B 2016年4月22日
briareos Cはグローバル変数のアドレスが変化しないので「特定アドレスのアクセスで割り込み発生できるCPU」と「それを利用して変数の値が変化するとブレークできるデバッガ」があればグローバル変数の方が更新を捕まえやすかったりしました。もちろんそれを利用できない環境もたくさんありましたが
にゃあ @kirikami 2016年4月22日
まとめを更新しました。
taka @Vietnum 2016年4月22日
if(期限==迫ってる)がTrueなのにelse {サボる}にばっか飛ぶ人生プログラム
CCCP製 @gyouretudaisuki 2016年4月22日
if(true){ } は、仕様変更でifが不要になった時に面倒だとそうやってしまうな
NiKe @fnord_jp 2016年4月22日
何が怖いのか分からないばかりか、『あれ、ふつーそう書くもんじゃないの』と思ったのがいくつか。ぬぬぬ……
藤堂雷鳥🖖 @CHICKEN_TODO 2016年4月22日
if (true)は、元々条件があったけど仕様変更で条件が不要になったとかじゃないかな。 if文消すとインデントも修正することになる=その部分もレビュー対象となる。とかでワザと残してるとか? for() や while() の中で突然出てくるbreakやcontinueは、コーディング規約でgoto禁止されてるところでよくやる
にゃあ @kirikami 2016年4月22日
まとめを更新しました。
ちいさいおおかみ〜クリアカード編〜 @siu_long 2016年4月22日
scavenger0519 /、即ちルートディレクトリを消しちゃったら全滅だから、システムが防衛手段としてそう云うのを禁止してるんですよね。
ちいさいおおかみ〜クリアカード編〜 @siu_long 2016年4月22日
_Nekojarashi_ 通信が途絶えたらシステムを停止させるのは良心的だけど、どちらかに行ったままの鉄砲玉は危ないんじゃないでしょうか?
にゃあ @kirikami 2016年4月22日
まとめを更新しました。
アルビレオ@炙りカルビ @albireo_B 2016年4月22日
siu_long (十分広い場所で)自動車のハンドルを右か左にめいっぱい切ったまま走ってるところを想像してください。だいたい同じ場所をぐるぐる回り続けるんですよ。ラジコンの船や飛行機などでは見失ったり回収困難な場所へ行ってしまうのを防ぐためによくある仕組みです
あえとすの熱的死 @aetos382 2016年4月22日
1ブロックあたり1,000行ある if-else が3重で、一つの関数の中に8,000行あったプログラムの改修をさせられた。 共通部分を切り出せば劇的に減るだろうと思いつつ、心が折れてそのまま送り出した。 #本当にあった怖いプログラム
あえとすの熱的死 @aetos382 2016年4月22日
全ての画面クラスに AppDomain がどーたらとか書いてあって、あぁ、これは「おまじない」だな、と思った #本当にあった怖いプログラム
にゃあ @kirikami 2016年4月22日
まとめを更新しました。
Naruhito Ootaki @_Nekojarashi_ 2016年4月22日
siu_long 止められないから旋回させるんですよ。例えばラジコンのヨットとか、受信機がコントロールを見失うと舵をどちらかにきってウェアリング(下手回し)させるようなものがあります。ぐるぐる回ってくれてれば回収に行ける。
にゃあ @kirikami 2016年4月22日
まとめを更新しました。
きようへい コミティア127 ね22b @kyohei240k 2016年4月22日
ほんと、おなじ動作するコードを1/10の行数で書いたら報酬10倍もらいたい。
あすかまる @_akm00 2016年4月23日
まとめに入っている「四捨五入処理が末尾一桁が4以下で切り捨て、5以上で切り上げになっていた。」のツイートにぎくりとした。 昔MSX-BASICを使ってるとき、小数点第1位を四捨五入するのに、まず数値を文字列にして、MID$で小数点の次の文字を取り出し、5以上の場合に元の数字を整数にしたものに+1してた。かなり後で知ったけど、正の数なら「int(数値+.5)」だけでいいのよね。
にゃあ @kirikami 2016年4月23日
まとめを更新しました。
にゃあ @kirikami 2016年4月23日
まとめを更新しました。
アルビレオ@炙りカルビ @albireo_B 2016年4月23日
_akm00 いや、負の数でもそれでOKですよ。-1.4ならint(-1.4+0.5)=int(-0.9)=-1、 -1.6だとint(-1.6+0.5)=int(-1.1)=-2
にゃあ @kirikami 2016年4月23日
まとめを更新しました。
にゃあ @kirikami 2016年4月24日
まとめを更新しました。
Chariot @BLACK_RX_24 2016年4月24日
どっかで聞いた与太話。 マイクロソフト・ウィンドウズは膨大な人数がシフト制敷いて組んでいるため、 //俺はここまで //今日はここまで 的なコメントアウトがいたるところに書かれているらしい
にゃあ @kirikami 2016年4月24日
まとめを更新しました。
にゃあ @kirikami 2016年4月25日
まとめを更新しました。
ノノ(QP枯渇病) @Rolling_Tail 2016年4月26日
冒頭ですでに理解したくなくなる
ニド @2ewsHQJgnvkGNPr 2016年4月26日
冒頭どういうことなの……「乱数生成するコード書け」って言われて「rnd()」一行で終わり的なアレ?
にゃあ @kirikami 2016年4月27日
まとめを更新しました。
にゃあ @kirikami 2016年4月27日
まとめを更新しました。
きゃっつ(Kats)⊿4/7日向坂大阪個別 @grayengineer 2016年4月27日
2ewsHQJgnvkGNPr 文字列の検索や変換などの処理を、たとえばindexOf()とかsubstr()とか駆使していろんな条件分岐や判定を繰り返して行っているのを、正規表現を使うことで一発で終わらせることができた、ということだと思います。ただ正規表現は非常に可読性が低く、よほど慣れている人でないと記述を見てその意図をすぐ理解することは困難なので、何かの魔法の呪文のようにしか見えないことも多々あり…
ham_o @ham_o 2016年4月27日
_akm00 そういった手間や効率の問題じゃなくて、「位」ではなく「末尾」を見ているのが元のツイートの怖いところでは? 例えば小数第一位で四捨五入する意図でその処理を組んだところに小数第三位まである小数や浮動小数点数が入ったらどうなるかという話。
にゃあ @kirikami 2016年4月27日
まとめを更新しました。
にゃあ @kirikami 2016年4月28日
まとめを更新しました。
にゃあ @kirikami 2016年4月29日
まとめを更新しました。
にゃあ @kirikami 2016年5月8日
まとめを更新しました。
uniuni @wander__wagen 2016年5月8日
ウンコードというかクソースというか
にゃあ @kirikami 2016年5月8日
まとめを更新しました。
にゃあ @kirikami 2016年9月4日
まとめを更新しました。
Zinc in Osaka @zincinosaka 2016年11月22日
やっぱり本人以外誰もメンテ出来ないのが一番リアルな恐怖では。汚すぎるのと賢すぎるのと。
köümë @tknr_koume 2016年12月6日
MMLのクダリのは怖いというより良い意味で恐るべきやつやん
にゃあ @kirikami 2017年1月21日
まとめを更新しました。
ざの人(togetter用垢) @zairo2016 2017年6月7日
kirikami あの~ すみません。 まとめを更新しました。 は  コメント欄から削除したほうがスッキリします。あまりにも それが多すぎ(汗 記録として残したいのなら、その内容をまとめの後半にLOGとしてのこす とかすればいいかと思います。
あるけむ(R.K.M)アカウント再建中 @fwbc1965_3 2017年6月7日
昔、COBOLソースのメンテ担当だった時、修正の繰り返しの結果、以下の処理になっていたのを見つけた。 IF (i > 0) THEN CONTINUE ELSE CONTINUE END-IF
あるけむ(R.K.M)アカウント再建中 @fwbc1965_3 2017年6月7日
kyohei240k 気持ちは分かりますが、可読性や処理速度なども考慮して欲しい所です。
あるけむ(R.K.M)アカウント再建中 @fwbc1965_3 2017年6月7日
fwbc1965_3 そういえば、同じプロジェクトで、閏年かどうか判断する共通ルーチンで「400で割り切れる場合は閏年」という処理が漏れていた。もちろん西暦2000年問題の対応で修正したけど...余計な仕事をやらされて、その後体壊して倒れる遠因になった。
減量中@そでのした @sodenoshita 2017年6月19日
仕事でしかコードを書かない人のソースは酷いものになると思ってる。向上心が全く無いんだもの。
@wanwanbawbaw 2017年7月2日
basicで音鳴らすの作ったときに終了させる分岐を書き忘れたためにループ。 自宅でよかった。 しかし高校の図書館PC前に終了処理書かない例文が置いてあってみんな同じことをやった。
tarosuke @tarosukenet 2017年9月21日
CHICKEN_TODO 他を触りたくないなら{}だけ残しとけばいいのに。
のりしあん @noricyan2 2017年11月2日
{}だけ残しは言語によるでしょ
yasu (HIRATA Yasuyuki)@アスカネット @hirayasu 2017年11月2日
{} だけ残しはさらに意図が分からなくなる。
にゃあ @kirikami 2017年11月2日
まとめを更新しました。
xen38 @xen381 2017年12月5日
↑それが一番ヤバイんだよ
believe @aLdQYdQ2qEKmDSm 2017年12月13日
こんばんわ。まとめを更新、できたらいいなぁと、個人的には、水鳥に、水色やん!?ステキなことね。ありがとうございます。感謝しています。御やすみ。
köümë @tknr_koume 5月28日
あれ?CompJapanは?
にゃあ @kirikami 5月28日
まとめを更新しました。
@wanwanbawbaw 8月10日
そういえば以前C++で出した案件がFortranで上がってきたというのを聞いた。とても良くできていたそうな
ログインして広告を非表示にする
ログインして広告を非表示にする