「向いてないのかも…」と思ったことはありませんか
プログラミングを始めてしばらく経つと、こんな気持ちになる人がいます。
「同じことを何度も聞いてしまう」「エラーが出るたびに手が止まる」「周りについていけていない気がする」
そして行き着く結論が「自分には向いていないのかも」です。
私はプログラミング講師として8年間、子どもから大人まで500名以上を指導してきました。その中で、スムーズに上達していく人もいれば、途中で壁にぶつかる人もたくさん見てきました。
最初にはっきり言っておきます。
伸びる人と伸びない人の違いは、才能でも、向き不向きでもありません。
たった一つの「姿勢の違い」です。
伸びない人に共通するパターン
講師として見ていると、初回の授業からすでにサインが出ています。
- 説明を聞いた直後に「で、何すれば?」となってしまう
- 仕組みを理解する前に、とりあえずキーボードを叩いてしまう
- エラーが出ると「自分には才能がない…」とフリーズしてしまう
① 話を聞いているようで、脳が動いていない
説明しているとき、落ち着きがなかったり、どこかぼんやりしていたりする人がいます。本人は「聞いている」つもりなのですが、情報が頭の中で処理されていない状態です。

その結果、さっき説明したことを数分後にもう一度聞いてくる、ということが繰り返されます。
これは頭が悪いわけでも、記憶力が悪いわけでもありません。これまでの環境の中で、「自分で考えるより先に答えが来る」ことに慣れてしまっていることが多い。意識的に変えようとしたことがないだけで、気づけば誰でも変われます。
このままのペースだと、同じことを習得するのに人の3倍の時間がかかることもあります。
② 理解より先に手を動かしてしまう
これはやる気があるタイプに多いパターンです。説明の途中なのに、もうキーボードを叩き始めている。
気持ちはわかります。教えられている時間がもどかしくて、「早くやってみたい」という衝動がある。
ところが、仕組みを理解しないまま書いたコードはエラーが出たとき修正できません。なぜそのコードを書いたか自分でわかっていないので、どこがおかしいかの見当もつかない。

皮肉なことに、急ぎたい気持ちが結局、一番遠回りになります。
大抵は何度か失敗を重ねるうちに自分で気づいてくれます。その気づきが来たとき、ようやく聞く耳が開きます。
伸びる人に共通するパターン
一方、「この人は伸びるな」と感じる人も、初回からすでに違います。
① 聞く姿勢が違う
話をよく聞いていて、指示を遅れることなくすべてこなします。わからなければすぐに質問して、周りから遅れないように自分でペースを調整している。
「積極的に質問する」だけではありません。指示通りに動ける、これが実はとても大事なことです。
プログラミングの学習には「型」があります。最初はその型を忠実に守ることが、のちの応用力につながります。
② エラーと戦う「手順」を持っている
デバッグ(エラーの原因を探して修正する作業)は、プログラミング学習の大半を占めます。ここで詰まって諦める人と、乗り越えていく人の差は何か。
手順を知っているかどうかです。
私は授業の中でデバッグの手順を何度も伝えます。エラーメッセージをどう読むか、どの順序で確認するか、どこまで試したら質問すべきか。
伸びる人はこの手順を理解して守ります。だから行き詰まったとき、「ここまでやってみたけどダメでした」と言語化できる。
この一言があると、講師側は原因をすぐに特定できます。質問の質が高い人は、解決が圧倒的に速い。
「粘り強さ」はもともとの性格ではありません。手順という「型」を持てた人が、結果として粘り強くなっていくんです。
③ 一人の時間の使い方が違う
次の授業のとき、「前回の内容を少しいじって試してみました」と言ってくる人がいます。教えたことを少しずつ変えて、自分で検証している。中にはその結果をデータにまとめてくる人もいます。
与えられた情報だけを消化するのではなく、自分で課題を設定してクリアしていく。
この習慣がある人は、講師がいない時間も成長し続けます。プログラミングのスキルは、誰かに教わっている時間より、一人で試行錯誤している時間に育つものだと私は思っています。
忘れられない生徒の話
一人、今でも印象に残っている生徒がいます。
最初は指示を聞き漏らすことが多く、手がなかなか動かなくて、こちらからもう一度同じことを伝えないと進められない状態でした。「この子、大丈夫かな」と正直思ったこともあります。
転機は、目標を一緒に設定したことでした。
「何のためにプログラミングを学びたいのか」を丁寧に聞き出して、その子が本当にやりたいことを一緒に言語化した。すると、みるみる変化していきました。聞く姿勢が変わり、自分で試す時間が増えて、気づいたら誰よりも成長していた。
今でもときどき質問のメールが来ます。そのメールが面白くて、「現在の状況」「試したこと」「どこで詰まっているか」がきれいに整理されている。的確なアドバイスが一言で返せます。
あのころとは別人のようです。
結局、違いは「能動性」の一言に尽きる
伸びない人のパターンをもう一度見てみると、「脳が動いていない」「手順より先に手を動かす」、どちらも共通しているのは自分から動いていないということです。
伸びる人は逆に、「聞く」「質問する」「自分で試す」という行動をすべて自分からやっています。
これは才能の話ではありません。習慣と姿勢の話です。
そしてその姿勢を引き出すのが、明確な目標です。
私は授業の最初に必ずアイスブレイクを取り入れて、その人の好きなこと、楽しみにしていることを聞くようにしています。プログラムの解説のときも、その人の興味から例を引っ張ってくると、目に見えて聞く耳が変わります。
人によって目標は違います。コンテスト入賞を目指す人、文化祭で作品を発表したい人、アプリで社会課題を解決したい人、仕事のワークフローを自動化して時間を作りたい人。
でも共通しているのは、プログラミングはあくまでツールだということです。
コードを書けるようになることがゴールではない。その先に、自分がやりたいことがある。その「先にあるもの」が鮮明であればあるほど、人は能動的になります。
「じゃあ自分はどっちだろう」と思ったあなたへ
この記事を最後まで読んでいる時点で、あなたはすでに能動的です。
一つだけ問いかけさせてください。
「プログラミングを習得した先に、あなたは何をしたいですか?」

その答えが今すぐ出なくても構いません。ぼんやりとでもいい。それを考え続けることが、伸び続けるための一番の燃料になります。
次にエラーが出たとき、すぐに誰かに聞く前に10分だけ自分で調べてみる。それだけで、あなたの中の何かが変わり始めます。
