ぺぷしのーげん

大企業からスタートアップに転職したアプリケーションエンジニアのブログ

誰も信じてくれない嘘のような本当のエラーメッセージ

f:id:hazakurakeita:20150904215709j:plain

ぱくたそ - フリー写真素材・無料ダウンロード

昔、大学でプログラミング演習のアシスタントをしていました。後輩たちが演習で困ったり分からないことがあったときに手助けする仕事です。その中で最も衝撃的だったエラーメッセージ。あまりの衝撃っぷりに、知人たちは「ネタでしょそれww」と言って信じてくれません。でもこれ実話なんです!

 

 震源地は学部三年生のプログラミング演習

大学三年生ともなると、情報工学部とはいえプログラミング能力に大きな差が生まれてしまっています。上は質問せずにどんどん応用させたり、高度な質問をしてきますし、下はエラーが発生した瞬間に先生や僕たちを呼びます。「あのーなんかエラー出たんですけど」と。なんかエラーが出たじゃねーよ、まずはエラー文読めよ。何度もそう思うのですが、コピペの嵐で泥沼への道を突き進まれると、それはそれでこっちが原因を特定するのが大変なんですよね orz

 

 慣れてくるとエラー文で原因がわかる

プログラミング演習って一度に全員やるわけではないのです。教えるのも大変ですし、パソコンを集めるのも大変ですから。なので、複数チームに分けて、何回も同じ課題を授業で教えることになるのです。そうなると質問されてもエラー文で「あー、ここね」となります。だいたい皆同じところで失敗するので。おかげさまで、後輩からは「エ、エラー文だけでなんでわかるんですか!」って驚かれることも。いや、僕これ三回目ですから。

 

そんな中、今まで見たことないエラー文が!

 「すみませーん」

いつも通り手を挙げた後輩のパソコンへ向かいます。そして、モニタに表示されているエラーを確認します。…あ、あれ?なんだこれ。

    Pepsinogen $
    Pepsinogen $ ./a.out
    Pepsinogen $ Program is starting...
    Pepsinogen $ The program has a error.
    Pepsinogen $

 えー、なんだこれ。こんなエラー初めてみたぞ。なにが起きたんだ。

とりあえずどこでエラーが発生したのかを追っかけます。そして遂にエラーが発生している箇所を特定しました。

    if(True)
    {
      printf("The program has a error.");
    }

ふざけんな。
自分で表示してる文章じゃねえかあああああああああああああああああ!

 

おしまい。(この物語は真実です)