dotkuwaの日記: プログラミングにおけるストレス 3
よく、
・プログラミングをしている人間に話しかけると
今まで考えていた事が頭から抜けて、効率が
非常に落ちるから良くない。
・そんなの甘えだ。
という事が議論されます。
この議論は一面正しく、一面間違いだと思います。
一般的に、
・プログラム言語を考えている時に横から自然言語
で考える事を求められる。
・自然言語で考えている時に横からプログラム言語
で考える事を求められる。
のは、
・見ている言語にとって範囲外の何かを、強制的に
瞬時に見せられる事になる。
・求められた人間の脳みそでは、見ている言語の視野の
端っこの方で、人間の生物としての根源的に危険な
加速度と感じられる。
・これは回避不能なストレッサーになる。
というのは万人にとって正しいと自分は考えます。
すると、
・プログラミングをしている人間に自然言語で話し
かけると(逆もまた然り)、今まで考えていた事が
頭から抜ける程のストレスを感じて、効率が非常に
落ちるから良くない。
・これは甘えでは無い。
・甘えでは無いが有りがち。特に管理職と言われる人間
では当然甘受すべき事として、社会的通念とされて
いる。
が正しくなります。
--------------
よく、
・フルスタックで無い、周りの人全てが「無理筋だ」と
しか言わないフレームワークを提唱したり、
・宣言的表現では問題のクラスとして絶対に無理だと
理論的に証明されている分野の問題を宣言的な表現のみ
で済まそうとしたり、マクロを老害で無いとしたり、
・アジャイルだとか、ウオーターフォールだとか、DevOps
だとか、一面しか言っていない事を極端に褒めたり、
極端に貶したり、
する人がいますが、これは上記ストレッサーに対する
防衛機制だと思います。
こんな事を言っていれば、なぜか上記ストレッサー避けに
なるからです。(何でかは不明)
ただ、このストレッサーを受け止める事こそが、
・お金の取れる仕事
につながる唯一の道で、
・避けてはいけない(希有なチャンスを逃して、
二度と得られなくなるから。営業職の人間が後で
困るのもこれが原因。)
・受けすぎてもいけない(絶対的なストレッサーで
有り、受けすぎると必ず人間として壊れるから)
であるとも言えると自分は考えます。
文系だ理系だで、「非難される側の人間」は、
「プログラム言語×自然言語」か「自然言語×プログラム言語」
の方向性は別にして
(何々言語で考えていたら、違う言語で攻められる
の謂い)、ストレッサーに立ち向かう事を不当に
(報酬は得たのに)拒否したのに成果だとした人間の
末路だと思います。
逆に、
本当に文系か理系かという話では無く、文系だ理系だ言うのも
ストレッサー避けになる議論手管の1累計なのでしょう。
プログラミング言語関係なくね? (スコア:1)
いやー別に、言語関係なく
タスクAをやってるときにタスクBを放り込まれたら効率落ちますって
アタマがモードAの時にモードBにうまく切り替わらんだけ
そういうのうまい人もいるけど、私も苦手かな。
Re:プログラミング言語関係なくね? (スコア:1)
根源的なストレスに関して、
・言語とは関係無く、際だって異なったモードの切り替えが問題。
のは自分も認めます。
それは認めますが、ですがしかし、
・根源的なストレスになる位、際だって異なったモードというのが、
自然言語×プログラム言語の両モード以外に見当たらない。
(昔から、電子工作だとか、資料分類整理だとか、法律みたいな規則策定
だとかは、モード自然言語とは言い辛く、反ってモードプログラミング
だったとさえ言えたのでは??)
のも事実です。
要するに、
・昔から「モードプログラミング」は有った。それも希有な例では無く、
周く有った。
・しかしそれらは、特定のアプリケーション専用で、長い時間をかけて練り上げ
られた尊重されるべき職能として認知されている。
・頭がモードプログラミングの時に、モード自然言語を放り込まれたら根源的な
ストレスになる位、際だって異なっている事に対する世間の理解が薄いのに
対し、その様な職能の人に対してちょっかいを出す事は良くない事と、
馬鹿な母親層でも理解している。
・プログラム言語は、仕分け専用でも無く、条文作成専用でも無い為、たとえ
遠い将来であっても、その様な職能に対する尊敬を勝ち取りうるか不明。
さらに、汎用的である為、要件を内々だけで決める事が不可能な点も不利。
という事実がある為だと思います。
文部科学省の「小学校段階におけるプログラミング教育の在り方について
(議論の取りまとめ)」の冒頭に書いてある、
・将来どのような職業に就くとしても、時代を超えて普遍的に求められる力としての
「プログラミング的思考」などを育むことであり、コーディングを覚えることが
目的ではない。
とかを見ても、職業プログラマーレベルの(コーディング)能力について一定の二の足を
踏んでいると思います。
それは、
・際だって異なったモードに対する世間の理解(小学生でも将来は世間の一員になる
でしょうし)
が先決で、
・職業プログラマーレベルの(コーディング)能力(実際に根源的なストレッサーを
その身に不可避的に浴びる)
はその次だ、というつもりなのだと考えます。
自分は、プログラミング言語とは、広い意味で(代表的な例であり、既存の最も顕著な
例である意味で)関係があると考えます。
リーダーとストレス (スコア:1)
根源的なストレスになる位、際だって異なったモードを持つ
という事が、ソフトウェア開発のプロジェクトで難問を生み出す
カーディナルコードの1つかも知れません。
心身ともに周りの人より優れていて、リーダーとしてばりばり
やっている人が、このストレスを受けると簡単に沈没して、
それでも頑張ると再起不能になります。これは事実です。
ですので、上流工程でこのストレスを受けない様に制度を
整えたり、運用側がこのストレスを受けない様に制度を整え
たりする訳です。
もちろん、プログラマーに40代で引退して後は悠々自適なだけの
金額を与えられれば済む話です。しかし、プログラマーは少なくとも
簿記4級の人程度の数は必要です。そうすると、その様な報酬は
払えません。
宗教様の、生きがい詐欺的なやり方も、教義がプログラムでは
すぐにメッキが剥げます。
ジェンキンスとかのツールを使っても、ジェンキンスを直接使う人
からそのストレスを妨げさせるに過ぎず、その余の人に濃縮された
ストレスが降りかかるだけです。
ですので、兎に角喫緊に必要なのは、
・際だって異なったモードに対する世間の理解
です。
その上で、労力に対する理解・報酬の配分の適正化で何とか
するしか無いでしょう。