こんなポストが廻ってきた。
プログラムのエラー、「おまえは間違っていると責められている」と受け取る人、結構いるんだよね。そういう人は、エラーが出る度に精神に負荷がかかるの。そういうのを見て「自分はそうではない」と言っても仕方ない。ただ、「そういう人もいる」ということを知っておくと良い。
— ロボ太 (@kaityo256) 2024年11月17日
そういう人がいることは知ってる。
「プログラムのエラーなんて、単なるメッセージだから気にするのはおかしい」という人でも、テストで悪い点とったら気にするんじゃないかな。勉強においてテストなんて、自分がどこまで理解しているか、次にどこを勉強すべきかのメッセージに過ぎないけど、やっぱり気になるじゃない?エラーも同じ。
— ロボ太 (@kaityo256) 2024年11月17日
エラーでも、テストでも、研究発表でも「自分の行動にたいして(時にネガティブな)フィードバックが返って来る」ことは、慣れないとつらいと思う。
— ロボ太 (@kaityo256) 2024年11月17日
いや、プログラミングどころかちょっと機器を操作するだけで大騒ぎになるオレの母親なんて事例を知っているもので。たかがちょっとTVのリモコンにボタンがいっぱいあるだけでパニック。トライアンドエラーしてもTVのリモコンごときで誰かが怪我をするわけでもない。あれこれ押してみればいいのにそれができない。況やスマートフォンをや(いわんやすまーとふぉんをや)。
このレベルなら問題ない。
こうなると、押さないボタン多数ww
スマートフォンなんてどんどん画面が変わっていくから、画面遷移や画面の階層という概念が無い人には難しいんだろうね。タッチ式の自販機も同。
この引用ポストで知った。
初見なら仕方ないが社会人としてメンタル弱い...エラーは安全装置だということを知ってほしい。他の仕事はエラーなんか出ずに成果や品質が破綻してくるものばかりだから。
— えふしん (@fshin2000) 2024年11月20日
エラーの扱い方を間違って事故多発した昔のプリウスとかあるわけで。 https://t.co/MdfVxLod2G
この例えは秀逸。調理はミスっても「焦げてる」「可食部分を間違ってゴミ箱に」くらいに分かりやすいエラーは少ない。味付けを間違っても(佐藤敏夫 砂糖と塩を間違う)、見た目は変わらず食ってみなければわからない。
例えば調理なんかはエラーを出さずに品質破綻してくる例ですね。無意識にそっちの方が向いてる人はいるかもしれませんが。
— えふしん (@fshin2000) 2024年11月20日
今でも覚えているのは、母が砂糖と塩を間違えた水餃子。小学生のころ。あれは地獄だった。スープだけ作り直せばいいのにそのまま出してきた。
父は「出されたものは論評を求められない限り黙って食え」派なので、誰も何も言えない。なお、水餃子はそれ以来一度も実家の食卓では見たことないw
「一方的に作ってもらっているなら、感想を求められた時に、欲している感想のニーズに応える答え以外言うな。」 という教育を親父から受けて育った。
そう。実行しない/できないという歯止めがあるのはかなりマシな部類である。
プログラムをミスって無限ループさせたらCPUが焼けたとか、if文間違えてショートして基盤が焼けるなんてことは起きないわけで、OSや言語の箱の中で囲い込まれてるとも言う。だから、ハードウェアの事を知らなくても仕事できてしまうという面もあるし、素人でもメンタルで乗り越えられるとも言える。そ…
— えふしん (@fshin2000) 2024年11月20日
40年前のオレはどうだったんだ。え?40年以上前か。SHARPのポケットコンピュータを買って、日々追われるレポート作成の計算に使っていたころ。Amazon、SHARPのポケコンが出てこないぞ。そういえば、ポケコンもSHARP派とCASIO派がいたな。
最初はHello Worldレベルでもまともに動かない、あるいはエラーが出るわけですよ。変にループしてリセットボタンを押すはめになるよりは、エラーが出て教えてくれる方が親切だなって思ってた。不良摘出簡単。
そうか、オレの場合は「責められている」じゃなくて「教えてくれてありがとう」だったんだ。だって無限ループすると誤リセットを避けるため押しにくくなっている裏面のリセットボタンを鉛筆とかシャープペンシルで押さないと止まらないし、途中まで仕掛っていたことは霧消するし、インタープリタが教えてくれない不具合箇所を自分でデバッグすることになる。
仕事でプログラミングしていて、「責められている」って感じるのはかなりナイーブだな(表現にかなり手心を加えた)。そういう人ってエラーを見たくないから無かったことにするんだよね。無かったことになるくらいならエラーは出さないんだけどww
そんなわけで仕事が進まない。
オレ「どんなエラーメッセージ出てた?」
その人「何か出てたけど消しました」
オレ「おいw」
である。結局エラーメッセージを見るために付き合って再度実行させ、エラーメッセージを確認する羽目になる。二度手間である。
あと、自分のプログラミングの結果でエラーが出たら耐えられないというなら、他人のエラーを見させるというのもいいかもしれない。だってそうなれば所詮他人事じゃん。大き目の会社、大き目のプロジェクトなら存在しうる、”検査部門””品質保証部門”である。プロジェクトとかなら部門というほどではなく担当かも。
意外と他人事なら向いているかもしれない。スパゲッティコードは結構大変だけどね。検査部門””品質保証部門”ではないけど、自分たちがシロであると証明するため、コンパイラ屋なのに現場のクソプログラムをデバッグしていた日々。
「そういう人もいる」では終わらない場合もあるので、オレみたいに「教えてくれてありがとう」精神を教えてみるとか、それでも「責められている」って思うようなら”検査部門””品質保証部門”やそういう担当にすると、他人事なので乗り越えられるかもしれない。