家入一真メールマガジン「家入学級」2015年4月7日 Vol.35より
プログラミングに向いている人いない人
「プログラミングは誰にでもできる」と、表向きには言ってます。事実、一定レベルまではそう。誰でも学習すれば、基本的なことはできるようになる。けれど厳密な意味では、プログラミングには人によって向き不向きがあると感じています。僕はスーパープログラマーではないけれど、それなりにITの世界にいて、たくさんの人を教えたり見てきたりしてきた結果、プログラマー的な思考回路というものが、なんとなくわかるようになりました。
プログラミングというのは「これをこうしたらこうなる」という原因と結果を書き続けていく作業。プログラミングに向いている人は、ひと言でいうと、ロジカルに物事を考えられる人です。
一方、論理的に思考できない人というのも一定数存在していて、そういう人はプログラミングに苦労する。バグったとき、なぜそうなったのか、一つひとつプログラムを逆算していけばわかるはずなのに、それをする発想がない。すると「これが、こうしたから、こうなった」と、原因と結果を直結させられないんだよね。
例えば、棚の上にあるものを取ろうとして皿を落として割っちゃったとき、プログラミングに向いていない人は、割れた皿の方に気をとられて、なぜ割れたのかを考えない。手の伸ばし方が悪かったのか、お皿の置き方が悪かったのか、原因を追及しようとしないで、パニクるだけなんです。少なくとも、僕にはそう見える。
プログラミング中、1+1=2が正しい答えだとしたとき、1+1=3と表示されてしまったら、バグってることになるよね。その原因がどこにあるかをどれだけ想像できるか。「+」の部分が間違ってるのかもしれないし、「1」の部分が間違っているのかもしれない。
既に動いているプログラムの1カ所を変えたらバグが出た場合、変えた場所に問題があることは明白です。じゃあ、3カ所変えてバグが出たとき、3カ所全部が間違えていたのかもしれないし、3カ所のうちの1カ所を間違えたのかもしれない。もしかしたら3カ所変えたことで別の場所に影響が出て、そこがバグったのかもしれない。
じゃあそれが10カ所だった場合。全部が間違っているのか、10カ所のうちの1カ所どれかが間違っているのか、あるいは10カ所変えたことでほかのところが予想される動作じゃなくなったのか。可能性の範囲がどんどん広がっていくわけですよね。
それは本当にしらみつぶしに検証していくしかない。一発で動くプログラムを書ける人なんていないんですよ。
一番簡単な方法は、10カ所一つひとつを検証していくこと。全部を元に戻してから、1番だけを入れて正しいかどうか、2番だけを入れて正しいかどうかってのを順々にやればいい。でも、それを一気にやろうとする人がいる。10カ所やって動かないなら、「今度はここを修正しよう」と適当に変えていって、コードがつぎはぎというか、しっちゃかめっちゃかになっちゃう。頭のなかで組み立てられないだろうなぁ。
プログラミングは、やっぱりトライアンドエラー。違ったら戻してをずっとやりながら書いていくもの。それをできない人がいるんですよね。面倒くさいというのとはまた違う。そういう人は、論理的な思考的が苦手なんだと思います。

その他の記事
![]() |
変化の本質は、コロナではなく、自動化に向かう世界(高城剛) |
![]() |
中央線に「サブカルクソ女人生」の夢ひらく!? 映画『歌ってみた 恋してみた』 上埜すみれ×深琴対談(切通理作) |
![]() |
インターネットに期待されてきた理想と現実の落差(やまもといちろう) |
![]() |
中国国家主席・習近平さん国賓来日を巡り、アメリカから猛烈なプレッシャーを受けるの巻(やまもといちろう) |
![]() |
「罪に問えない」インサイダー取引が横行する仮想通貨界隈で問われる投資家保護の在り方(やまもといちろう) |
![]() |
人間にとって自然な感情としての「差別」(甲野善紀) |
![]() |
日本が観光立国になり得るかどうかの試金石はVIPサービスにあり(高城剛) |
![]() |
達成感の得られない仕事とどう向き合うか(甲野善紀) |
![]() |
元は取れるのか!? 定額衣装レンタル「bemool」を試してみた(小寺信良) |
![]() |
ゲームと物語のスイッチ(宇野常寛) |
![]() |
「50GBプラン」にして、5G時代のことを考えてみた(西田宗千佳) |
![]() |
中央集権的システムがもたらす「あたらしい廃墟」(高城剛) |
![]() |
本当に今、自分は仕事を楽しめているだろうか?(本田雅一) |
![]() |
「酒を飲めない人は採用しない」という差別が騒がれない不思議な話(やまもといちろう) |
![]() |
50歳食いしん坊大酒飲みでも成功できるダイエット —— “筋肉を増やすトレーニング”と“身体を引き締めるトレーニング”の違い(本田雅一) |