Pocket

頑張って頑張って頑張りまくっているはずなのに、なぜかプログラミングのスキルが一向に上達していない(している気がしない)。

そんなことは私もしょっちゅう経験しました。

というより、全くプログラミングを学んだことがない状態から、基礎を勉強している時が一番辛かったと思います。

実際に勉強してみて分かったことですが、プログラミングは基礎を乗り越えると

『簡単なサービスが自分の手で作れるようになる』

ため、今まで辛かった勉強が一転して楽しすぎる状況に変わっていきます。

avatar
この基礎の段階が一番つまらないですし、挫折しがちです。

もし今の段階で

『なかなか上達しないなぁ』

と思っている場合は、おそらく基礎の段階で苦しんでいるのではないでしょうか?

上達しないと感じている時に一番やってはいけないことは

『最短でエンジニアになった人たちの体験談を見ること』

です。

avatar
なぜですか?
avatar
結局体験というのは、その人の基準での話であって、それが全て自分に当てはまるとは限りません。多くの人は、良い体験談を載せたいと考える傾向がありますので、これを鵜呑みにすると痛い目にあいます。

人は人、自分は自分ですから周りと比べても何も良いことはありません。

なのでここではプログラミングが上達せずに悩んでいる方のために、その原因と上達させるためのコツについてお話していきたいと思います。

基本的にプログラミング学習は挫折しやすい

私自身もど素人の段階から独学で勉強してきたタイプの人間ですので、人がプログラミング学習のどこで挫折するのかはある程度理解しています。

ですが一つだけ言わせていただくと、プログラミング学習自体の中に挫折する要素は基本的にありません。

◆プログラミングの才能について問われることはありますが、一定レベルまでであれば、継続した学習を続けていけば誰でも身につけることはできます。

実際に挫折している人たちに共通していることは、プログラミングが難しいという理由ではなく

『なぜ自分がプログラミングを学んでいるのかが明確ではない』

ことが一番の原因です。

例えば

『3ヶ月後にプログラミングを学ばなければあなたは死にます』

と言われれば、どんなに難しい内容でも死ぬ気で勉強しますよね?

だって勉強しなければ死んでしまうんですから。

avatar
この場合、大げさではありますが、プログラミングを学ぶ理由が明確になっているため、挫折のしようがないのです。

実際にプログラミング学習に成功している人たちは、ここまで追い込まれた状況ではないにしても、必ず

『勉強する目的が明確にある』

ことがほとんどです。

avatar
あなたの人生で上手くいったことのほとんどは、必ず何かしらの理由を明確に答えることができるはずです。
avatar
確かに言われてみればそうかもしれないです。

例えば

『起業するためにプログラミングを学ぶ』

人や

『今のブラック企業を辞めるためにプログラミングスキルを身につけて転職する』

といった目標を持っている人たちは、共通して成功しています。

目的意識の高い人

このような人たちは、最初の段階で転職保証の付いたプログラミングスクールに通い、自分が挫折しない環境に身を置き、多くの人が挫折している中で『数ヶ月でエンジニア転職』を実現しています。

ちなみに挫折率が低く、転職保証のスクールとして評判が良いのは、TechAcademy [テックアカデミー]テックキャンプというスクールになります。

こちらは9割以上が数週間で転職できている実績もあるため、一度チェックしておくと挫折せずに数ヶ月でプロとして働くことができるかもしれません。

avatar
強烈に現状に不満を持っている人は、成功する可能性も高いのです。

このように、プログラミング学習をすることが目的ではなく

『学習した後の理想の未来』

に向かうための手段としてプログラミングを学ぶ必要があるのです。

※プログラミングの学習は、結局手段でしかないため、プログラミングを学習することが目的となると、途端に未来が見えなくなっていきます。

成長曲線を間違えると全く上達しなくなる

あらゆるジャンルで言えることですが、人間が新しいことを始めた時というのは、右肩上がりで成長していくのではなく、緩やかにカーブしながら成長していき、あるポイントでブレイクスルーが起こり急激に成長していきます。

avatar
ほとんどの人は、プログラミングを学習してすぐに結果が出ると思ってしまいますが、実際は知識が溜まるまでの期間は苦しい時期が続くことがほとんどです。

これはRPGゲームで考えると分かりやすいと思います。

例えば自分が主人公だったとして、小さな敵を倒しながら経験値を稼いでいくとします。そしてある一定の経験値を稼ぐことができたら

『パパパパッパッパッパ~ン!(ドラクエのレベルアップの音w)』

とレベルが上がり、新しい技を覚えます。

この技を覚えることができれば、今まで倒せなかった敵も瞬殺できるようになるのです。

このように、経験値が貯まるまでの間は辛い期間が続いてきますが、そこでレベルが上がってしまえば一気に道が開けるのです。
avatar
プログラミングに関しては、経験値が溜まるのは少し遅い印象です。
avatar
なるほど。ということはレベルが上がるまで辛抱する期間が長いと考えておく必要があるということですね。
avatar
おっしゃる通りです。

結局人生なんてRPGゲームと同じようなものです(個人的な価値観)。

自分が経験値を積み上げていけば、それだけできることも増えていくことになるのです。

目次に戻る▶▶

なぜプログラミングが上達しないのか?

レベル上げをすることは大切ですが、一つ気をつけなければならないことがあります。

それは

『自分がレベル上げの方法を間違っている可能性がある』

ことです。

avatar
初心者の頃に独学を選択した人が陥りがちです。

例えば

『毎日8時間プログラミングの勉強をしてます!でもなかなか成長しません!』

という人がいた場合、あなたはどのようなアドバイスをしますか?

これだけの時間を使えば得られる経験値も高そうですが、時間を使って成長できていないということは

『確実にレベル上げの方法が間違っている』

はずです。

プログラミングの学習に関してやりがちなミスを3つご紹介しておきます。

これに当てはまると成長速度がかなり遅くなってしまいます。

ただコードを写経しているだけ

プログラミングの写経というのは、実際のコードを目で確認し、それを自分の手で打ち込んでいく作業のことを言います。

もちろんこの学習方法はかなり効果的なので取り入れるべきですが、気をつけていただきたいのが

『ただ写経していても全く成長できない』

ということです。

写経で成長できない理由

というのも、頭でしっかりと理解して写経をしているなら問題はないのですが、人によってはなぜそのコードを入力するのかを理解せずに写経することがあるため、これだとコードを入力しているだけで、自分で考えることをしていないのです。

avatar
漢字テストの点数を取るために、漢字をひたすら写して書いていても成績が伸びないのと同じです。

最初何もわからない段階では写経するだけでも効果を得られるかもしれませんが、長期的に考えた場合、なるべく早い段階で写経の本質的な意味を理解してコードを書くようにしましょう。

プログラミングは学校の暗記テストとは話が違いますからね。

コピペでコードを打ち込んでいる

そして、こちらはプログラミング学習において最悪の行動となります。

今後プログラミング学習をするのであれば、脳みそから『コピペ』という文字は消しておいてください。

avatar
コピペというのは、ネット上に書いてあるコードをまるまるパクってコードを書くことを言います。

例えば、自分が頭で理解してコードをコピペしていた場合、時間短縮になると思われがちですが、実際にコードを入力するのとコピペをするのとでは最終的なスキルに開きが出てきます。

コピペで完結する癖をつけてしまうと、実際の現場でコードを入力する際に

『タイプミス』

を起こしてしまった時、そのミスに気づくのが遅れます。

※頭でコードを理解していても、実際に自分の手で書いてみると意外と上手くいかないことがほとんどです。

コピペに慣れると、理解していると思い込んでいるだけの状態になってしまうのです。

タイプミスを修正すること、サンプルコードと自分が打ち込んだコードの違いを洗い出す作業をすることで、自然とデバックスキルが身につくのです。

avatar
ここでコピペばかりしているということは、自分からスキルを身につけることを放棄しているようなものなのです。

学習している段階で楽な方に逃げてしまうのは、最終的に自分の首を締めるだけなので気をつけておきましょう。

勉強はしているがコードは書いていない

これは個人的な意見としてもそうですし、実際にエンジニアとして活躍している人の意見を聞いても同じですが、やはり成長スピードの早い人たちは、誰よりもコードを書いてアウトプットすることを意識しています。

ちょっと分からないことがあったとしても、そこは飛ばしたりググったりしてコードを書き、とにかく一つの作品を作り上げることをが重要です。

avatar
できなくても、とりあえず1つ作ってみる人はかなり伸びている印象を受けます。

仮に一つサービスを生み出したとしましょう。

そうすると、自分が作った作品の欠点や改善点が露骨に分かるため、そこを修正するために知識を補強することでまたスキルをアップさせることができるのです。

補足

もし可能であれば、早い段階でサービスを一般に公開してしまい、ユーザーのフィードバックを得るのもおすすめです。

もし可能であれば、早い段階でサービスを一般に公開してしまい、ユーザーのフィードバックを得るのもおすすめです。

avatar
実際に作品を公開してみると、その道のプロからアドバイスを貰えることも多々あります。
avatar
なるほど。その手がありましたね。

◆作品を公開するメリット

自分のWEBサービスを公開する

多くの人がWEBサービスを見る

ユーザーが求めるリアルな意見を貰える

それを再度WEBサービスに組み込む

リアルなユーザーの声ほどためになるものはありません。

avatar
サービスを世の中に生み出している人とは逆に、完璧なサービスを生み出すまで基礎を勉強し続けている人がいた場合、どちらの成長スピードが早いかどうかは容易に想像できますよね?

スポーツでも試合に出ている人とそうではない人の成長スピードが違うように、プログラミングも勉強ばかりしていては急激な成長を遂げることはできないのです。

目次に戻る▶▶

プログラミングの挫折率をグッと下げる効果的なたった1つの方法

私自身もあらゆる失敗・挫折を経験してきましたが、結局小手先のテクニックを駆使しても挫折を避けることはできません。

ネット上で挫折しない方法を探して時間を使うよりも、圧倒的に効果的なのは

『理想とする指導者・メンターを1人見つけること』

これに尽きます。

avatar
挫折するということは、プログラミングを学んだ未来の自分が具体的に想像できていないのが1番の原因です。

自分が目指すべき指導者・メンターの存在が見つかれば、こちら側の悩みを共有できるため心が折れることがなくなります。

指導者・メンターに関しては、見つける場所は

▼指導者・メンターが見つかる場所

プログラミングスクール

企業への就職

プログラミング学習の集まりへの参加

この3つを上手に活用しましょう。

1,プログラミングスクール

学校に通って勉強するのと、家に引きこもって勉強するのとでは、学校の成績が大きく変わってくるように、プログラミングに関しても、引きこもって自分で勉強するとかなりの時間がかかる、もしくは挫折します。

avatar
そのため、早い段階でプロのマンツーマンサポートを受けながら基礎を学び、その後一人で学習してスキルを磨くルートが挫折しづらいルートとなります。

プロのサポートを受けながら転職先まで紹介してくれるスクールとしては、TechAcademy [テックアカデミー]テックキャンプが挙げられます。

2,企業への就職

正直な話、プログラミングは勉強時間をなるべく短くして、まずは1度現場に出てみるのが一番です。

avatar
そこで働いている人たちは、自分が初心者であれば誰もが自分よりもスキルのある人たちです。

未経験・初心者で企業に就職するのは少し難しいこともありますし、リスクもあるため、最初は未経験でも働ける『エンジニア派遣』を利用すると良いでしょう。

ちなみに私は未経験の時に『パーソルテクノロジースタッフ』にお世話になり、そこで時給1500円の案件を紹介してもらいました。

IT・WEB・エンジニアの派遣なら、パーソルテクノロジースタッフ

派遣であれば、現場環境が悪かった場合、派遣の担当者に相談して辞めることもできますので、正社員ほどリスクを背負うこともありません。

3,プログラミング学習の集まりに参加

上記2つのどちらかに参加していれば、これはおまけ程度に考えておきましょう。

avatar
実際プログラミングは挫折者が多い業界なので、定期的に勉強会が開催されています。

IT勉強会で代表的なサービスである『compass』に登録しておけば、どこかしらで勉強会に参加できるはずです。

目次に戻る▶▶

プログラミングの成長を遠ざける悪魔たち

よく私への質問で

『どうやって挫折せずにプログラミングを学んだのですか?』

というものが来ますが、実際のところは私も挫折しまくっています。

正確に言えば、挫折というよりも

『プログラミングの学習スピードを落とす悪魔たち』

の存在に悩まされていました。

avatar
最初の頃は、ただプログラミングを勉強したいという気持ちで始めたため、学習にそこまでの情熱を持つことができませんでした。
失敗談

そのため、パソコンを使った学習となると、すぐに誘惑に負けてよく分からないことに時間を使っていたのです。

今後プログラミングを学習する場合、以下の悪魔たちの存在を遠ざけることを考えておかないと、私のように無駄な時間を使ってしまうことになります。

スマホアプリゲーム

ちょっと勉強してスマホをいじり、また少し勉強してスマホをいじる。その繰り返しをしていた頃は全くプログラミングのスキルが上がりませんでした。

これは当然と言えば当然です笑。

avatar
私自身はとあるアプリゲームにどハマりしていた時期があったため、移動時間や隙間時間にアプリを開いてはゲームに集中していました。

当然プログラミングの学習をしている中で、スマホが近くにあればアプリを開いていましたし、日によってはアプリのイベントを言い訳にしてプログラミングの学習をおろそかにしたこともあります。

ゲームが悪いという話ではなく

『必ず勉強する時間を確保し、その時間にはスマホをいじらない』

という決まりを自分の中で作っておくことが重要だということです。

アホらしい話かもしれませんが、スマホ大好きな人にとってはこの誘惑は強烈なものになりますので十分にご注意ください。

youtubeなどのパソコンの娯楽

そしてプログラミングの学習で一番辛いのは

『パソコンを使う必要がある』

ということです。

例えば普通の勉強の場合、教科書やノートさえあれば勉強ができるため、机の上に無駄なものを置かずに学習に集中することが可能です。

しかしプログラミングの場合、少し気を緩めるとyoutubeの動画やネットサーフィンができる環境にあるため、自分の心を鬼にしないと意味ないことに時間を奪われまくります。

avatar
過去の私は、どれだけの時間をyoutubeに奪われたか分からないくらい動画を見ていました笑。

この時間を全てプログラミングに捧げていれば今頃‥なんて考えても終わったことは仕方がありません。

今後本気でプログラミングに取り組もうと思っている場合には、このyoutubeという悪魔に心を奪われないようにしてくださいね。

目次に戻る▶▶

プログラミングの成長を加速させるたった1つの要素

私もあらゆる手段を取り入れてプログラミングの学習をしてきましたが、最終的にプログラミングで圧倒的な成長を遂げるための方法はたった1つであるという結論に達しました。

それが

『自分が理想とする未来の臨場感を高めまくること』

です。

avatar
正直これだけできればプログラミングの学習なんて余裕です。

例えば3ヶ月猛烈にプログラミングを学習した自分を想像して見ましょう。

  • その時の自分はどんなことができていますか?
  • 今の生活と何が変わっていますか?
人間の本質

自分が求めるスキルを手に入れることによって、未来の自分が理想とする生活を具体的に想像することができれば、それを達成するための行動を取ることは全く苦になりません。

例えば

『あなたは毎日1冊の本を読み続ければ、1年後に億万長者になっています』

と100%当たる占い師に予言されたとしましょう。

そうなったら、あなたは必ず毎日本を1冊読みますよね?

この例は大げさかもしれませんが、未来の自分に対する臨場感を高めることさえできれば、あとは行動するだけでそれを実現することが可能になります。

細かいノウハウを求めている人は多いですが、本質的な部分を意識することで、面白いくらいプログラミングのスキルは高まっていきますよ。

一番オススメの方法としては、プロとして活躍するエンジニアに直接教わり、その人がどのような考えでプログラミングを学習してきたのかを知ることです。

プロが在籍するスクールであれば、エンジニアとしての未来が開ける可能性が高いですよ。

目次に戻る▶▶

まとめ

結局自分の人生なんて自分の行動次第でいくらでも変えることができます。

ただ本質的な話をしてしまえば、プログラミングの学習で挫折してしまったり誘惑に負けてしまう場合は

『本当は自分を変えたくない』

という気持ちが強いだけなのです。

これは潜在意識と顕在意識の話を理解すればすぐに分かります。

人は基本的に

『現状維持』

したい生き物ですから、自分が大きく変わろうとすれば、それだけ昔の自分に引き戻そうという力が強くなります。

avatar
それがyoutubeを見させたり、スマホアプリゲームで遊ばせたりする悪魔の存在というわけですね。

だってプログラミングを本気で勉強したら人生が変わってしまうんですから。

これは人間の本能に反する行動なわけです。

逆に未来の自分に対する臨場感を高めて

『自分がプログラミングができるのは当たり前』

という考え方になれば、逆にそちら側に引っ張る力が強くなるのです。

どんな小手先のノウハウを使っても、この本質を理解していないと挫折を繰り返すことになります。

少し違った切り口でお話をしてきましたが、この考え方は人生を変える重要なマインドなので、ぜひ覚えておいてくださいね。

人気記事 安くてスキルが身につくプログラミングスクールを厳選してみた!

Pocket