タイトルが長いな。しかし大事なことなので端折らずに書かせてもらった。プログラマは、そのほとんどが頭脳労働、カッコよく言えば知的作業である。だから、思考を中断されるのをひどく嫌う。しかし、それがわかっていない非プログラマが多すぎる!
用事があるんだから、話しかけるのがなぜいけないの〜?ワガママじゃないの?
我々プログラマは、ジャマされたくないとか、不愉快だとか、そんな私的な理由だけで(もちろんそれはあるけど。w)、話しかけないで〜と単方向性のバリアを張っているわけではないのだ。
結論を先に言うと、効率がガタ落ちる。これに尽きる。おそらく、中断されることによるダメージが、あらゆる職種の中で最も大きいかと、勝手ながら思う。
何しろ、もう少しで完成という砂の城を一撃で破壊されたようなものなのだ。だから、やり直しになる。しかも、城の形は作るたびに変わる。完成形は、作りながら考えるしかない。なので、また城の形を考えるところから始めなければならない。
中断されたところから始めりゃいいじゃん、そんなに不器用なの?
じゃ、円周率を唱えていて、256桁目で中断して3分ほどお話しして、そのあとに257桁目から唱えてみろといいたい。できるという御仁もいるだろうが、いったん途切れた流れを元通り繋ぐのは難しいのだ。
プログラミングの作業は、一連の流れでできている。全体を組み立て、細部に落とし込み、一片のコードを打ち込むに至るまで、淀みない流れがなくてはならない。この流れを乱されたら、すべてがやり直しになる。
だから、効率が落ちる。ということは、コストパフォーマンスが悪くなり、これすなわち経済損失だ。プログラマは、決して自分勝手なワガママで、話しかけるなとかジャマするなと言っているわけではないのだ。あなたのために、職場のために、ひいては会社のために、ジャマしないで、とお願いしているのだ。
ということで、こんなツィート(正確にはそのコピペ)を見つけた。
エンジニアに作業中話しかけていいタイミングを聞いたら大体こんな感じだったんだけど : コピペ情報局
○がないのが笑っちゃうけど、うまく表現しているな。個人的には集中しているニャンコに惚れちゃうが、ワンコの表情が心配だ…。早く何とかしてあげて欲しい。
コメント
周りを変えるのは難しいけど、自分を変えるのは努力次第。
作業中に話しかけられるケースがあるなら、コーディングを中断しても続きができるような体制を築くこともエンジニアの仕事じゃないかな?
piさん、ありがとうございます。
そうですね、ビジネスに限らず、自分が変える方がはるかに簡単、というのはよくわかります。
この投稿、要は愚痴なんですけど、こういうご提案をいただけるとうれしいです。
コーディングを中断してもスムースに継続できたり、話しかけるにも方法があるとか、そういうことを検討した方が前向きですね。
こんばんわ。
>プログラミングの作業は、一連の流れでできている。全体を組み立て、細部に落とし込み、一片のコードを打ち込むに至るまで、淀みない流れがなくてはならない。この流れを乱されたら、すべてがやり直しになる。
そんなことないと思いますよ。ちゃんと設計したつもりでもコード化し始めた点で矛盾が出て、行きつ戻りつする場合もありますし。すべてがやり直しになるのなら、最初からまともな全体構想がなかったのかも。
実際、話しかけられると困るのは、デバック中などで、怪しい部分の当たりが付きそうな時ぐらいですね。
bella_donneさん、ありがとうございます。
やり直しになるというのは全体構想がダメダメ、そういうこともありますね。
私の場合、頭の中に設計図があるので、やり直すなら書き直し、そういう方法的な問題もありそうです。
ちなみに私はデバッグ中だと話しかけられてもOKです。このへんの違いを追求すると面白そうです。
[…] コーディング中のプログラマに話しかけるのがどれほどの経済損失かわかっていない件。 […]