発達障害嫁がプログラマーに向いてなかった話
結婚前、無職発達障害嫁はプログラマーを目指すことに!?
これは、嫁と結婚する前、まだ彼女とお付き合いしていたころの話です。
当時、嫁は勤めていたブラック企業を辞め、次の就職先を探していました。
就職活動を始め、かれこれ3ヶ月、振られた企業は70社を超え、ほとほと疲れ果てた頃、「発達障害はプログラマーに適性がある!(向いている)」という触れ込みを見聞きし、プログラマーを目指すことにしたのですが、資格を取る過程で適正がないと感じてしまい、挫折したのでした。
今回は、資格を取る過程でどうして適性がないと判断してしまったのかなど、詳しくご紹介したいと思います。
この話は、全ての発達障害者に当てはまらないのはもちろんのこと、プログラマーの適正をはかる1つの指標として、全ての方に関わる話かと思います。
発達障害者がプログラマーに向いているとされる理由
発達障害者がプログラマーに適性があるとされる理由は次のようなものが挙げられるようです。
- 手先の器用さより論理的思考が求められる
- 繰り返しや集中力が必要
- 対人スキルがあまり要求されない(一人でも業務が行える)
確かに、いずれも深く頷けます。
嫁はこれらの傾向が非常に強く、資格のいくつか(例えば、英検)が取得できない(したくない)理由も

と豪語するのでした。(人と相対すると、蛇ににらまれた蛙になっちゃうからですね・・・)
プログラマーの国家資格「基本情報処理技術者試験」を受ける
さてさて、さっそくプログラマーの門を叩こうとも思ったのですが、全くの未経験者がプログラマーに応募するのはリスキーと考え、その入り口(登竜門)として名高い、国家資格で難関と言われる、基本情報処理技術者試験を受けることにしたのでした。
基本情報処理技術者資格は私(宇多パパ)も持っていましたので、

と、得意になって言ったものですが、そこは東大卒の嫁、試験はお手の物で、あれやこれやと知識を付けて行きました。

と思ったのですが、嫁にはどうしても苦手(理解できない)ことがありました。
それが、「アルゴリズム」です。
アルゴリズムとは?
アルゴリズムが苦手、という前に、アルゴリズムって、なんなんでしょう?
アルゴリズムとは、数学、コンピューティング、言語学、あるいは関連する分野において、問題を解くための手順を定式化した形で表現したものを言う。算法と訳されることもある。(Wikipediaより)
これだけだと分かりにくいかも知れませんが、つまるところ、発達障害嫁は、手順を定式化して表現することや感じ取ることが極端に苦手なのです。
例えば、
- 筆算ができない
「筆算が出来なくても東大に受かる勉強法」、これ、書籍化決定ですよね!?そう、嫁は筆算のできない東大卒女子なんです(笑)
筆算と言うのは、複雑な数式を手順に当てはめ定式化することによって(手書きでも)解けるようにしたものです。 - (詰め)将棋ができない
将棋は、決められたルールの中で手順を組み立て、パズルを解いていくようなものです。この、手順を組み立てる、というところが、まさにアルゴリズムになります。
などなど・・・
発達障害嫁がアルゴリズムを苦手とする3つの理由
発達障害嫁がアルゴリズムを苦手とする理由として、以下の3つが挙げられます。
1.想像力の欠如
アルゴリズムが手順の組み合わせを定式化したものですが、手順が分かっても、手順をどのように組み合わせれば目指すべき解(定式)に結びつくのかと言うことを組み立てることができないのだそうです。嫁いわく、これは「想像力に乏しいからではないか」と言っていますが、よく分かりません。
例えて言うなら、積み木はあるけどどうやれば一番高く組み立てられるか分からない、と言ったところでしょうか。
2.ワーキングメモリ(短期記憶力)が小さいこと
1の「想像力の欠如」にも一部関係するかも知れませんが、手順の組み合わせを定式化することがアルゴリズムであるとして、定式化を組み立てる過程はどうしても記憶に頼らざるを得ないことがあります。
そして、多くの場合、解は1つとは限りません。実際に何かの問題を解く際は、複数の解を記憶し、状況に応じて解の中から最適と思われるものを選択する必要があります。
定型発達の一部の方は、複数の記憶と、状況に応じて再生することが苦手なことがあるようです。
これはワーキングメモリ(短期記憶力)の欠如に起因しているかも知れない、とのことです。
将棋を想像していただくのが例として最適なのですが、ボードゲームが分かる方だと、ハイパーロボットはyoutubeを見ただけでうめき声を上げて拒絶し、コリドールはトラウマとなってあまりやってくれません(笑)。どちらも分からない方はごめんなさい。こんなことを言ってなんですが、どちらのゲームもとても面白いです。おすすめです(笑)
|
|
3.相手の立場に立って考えることが苦手なこと
アルゴリズムの問題にはもう1つ特徴的なタイプの問題があって、例えば、
スーパーマーケットのネット販売のシステムを作ります。品目リストのほか、セット割引販売リストがあり、これも自動で計算する必要があります。このシステムを作るため、次のような流れのアルゴリズムを作りました。
というような問題があったときに、こんなやり取りがありました。

「どんなやり方でもいいんだけど、中の人はそういうストーリーを考えてやったんだよ。
だから、中の人のストーリーに沿って、問題を解いていこうね。」
「ストーリーとか言われても意味わかんない。」
「えー・・・」
プログラマーは、解決に至るストーリーを作りこれを定式化するアルゴリズムの能力が必須です。または、修繕や既存システムを拡張する業務ですと、すでにあるストーリーを紐解き、そのストーリーに矛盾しないようなサブストーリーを作らないといけません。
そのため、特に後者の場合は、相手の立場に立って考えられなければプログラミングの業務を行えないと考えます。
ストーリーを作るのはシステムエンジニア(SE)の業務だと割り切ったとしても、SEの作るストーリーが理解できないとプログラマーになることは難しいでしょう。
そんなわけで、「対人スキルがあまり要求されない」ことがメリットとされるプログラマーであっても、こういったところで「相手の立場に立って考えることが苦手」であることが、アルゴリズムを解するための障害になることがあるようです。
基本情報処理技術者試験においてアルゴリズムは必須
さて、話を基本情報処理技術者試験に戻します。
基本情報処理技術者試験に合格するためには、午前午後各100点満点中、各60点以上取る必要があります。
午前は知識だけを問う問題ですが、午後はアルゴリズムの概念が必要となる問題が、50点の配点となっているため、アルゴリズムの概念を理解することが必須となっています。
そんなこんなでプログラマーに適性がないことが分かったとしても、試験は申し込んじゃったし、いまさら受けない訳にも行きません。(受験料も安くなかったし)
アルゴリズムはこうやって勉強しました
結果、アルゴリズムについては、次の本を買って勉強することにしました。
概念的なところから丁寧に書かれていて、とても参考になりました。
|
ちなみに、午前の勉強には次の本を参考にしました。
一通りのことが載っていて、とても勉強になりました。ドリルなどの副読本も充実しているのがいいですね。
|
|
アルゴリズムについては、上の本の基本的な章までやったところで、

と少し笑顔が出ましたが、応用問題や実践の問題になるとやはり分からなくなります。こ、これが共感力の限界か・・・?
・・・そんなこんなで、嫁は2か月の勉強の後、無事、基本情報処理技術者試験に合格することができましたが、すっかりプログラムに対する恐怖心が芽生え、プログラマーへの道は諦めたのでした。
2か月程度の独学で基本情報処理技術者資格を取れるのは、本当はすごいことなんですが、ね、きっと・・・
(教訓)
全ての発達障害者がプログラマーに向いているわけではない。特に、ワーキングメモリや共感力の乏しさに起因して、アルゴリズムに対して適性がないことがある。
という感じで〆たいと思います。ここまでお読み頂きありがとうございました。
ちなみに、「筆算ができない」は若干盛りましたが、本人(嫁)は至って真面目です。一方で、どうやって対処しているかと言うと、「パターン記憶」を用いているそうですが、これはまた別のエントリで、いつかご説明します。
“発達障害嫁がプログラマーに向いてなかった話” に対して1件のコメントがあります。