「特性持ちはプログラミングが得意」っていう話は半分嘘で半分本当だとおもうよ、という話

ether_fungus
·

タイトル出オチ感。

まあ定期的にわーってなるネタではあるんですが。

ゆるふわ記事で「発達特性のある人にむいている職業:プログラマー✨」とか書いてあるのが発見されて、だれかが「んなことねーよカス」みたいな話を始めて「いや俺はプログラマーだ」「てめえ特有の話してねえだろ」「ケースバイケースじゃないのか」「いやむいてると思う」「そもそもプログラマーの定義ってなんだ」とかなって、わーってなるやつ。主題的に特性当事者が髄反射リプでスレッドも文脈も空気も読まずに絡んでくるため基本的に議論がかみ合わず、あんまり歴史がリピートされすぎてるので昔の夕方の時代劇の再放送みたいな気分になるネタです。

端的に言っちゃうと「発達特性持ちだからプログラミングが得意」ということは無いです。直接的に接続はしない。よく言われる「過集中」もそこまで有意/優位では無い気がします。

ただ、「名前と概念を扱うのに長けている」というのはプログラミングをするにあたっては有利な特徴です。発達特性持ちには「日常からずっとやっているので名前と概念を扱うのに長けている」人間が一定数います。

たとえば・・・まあ「私」の話にしておきますが・・・ある習慣に「歯みがき」という名前しかない状態だと、「歯みがき」という行為ができません。意味がきちんと定義されれば、可能です。

なんだそれは、という話ですが。

まず単語を見ます。それを「歯+みがき」に分解します。文字情報から「歯」を「みがく」という行為だと解釈します。「歯」は「口内にある、モノの咀嚼などにもちいる臓器」で、「みがく」というのは「対象の表面を器物等で研磨することで表面を滑らかにする動作」と定義されています。今回の対象は人体でしょう、「爪みがき」という類似語との一致も高いです。ここまでをあわせると「臓器の表面をつるつるにする行為」です。それって要る?

ここで、「歯みがき」という語に新しく意味を定義しましょう。「歯みがき」とは「器物、薬剤の溶液を用いて洗浄を行うことで、口腔環境の衛生状態を維持する習慣。定期的な実施により口内の細菌数を低減し、酸性度を低める。口内粘膜への感染症や齲蝕を予防する効果を期待する」です。なるほど、目的が理解できました。この定義なら「どの程度の頻度で・どのようなタイミングで」「どのような形式の器具や薬剤を利用して」実施するのが適切なのかを判断できます。寝る前にやるのが効果的、水で口をすすぐだけでも効果がある、すべてのステートメントが無矛盾に成立します。必要な習慣ですね。

つまり、「歯みがき」という字づらだけだと、意味や目的が理解できず、「意味がわからないからやらない」になり、習慣として実行するには後者の定義が必要、ということです。

なんでそんなしちめんどくさい理解の仕方を??という話ですが、たぶん協調性運動障害かそれに近い人間がずっと「普通の人類をやろう」と頑張ってきた結果ですね。「ふつうのひと」が「一連の身体動作に名前をつける」という形で理解できることが、「一連の身体動作」の時点で実行できずに詰まってしまい、できない。概念や目的に定義と名前を与え、名前をつけた行為をあらためて意識的に繰り返し練習して習得する、という順番でないと、できないのです。

この「概念にしかるべき定義と適切な名前を与える」というのは訓練が必要です。日常生活であまりやる機会はないでしょう。「普通の人類をやろう」と頑張っている人間が、ひたすらそれを繰り返してきた結果として、「周囲の人間よりそれに長けていた」ということはあると思うのです。

ここで最初の話にもどりますが、「ずっと車椅子生活をしていたので腕の力が強い」というのと同じ意味で「特性持ちの人間がプログラミングが得意」というのは、まあありうる話だと思うのです。しかし「車椅子なら腕の力が強い」というのは誤りでしょう。それと同じ。だから「半分嘘で半分本当」。


なんでこんな話思い出したかっていうとこのポストを見たからで。

最近国語が不得意な人と話す機会があって、やっとクソリプラーの思考回路がわかった。

例えば小説を読むとき、国語的解釈では「登場人物が何を考えたか」を想像するんだけど、国語の不得意な人の思考は「その場面で自分だったらどう思うか」だけなんだ。寄り添いとか読解とかはなから概念がないわけ。

https://twitter.com/hanatarail/status/1778446347391390026

特性持ちも割とこのクソリプラーの行動傾向強いのが多いんですよね。

まず「ワーキングメモリが無いので、同時に複数人視点を展開したり三人称視点を解釈できない」。視点解釈するためにフル人格を脳内で動作させようとするからメモリが足りなくなるんで、処理の仕方がそもそも悪い。人格が仮想マシンみたいなもんだとして、一人分でも動かないスペックのマシン上で仮想マシンを複数同時に動作させようとしたらそりゃあ無理でしょう。一番安直な解決方法として「すべてを1スレッドで直列に処理する」と、このポストみたいな「その場面で自分だったらどう思うかだけ」を出力する動作仕様になる。

で、それに加えて「ワーキングメモリが足りないからメモリ上に保持しておくのが苦しい(だからその場でdumpしたくなる)」+「『他人』というものが本質的に理解できてない」⇒「思いついたことをそのポストにいきなり返信つける」。はい、脊髄反射クソリプラーの完成です。

不幸なことに、この話は本人の自覚があるほど思い当たる節が強くなり、結果として衝動が強くなるので、こういう主旨のポストが投稿されると「すいません!これからは気を付けてクソリプやめようと思います!」っていうリプライが反射的についてきたりします。1リプで自己矛盾していくスタイルにお気づきでしょうか。

「自他境界が曖昧」とか言われるのも「自分」を動作させたその上にさらに「三人称視点」を無理くり動作させようとしてるせい、というのが多い気がしています。

メモリが貧弱かつ機体の交換が不可能なら、もっと省リソースで高効率な処理方式にリファクタリングすればいいのでは?なぜそんなにプアな実装に固執するんですか?もっと高速で省リソースなアーキテクチャに書き換えればいいのに、と思うのは私がもうずっと人でなしだからでしょうね。ここ100年くらいで構築された、個人と自我と自己同一性を中心にした「物語」を捨てれば、そういう選択肢もある、という話です。

@ether_fungus
備忘のためにつらつらと。 プロフィール画像はPlan 9のGlendaです。