あなたが今までに犯した最大の間違い[クローズ]


33

Server Faultで読んだ質問と同様に、IT関連のポジションでこれまでに犯した最大の間違いは何ですか。友人からのいくつかの例:

実稼働サイトで作業を行う必要があったため、ライブデータベースをベータサイトにコピーすることにしました。かなり標準的ですが、ベータサイトに行ったとき、それはまだ古い情報を引き出していました。おっとっと!ベータデータベースをライブサイトにコピーしました。バックアップしてくれてありがとう。

そして、私にとっては、特定の時間帯に開催されるイベントのフォームを作成しました。参加者は勝つチャンスのためにフォームに記入し、イベントオーガナイザーにデータベースからCSVを送信します。私はデータベースにアクセスしましたが、私の唯一のエントリーが見つかりました。調査すると、自動インクリメントキーを忘れたように見えます。サーバーのセットアップのため、失われたデータを回復する方法はありませんでした。

この質問はStack Overflowの質問と似ていますが、実際のストーリーではなく一般的な答えを受け取ったように見えます:)

今までで最大のコーディングエラー/ミスは何ですか…


6
ギネスの質問!
ジュニアM

なぜこの質問が閉じられたのですか?私は自分の大きな間違いを追加する必要があると感じています。特に本番環境にデプロイしないように指示された後、本番環境にデプロイしてから3時間(つまりHTTPステータス500)ライブWebサイトを削除しました。最悪なことに、私は間違いを隠そうとしましたが、クライアントはそれに気づき、あまり幸せそうには見えませんでした。
マリアイネスパルニサリ

私にとって簡単なもの。投資の引き出しを支払いましたが、セントに2回変換されました。30kではなく3 milを支払いました。次点-悪いSQL where句。$ 1-$ 10の投資が1晩で$ 1800増加したことを4k人に通知しました。明らかに、これらのクライアントの一部はお金を使いに行きました。財政的にかなり迅速に回復しました。自信を失い、罪悪感が消えることはありませんでした。回復方法:責任を取ります。間違いを認めてください。要因があったとしても、他のことを責めないでください。これは、それを修正するための理解とチームの努力によって満たされました。クライアントは誠実さを高く評価しました。
Reasurria

回答:


54

すべてに一致する「悪い」WHERE句を使用してSQL UPDATEを発行する。

教訓:常に最初にSELECTを発行して、何が変更されるかを確認してください。


15
または、autocommitをfalseに設定して、影響を受ける行数を確認できます。
エフゲニーブリクマン

2
ああ、私はそれをやった。非常に厄介な...
glenatron

4
母は、私は彼らのベルトの下にいくつかのSQLを持つ誰もがいくつかの時点でこれを行っていると思い、私は含まれ
billy.bob

3
これが、最初にdevで更新を行う必要がある理由です!製品への直接のホットフィックスはありません。また、監査テーブルがある場合は、監査テーブルに非常に感謝しています。
HLGEM

13
私は誰かのパスワードをリセットするために一度それをしました。全員のパスワードを同じものに設定した後、単に技術サポートが多くの電話を受けることになるため、セキュリティ上の理由からパスワードを変更する必要があることを発信者に伝える必要があることを上司に伝えました。
バリーブラウン

36

タイプミス

このチャンクに3日間を費やしました。

if($func == "remove")
{
    $p->comments[$index]->removed = true;
    $p->save();
}
else if($func == "approve");
{
    $p->comments[$index]->approved = true;
    $p->comments[$index]->removed = false;
    $p->save();
}

エラーが表示されますか?の最後のセミコロンelse ifです。削除されたコメントが削除されない理由を理解できませんでした。データベース掘り下げ、AJAXは、私は、POST変数を使用していたた要求error_logのとalerts どこにでも。メソッドを書き直してしまい、うまくいきました。それから私は元のバージョンとの差分を行い、セミコロンに気づいた。

タイプミスは、コンパイルされていない、または何かによって事前にチェックされていない言語を追跡するのが最も困難です。このようなエラーでさえ、コンパイルされた言語では難しいでしょう。を変更する===、突然、内部で割り当てが行われますif


8
ここで、Resharperのようなツールが本当に自分自身に報いることができます-これは警告としてこれを強調し、それを削除するように促します。
Yaakovのエリス

24
タイトルは(意図した)しゃれですか?:o
アゴス

3
@Rogue Coder:一重引用符と二重引用符の違いは、ごくわずかです。それを心配して脳のサイクルを過ごすのは時間の誤用です。phpbench.com
Joeri Sebrechts

2
@ back2dos:エラー...そうです。それで、これらの言及されたすべての言語を落としてhaXeを支持することを推奨しますか?2005年に最初に登場したものは何ですか?それをすぐに進めてください。
ジョシュK

10
One True Brace Styleを支持する議論をありがとう。+1
エスワルド

28

プログラミングの大部分は、クールな新しいものをゼロから構築することだと考えています。


1
私が最初に始めたとき、私もこの考えを持っていました。それから私は他の人々のメンテナンスが何よりもはるかに多いことを知りました。だからこそ、できる限り最高のコード(コメント付き)を作成しようとしています。

2
記述する新しいコードはまだたくさんあります。多くのオープンソースプロジェクトでは、クローズドシステムと同じ機能を実装するゼロからのコーディングが必要です。
PP。

23

私の最大の間違いは、プログラミングは簡単なお金だと考えることでした...


27
お金のためにプログラミングを始めたら、新しいキャリアを積むべきです。お金はありません、それはですが、持っているあなたは本当の開発者をプログラミングするための強迫観念の愛を必要とする、またはあなたは非常に迅速に燃え尽きるだろうではないこと
JOHNC

1
あなたは良い点を指摘しました。私はお金のためにプログラミングに夢中になりませんでしたが、それから生きる方がずっと簡単だと本当に思いました。プログラミングは私の情熱であり、お金を払わなければならない場合でもそれをします。
マルセロデアギアル

4
@johnc同じは、ほとんどの職業に行きます。正直に言って、大学に行って「プログラミングを学ぶ」人を理解していません。K&Rで14歳のときに始めました。「エレクトロニクスを学ぶ」ために大学に行きましたが、どういうことか、とにかくプログラマーになりました。最高のミュージシャンは自分自身を教えました。最高のプログラマーが独学しました。それが人生だ。
PP。

アーメン兄弟、アーメン
ミスターズ

23

会社の設立時からの顧客情報、注文履歴、請求書(数年分)を保存していたデータベースを誤って削除しました。

公平を期すために、私の雇用主は非難の一部を共有しなければなりません。そのデータベースの唯一のコピーがMac SEに保存されており(これはかなり前のことです)、私にワークステーションとして私に与えたもの(真新しい従業員、大学を卒業したばかりの仕事)で、バックアップを作成することすら考えていませんでした。

だから、それがDBのコピーだと思って、ゴミ箱にドラッグしました。ファイルのサイズのため、すぐに削除しました。データ復元サービスに不当な金額を支払った後、最終的にそれを取り戻しましたが、約5日間、注文を履行または請求できず、顧客に関する情報にアクセスする方法がありませんでした。(3人の会社)はほとんど停止状態になりました。


15
痛い。自己への注意:常にバックアップを作成する必要がある場合でも、常にバックアップを作成してください。
Kramii Reinstate Monica

1
@Karmii:ベストアドバイス、伝承。
クリス

@Kramii-キャリアの早い段階でこのレッスンを学んだことを嬉しく思います。
JohnFx

解雇されませんでしたか?
Mateen Ulhaq

3
十分な非難がありました。私は当時まだ子供だったので、実際の会社が自分のデスクトップにDBの唯一のコピーを置くほどばかげたことをすると思っていたよりも、おそらく今日よりも素朴でした。経験から、大企業であっても私の雇用主の準備を過大評価するのは愚かであることがわかりました。
-JohnFx

15

phpmyadminが尋ねたとき:

「データベース全体を破棄しようとしています。本当にデータベースxxxを削除しますか?」

Enterキーを押します。


26
防御的なプログラミングが主要な問題を防ぐのに役立ったときの素晴らしい例です。テーブル/データベースをドロップするなど、影響が深刻になる可能性がある場所で何かをしている場合は、ユーザーの応答をデフォルトで「いいえ」に設定して、アクションに積極的に同意する必要があります。
ヒューゴ

6
@ヒューゴ:+1。私はuni(元Unix /データベースシステム管理者)に「真剣なことをしているときはいつでも、常にキーボードから手を離し、約10秒間座って何が起こるかを考えます」と言う教授がいました。
ボビーテーブル

1
@Hugo:私はさらに進んでいます-「データベースを完全に破棄しようとしています!本当にデータベースxxxを削除したい場合は、DELETEと入力してください」
ローレンペクテル

3
@Hugo @Loren Pechtel-「データベースを完全に破棄しようとしています。ログインのWeb検索で複数の「lol」が見つかったため、このアクションは拒否されています。管理者に問い合わせるか、コミュニケーションを学んでください。」
確実に

15

それが私の「最大の間違い」であったかどうかはわかりませんが、間違いなく忘れがたいものです。新しい仕事での最初の1週間か2週間で、サイトで最も人気のあるページの1つでいくつかのアイテムの並べ替え順序を変更する小さな「機能強化」を行うことになりました。私はコードベースにあまり詳しくはありませんでしたが、関連するComparatorをすぐに見つけて、compareToメソッド内の無害に見えるメソッドへの呼び出しを、あまり考えずに追加しました。コードはローカルおよびQAの問題なしでテストされ、稼働しました。

同じ日に上司と1対1で顔に大きな笑みを浮かべていたので、彼は入社後すぐに最初の「機能」をライブできたことを祝福しました。彼が対応するページにアクセスし、機能の動作を確認している間、私たちは両方を見ました。ページの読み込みには47秒かかりました。私の心は沈みました。彼はページを更新しました:53秒。彼の笑顔は消えた。デスクに戻り、長時間のデバッグと重要なパッチのライブサイトへのプッシュを行いました。

私が追加した無害な方法の1つは、少なくとも1つのDBヒットをもたらしたリモートサービス呼び出しでした。各compareTo呼び出しで。そのため、2,000以上のアイテムが並べ替えられているページでは、〜6000(nlogn)のDBヒットを作成していました。痛い。


あなたのコードでDBヒットは明らかでしたか、それともあなたが呼び出していたメソッド/プロパティで発生しましたか?
dbkk

DBヒットは、実際には単純なゲッターのように見えるメソッドの背後に隠れていました。compareToメソッドにmyObj.getFoo()呼び出しを追加しました。関連するサブクラスのJavaDocはDBヒットの可能性に注意していましたが、myObjインターフェースのJavaDoc(コードを書くときに見たもの)は何も言及していませんでした。どちらの場合でも、(a)私に代わっての不十分なテストと(b)良い命名規則に従わない場合に起こりうることの明確なデモンストレーションだと思います。
エフゲニーブリクマン

テスト環境が実稼働環境を代表していないという(非常に一般的な)ケースであった可能性が高いです。それをテストし、それはきちんと実行されたので、テストデータベースに実稼働データベースに含まれるデータの一部しか含まれていないことを知らずに(そして、それができなかった)良いと結論付けました。
11

15

私はこれをやった:

rm -rf /bin

(実は、私はしませんでしたまさにその。それはダムと許せないだろう。私は、基本的にコマンドが実行されていることの結果より微妙な、回り道でそれをやりました。)

言うまでもなく、Unixシステムはそれ以降使用できなくなり、再インストールする必要がありました。私は当時の初期のシステム管理者であり、私を監督している年配の男性は理解していました。

いくつかの良い経験がありました。/ binコマンドを使用せずにディレクトリを一覧表示する方法を学びました。

echo *

+1は、DEC-BSDシステムでシングルユーザーモードからBourneシェルコンストラクトのみを使用してlsおよびcatをシミュレートするなどのトリックを学習しました
Arcege

11

顧客は、基本的にイベントに関するパーソナライズされたメールを送信するユーザーベース全体へのメールアウトを希望し、メール内のリンクをクリックすると、半分のデータが入力されたフォームに自動的にログインします。

私はコードを書き、コードをテストし、うまく動作し、リンクは動作し、とてもスムーズです。すべてを確認し、二重に確認した後、ライブリストに切り替えて離れます。

ライブリストはサンプルデータよりも大幅に大きく、メールサーバーは転倒します。コンソールアプリを停止し、停止したところから再起動する必要があることを認識しなければなりません。幸いなことに、この機能を追加するのはそれほど難しくなく、メールアウトが既に行ったユーザーをログに記録したので、メールサーバーを再起動して、以前失敗したポイントから再起動して一時停止できるようにコードを再構成しましたメールサーバーに追いつくために、先に進みます。

残念ながら、どうにかしてすべてのコードを正しく更新できなかった。私がしたことの詳細は覚えていませんが、ユーザーデータを取得するクエリは1つのデータセットを取得し、ハッシュを生成するクエリは別のデータセットを取得していたため、ユーザーがリンクをクリックすると、他の人のアカウント詳細から個人データを含むフォーム。これは、競争力のある中小企業がリストに多数存在するニッチ業界でのことです。

電話が顧客のオフィスで鳴り始めるのに長くはかからなかった...

これは、これまでのところ私が辞職を申し出た唯一の間違いでした。


サンプルデータよりも大幅に大きい実際のデータの場合は+1 :
nakedfanatic

IMOこれは悪いものの1つです> _ <
sevenseacat

7

フィルターなしでクロス結合を使用したことがあります。ほんの一部のデータでテストデータベースで問題なく動作しました。展開されたとき、平均的なクエリで約6,000万行になりました。


14
実際、あなたの最大の間違いは、適切なサイズのデータ​​ベースに対する開発ではなかったことです。小規模なテストデータベースを使用して、大規模な運用データベースを開発しないでください。適切なサイズのdabaseがなければ、パフォーマンスコードを書くことはできません。
HLGEM

7

10万ドルのレーザースキャナーをクラッシュさせました。

コントローラは位置を整数として保存していたので、実際の位置をインチ単位で取得するためにすべてを10000で除算しました。

最後の桁が0の場合、Z軸は10倍まで遠かったので省略されました。

ヒラリティが続いた



5

私のマネージャーが眉をひそめ、私が大好きな仕事を辞めさせました。私は彼に物事を台無しにして解雇しなければならなかったし、それから私はステップアップして破片を片付けるべきだった。代わりに私はやめて、それ以来ずっと後悔しています。


17
マネージャーはめったにそのようなことで解雇されません。マネージャーレベルに到達するには、後部をカバーするのが非常に上手でなければなりません。あなたはおそらくあなたが会社を辞めた瞬間にスケープゴートになったでしょう。別の方法で処理することもできたかもしれませんが、それを破ってはいけません。
マークランサム

彼が台無しにされていたら、あなたは非難され、解雇されていたでしょう(または、少なくとも恥ずかしく辞めるまで悲惨な時間を過ごしていたでしょう)。
11

4

7年前、上司と会社のオーナーは、まだ仕事に出会ったことがなかったのですが、別の州で研究ウェブサイトのデモをいくつかの潜在的なクライアントに行っていました。会費は5桁から5桁の低額であったため、これらのデモは私たちの未熟な会社にとって大したことでした。

彼のデモの途中で、データベース作業を行っていたので、ライブデータベースに変更を加え、すべての調査のすべての調査質問を同じテキストに更新しました。 WHERE。私の同僚と私はバックアップを奪い合い、サイトのそのセクションをすぐにデモしていないことを望みましたが、ありがたいことに現れなかったすべてのキャップの電子メールを待っていました。

良い面は、開発ボックスのボスがついに生まれたことです。


3

私はイントラネット上でXenuのリンク探索を実行して、長年にわたって構築された多くの壊れたリンクの一部をクリアしようとしました(ほとんどの場合、当然のことながらwikiから共有ネットワークドライブへのリンクでした)。

約30分後、新しいアイテムの一部に奇妙な写真が含まれていることに気付き始めました。システムにある粒子の粗い古いストック写真の一部を使用しているように見えましたが、それよりも新しいものはないかもしれないという考えを無視しました彼らが欲しかったものがありました。

さらに10分後、何らかの理由で機能アイテムがランダムに変化していることに気付きました。この時点で、何が起こっているのかがわかりました。イントラネットはWindows認証を使用し、一部の機能(ニュース画像や機能アイテムの選択など)はHTTP GETリクエストに応答するようにコーディングされています。リンクチェッカーは私の認証を使用しており、管理者側のページにクロールし、忠実にその仕事を行い、見つかったすべてのリンクを追跡しました

/admin/displayItems/icon_update.asp?image=eastereggs.jpg&itemID=3174


7
これは多くの人が使用時のGETとするとき、それはPOSTを使用するために適切だとそれの適切な方法を学ぶことのようです
オリ

同意して、私はイントラネットの再開発に取り掛かろうとしており、これにより要件の最上位にGETとPOSTの適切な使用がしっかりと配置されました。ASP MVCは、これを簡単かつ直感的に行うのにも役立ちます。
チャオ

1
本当にあなたの間違いではありませんが、それでも良い話です:
ディーンハーディング

3

これまでのところ、私の唯一の胃をひねり、心拍数が増加し、突然熱くてかゆいミスは、WHERE句なしでUPDATEクエリを実行することでした。幸運なことに、最後の15分間のバックアップがあり、データが頻繁に変更されることはなかったので、誰にも気付かずに10分以内にデータを完全に復元することができました。

それほど悪いことはありませんが、私はいくつかの緊密な電話がありました。私はこの業界で十分な恐怖の話を聞いたので、物事を台無しにする可能性のあることはすべてうまくいくので、彼らは近いコールのままです。


1
DBのミスを犯してロールバックを呼ぶことはありませんか?
ジェキュー

@Xepoch、トランザクションを開始した場合にのみ役立ちます
-CaffGeek

1
@Chad、すべてのデータ呼び出しが暗黙的にトランザクションであると一般に想定すべきではありませんか?
ジェキュー

2
@Xepoch、想定しない。
CaffGeek

1
@Char、私はトランザクション内のすべてのDBインタラクションを維持する個人的な好みを持っています。しない人、彼らはリスクを抱えているか、気にしないビジネスケースを持っています。仕様の前提とMANDATEは、トランザクションDB管理を使用してコードプロジェクトを開始および維持することです。
ジェキュー

3

私が取り組んでいるロボットについては、実行ごとにログファイルを保持しています。これらのログフォルダーを生成するロボットとシミュレーターがあります。シミュレータのログファイルは役に立たないが、ロボットのログファイルは非常に有用であり、永久に保存される。

ロボット自体のハードドライブのスペースは限られているため、別のコンピューターに転送され、そこに保存されます。このコンピューターは、たまたまロボットと通信するためのメインの操作コンピューターです。

数か月前にロボットの作業を始めたばかりで、これを知りませんでした。オペレーティングコンピューター上のログは、シミュレーターによって生成された役に立たないログであると考え、それらを削除しました。適切なバックアップがなかったため、古いログはすべて失われました。


8
くそ... 私はロボットに仕事をしたいです!私が一日中しているのは、お粗末なウェブサイトを構築することです。
ダン・レイ

2

ビルドコンピューターではなく、コンピューター上でソフトウェアのバージョンを高速にビルドしました(約4時間高速で、次の日ではなくその日QAに移行できることを意味しました)。

コンピューターでデバッグするための特別な定義があり、QAで検出されないバグが発生しました。彼らは4週間の検証テストの終わりにそれを検出しましたが、検証に失敗するのに十分悪いものでした。


2

開発バージョンではなく、本番データベースを誤って削除してください。使用しているサーバーがわかりませんでした。幸いなことに、最後のバックアップは4時間前に作成されたため、ユーザーはシステムに大きな変更を加えなかったため、大きなデータの損失はありませんでした。


同僚にこれをしてもらいました。彼だけが、自分の地元のコピーを落とすと思っていました。私たちは全員働いていて、彼が「OH SH ** !!!!」楽しい午後でした。
ティアナ

2

私がこれまでに犯した最大の過ちは、開発マシンからソース管理の仕事を得ることでした。ハードドライブがクラッシュし、数週間の仕事を失いました。それは一生懸命学ぶレッスンであり、二度と起こさせないものです。


私の間違いではなく、関連しています。会社私は彼が速やかに「RM -r /」実行バージョン管理サーバ(?DMZ Whazda)、への侵入者のrootアクセス権を与える、妥協彼らのWebサーバの持っていた1のために働いていた
jwenting

2

Javaでの文字列比較の==代わりに使用equals


13
それはあなたが今まで犯した最大の間違いですか?
クリス

これは==、参照比較であるJavaの問題です。C#では、==同じ、文字列の値の比較を行い.Equals() 、いくつかの違いがある、と述べた。すなわち、ここではジョンスキートの回答を参照してください。stackoverflow.com/questions/3678792/...
ティム・グッドマン

2
@Tim:まだこれは「あなたがこれまでに作った最大の過ち」だったか応答しないことを...少なくとも影響に関するいくつかのより多くのコンテキストがいいだろう...
ディーン・ハーディング

最も多い回答がタイプミスに関するものである場合、ここでの私の回答はどのように異なりますか?あなたが初心者の場合、この間違いを犯すことはほとんどデバッグすることが不可能であり、一日中あなたをイライラさせる可能性があります。
ナンダ

@ディーン:これは私がこれまでに犯した最大の間違いではありませんでした...ここでC#とJavaの動作の違いを明確にしただけです
ティム・グッドマン

1

私はディレクターに、彼が古くて、私が持っているよりも長年の経験があるからといって、私が彼を尊敬するという意味ではないと言った。私が尊敬する唯一のことは能力です。そのような哀れな発言の結果に直面する必要はなかったのは、私がジュニアプログラマーだったからかもしれません。振り返ってみると、これは私の最大の間違いのようです。私の常識\謙虚さはどこにありましたか?:-(


2
誰かが(数年で)より多くの経験を持っているからといって、彼がより良いプログラマーであることを意味するわけではありません。そこには多くのプログラマーがいて、履歴書に「xx年の経験」を書くことができますが、何をしているのか手がかりがありません。
ボビー

彼らは可能性が高いが、より慎重な開発を行うことを、ここに記載されているもののように、道に沿って愚かなミスを拾っているとしている
JOHNC

明確にするために、間違いはその態度を持っていなかった。間違いはあなたがその態度を持っていると言っていました。
ダン・レイ

私は長年にわたって多くの人々にこれを言いたかった。
Reasurria

1

これは今月同僚に起こりました。

彼は多くの携帯電話にSMSを送信したときに発生したバグを修正していました。通常、これらのメッセージはコストを節約するために実際に送信されることはありませんが、データベースの構成が誤っているために送信されました。

費用:SMSトラフィックの1か月の賃金。


それは安いです!:)
11

1

マネージャーの要求に応じて、/etc/sudoers1台のマシンから別のマシンにコピーしました(手元の問題を修正できなかったとしても、それは問題です)。残念なことに、私sudoはコピーされたファイルを所定の場所に移動していましたが、その所有者とアクセス許可が完全に間違っていることに気付きませんでした。その時点で、sudoシェルがに設定されて/bin/falseいるため、誰もルートシェルを開いておらず、誰もルートとしてログインできませんでした。マシンはリモートデータウェアハウスにありました...


1

ディレクトリ内の各ファイルに対してメタデータファイルを作成したかった(つまり、すべてのファイルに対して、ファイルsomedir/foo.binを作成したいsomedir/foo.bin.meta)。なんらかの愚かな理由で、私はPython経由でファイルストリームを開いたり閉じたりしてファイルを作成することにしました。

for fn in os.listdir(path):
    open(os.path.join(path, fn), 'w').close()

いくつかのばかげた理由で、個人データのいくつかのギグがあるハードドライブ上のディレクトリに対してこのスクリプトをテストするのは賢明だと思いました。実行して初めて、ファイル名を渡す前に実際にファイル名を変更するのを忘れていてopen、そのディレクトリ内のすべてのファイルを切り捨てていることに気づきました(痛い)。

幸いなことに、それはパソコン上にあり、重要なものに損害を与えることはありませんでしたが、私はまだレッスンを学びました。


1

私はスウェーデン最大の通信会社の顧客サポートの1つを扱う会社で働いていました。私たちのサーバーには、着信コールキュー、取得できるコール数などを調整するソフトウェアがありました。それが機能していなかった場合、私たちは電話を受けず、顧客はサポートを受けていませんでした。

とにかく、ソフトウェアに(マイナーな)変更を加えました。サービスウィンドウが変更されるのを待つこともできましたが、「ちょっと、サービスを再開するのに1分かかるだろう。なぜわざわざ。フォーチュンは大胆な方がいい」と思った。そのため、残念ながらスレッドがロックされていたため、交換できませんでした。パニックを始めて、マシンをすばやく再起動することにしました(リモーティングしていました)。残念ながら私のパニックでは、代わりに「アップデートをインストールしてシャットダウン」をクリックします:P

言うまでもなく、スウェーデンでは、再起動に成功するまでの30分間はカスタマーサポートがあまりありませんでした。

同僚は私よりも悪かったのですが、ある晩、自動音声応答システムをデバッグし、その番号を自分の携帯電話に転送しました。彼がそれを元に戻すのを忘れたのは、翌日休みを取り、仕事中に携帯電話を置いただけでした。私たちは、なぜその日は常に鳴っていたのだろうと思っています:)


1

Argh、午後11時、ラボ終了、迅速、迅速...

$ enscript -o midterm.hs midterm.hs
$ submit midterm.hs
Error: submission is empty

神様!FFS。PSを意味しました****!


言語スタイルをおologiesびします。真正性のために必要です。
11

0

JSをコーディングするときに、「1」と「l」「small L」を区別できませんでした。私がこの答えを入力していたときでさえ、エディタでは両方ともほとんど同じに見えます!


なぜ反対票なのか?
Gopi

0

サイトテンプレート言語を作成しました。初期バージョンでは、すべてのHTTPパラメーターが暗黙的に変数として拡張されていました。これは、次のようなURLを作成できることを意味します。

page.vis?body = <body> <p>ああ、親愛なる</ p> </ body>

そして、見た目どおりに動作します。

幸いなことにユーザーがいないので(ため息)、セキュリティ上のリスクはそれほど大きくなかったと思います。


0

間違いなくTSQLの事故-1つのエディターウィンドウに多すぎるTSQLステートメント。少し疲れていたので、人々は私を左右に邪魔していたので、住所、市、州、郵便番号を記録した47,000件のレコードを更新するコマンドを発行しました。ただし、約25分で修正されました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.