gallu’s blog

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

「正しさハラスメント」ねぇ……

元ネタ
不寛容社会とエンジニアの「正しさハラスメント」
http://emokuaritai.hatenablog.jp/entry/2016/12/28/115401


色々と「言ってることがわかる部分」も多々あるんだけど、気を付けないと割と「ダークサイドに堕ちやすい部分」もあって、おいちゃん的にはどちらかというとその「堕ちそうなダークサイド」のほうがとても気になったので、些か突っ込み。


上述Blogをものすごくざっくりと、かつ「幾分」好意的に解釈すると、以下のようなもんじゃないかなぁ、と認識している。
・特に初学者などで「とりあえずとっかかりとしての成功体験」を重ねることは多い
・その"成功体験を折りに来る人が存在する"
−→そういった初学者のコードは"拙いものであることも多い"が、一部の"エンジニアは、それを許さない"
・上述について"もう少し配慮ができないものかと思っている"


このあたりから想起されるもののひとつに「間違っていることを指摘するために"攻撃する"がごとき怒声を繰り出す」タイプがあって、これは割と明確に「やめとけ」って、おいちゃんもなるざんす。
「愛語はよく回天の力あり」なんて申します言葉があったり、或いは「丸い卵も切り様で四角、物も言い様で角が立つ」なんて言葉もございます。
初学者がたとえ間違えたとはいっても、だからと言って汚い言葉でののしる必要はないので。
そのあたりは「適切に説明をすれば」事足りるものでございます。


…ってまではいいんですがね。
気になるのは、ここから。


元ネタのほうでも「設計」がお題に挙がってたので、後輩Bさんの設計を先輩Aさんが見て、の発言と仮定しましょう。
ここでAさんが「てめぇは馬鹿か! こんなクソみてぇな設計でどうにかなるわけねぇだろ!!」とのたまわったら、多分これは確実に「物も言い様で角が立つ」ごとき発言かと思われます。
ただ一方で「じゃぁどれくらい気を使って発言をすればよいのか」って問題があって、それが「普通の言葉であれば」の普通ってどの程度? ってあたりに個人差があるよねぇ…ってあたりから、この辺の論調が幾分怪しくなってきます。
で、もうちょっと片方の極にふると「自分の設計を否定されたら、たとえそれがどんな物言いであっても不寛容でありよくない物言いとなる」というタイプも、後輩Bの側に、いらっしゃるのがこれ自体は事実です*1


で、もしお話をする相手が「自分への肯定以外は許容しない」タイプが「あなたのその物言いは不寛容だ!」と言ってくるとすると、それは些か面倒だなぁ、と思います。なにせ前提として「後輩Bの設計には、幾分ならざる問題がある」状況、なので。
これってつまり「問題はあるけどそれを指摘するな」って言っているのと同様なので。これが「よいのか?」と問われると、大変に疑問です。
いや「プライベートなら(設計上のスケーラビリティとかメンテナンス性とかは)気にスンナ」って一言で切ってもよいとは思うのですが、お仕事でそれをされると、後で尻拭いをするほうに苦労が回りますので、大変に困ります。


で…元ネタのBlogを見ると、より一層気になる事が書いてあります具体的にはセキュリティのあたりで。

勿論、全くセキュリティ対策をしていないプログラムというのは、Production環境で使うには危ういものではあるし、当然推奨されるものではないが、その「正しくない」状態でも、別にセキュリティ対策がプログラムの本質ではないのだから、先により本質的な成功体験を積ませてやるべきである。

正直に申し上げると「ンな成功モドキ体験を積まれて変な癖がつくほうが困る」というのが本音でございます。
端的に実例を頭ん中でリプレイするだけでも……正直「セキュリティは後でどうにかすればいいしどうにかなる」って妄想している駄目ジニアな方々の暴挙は、少なからず目にしているので。
じゃぁ実際に「後でどうにかしたりするか出来るか」っていうと「しないしそもそも出来ない」ので。
程度問題もあるのですが、基本的なWebセキュリティの場合「初めにちゃんと意識をしておけ」としか言えないものでございます。


んで。

Qiitaなどを見ていると、初学者が作った簡単なフォームによるリクエストとそれに対してのレスポンスを行うプログラムに対して、「こういった書き方はセキュリティ上問題があるからまず最低限このようにXSS対策をしましょう。また、現在のモダンなコードとしてはこのような記述のされかたが一般的であり……」といったコメントをしている人をたびたびみかける。

に対して

彼らにとっては「はじめてのプログラムが思い通りに動いた」という事実がベースとなっているわけであり、わざわざその成功体験の「気持ちいい」状態を阻害する行為には、正直疑問を覚える。

とあるのは…正直「それに疑問を覚える事」に疑問を覚える感じでございます。


もちろん初学者なので「原理を理解してから書け」とまでは言いませんが。
ただ「とりあえずおまじない、としてって理解でいいから、こういう風に書きましょうね」というのは、むしろ「教えてくれる優しさ」であって、不寛容とはむしろ真逆なんじゃないかと思うんですけどそのあたりどうなんでしょうねぇ?


ついでに

学んでいく中で、セキュリティ対策というものはいずれ得る知識ではあるだろう。

甘い。甘すぎる。正直「実情しってる?」って聞きたくなる感じでございます。
「意識しないでよい」まま育ったエンジニアは、たとえ齢とキャリアを10年以上重ねようとも「セキュリティ対策という知識を得ないまま」になります。


で、同じような、気になる内容が、他にも。

もう少し工夫して、本人と近ければ、そっと少しずつ、必要な時に教えてやれば良いし、そうでなくとも、例えばQiitaが媒体なら編集リクエストがあるうえ、コメントならブログにもあり、ひとことふたことと参考URLあたりを書いておくだけでも十分だと思う。
そういった、小さな小さな配慮によって、当人は自身が学ぶべきタイミングでそれらを身につける機会を逃さず、また、リアルタイムで駆け抜けている学びを阻害されることもないと思う。

そもそも「いつもあっているわけではない」Webという世界で「教えてやるべき必要な時」なんて見計らえない…そもそもとして、そーゆーのは「卒啄同時(そったくどうきorさいたくどうき:卒の字は正しくは口+卒)」なんて言葉が存在するくらい「近くで見守っていてもなお難しい」ものです。
で、じゃぁ「本人が必要と気づくときに学べばよい」については「知らなければ、必要であることがわからない」で片付きます。
つまり「本人が必要であると気づくタイミングがないのでいつまでたっても学ばない」というのが、実例ごろごろしてます。
「極寒の地で全裸で凍えながらなぜつらいのかわかっていないようなもの」というヒソカ氏の発言の重みを、しみじみと感じるところです。


なので、元ネタBlogの人の言う「正直、もう少し配慮ができないものかと思っている」については、「言う側が出来る部分もあるけど言われる側が考慮すべき部分もある」んじゃないかなぁ、と思うざます。


ざっくりまとめると。
指摘の仕方について「あんまり汚い言葉や人格を攻撃するような物言い」については、NGだと思う。なので、言う側として、ある程度は「言い方」について配慮をしてみる、というのはそれこそ「より正しい」と思われる努力の方向だと思う(そもそも「他人に何かを指摘する事自体に心理ハードルがある」系の御仁もいらっしゃるのである程度の無理を承知での物言いではあるのだが、おいといて)。


ただ一方でそもそも技術職である以上「より正しい知識を教わりながら育つ」ものだと思うので…というか大概どこの世界にいっても「間違いを指摘されて修正する」という繰り返しは幾度となくめぐり合うものだと思うので。
「誤りの指摘=嫌がらせや人格攻撃やハラスメントの類である」といった妄想は、早いタイミングでとっとと/dev/nullにリダイレクトしたほうがいいと思う。


……って感じの内容は他所でも拝見したのですが、ちょいと気になった年末の文書だったので、ざっくりと。

*1:おいちゃんの観測範囲内ですら存在するので、頻度はともかくとして、存在はします