Pocket

プログラミングの学習というのは面白いもので、どんなに正しい方法で学習を始めたとしても、ほとんどの人が途中で脇道にそれはじめ、一定期間必ず無駄なことをする時間が生まれます。

avatar
どんな優秀なエンジニアであっても、間違いなくくすぶっていた時期というのはあります。

今回の内容はいつもとは趣向を少し変えて、綺麗事を全て取っ払ってプログラミング学習について振り返ってみようと思います。

ちなみに私はくすぶっている時間は結構長かったタイプなので、失敗エピソードを語り始めたら止まりません笑。

なのでここでは3分程度で読める記事にギュッとまとめてコンパクトな形で話を進めていきたいと思います。

ちなみに今回の内容は

今独学でプログラミング学習を始めようとしてる
独学で本当にスキルが高められるのか不安
プログラミングスキルが身に付かない
将来プログラミングを使って働くイメージが全く持てない

このような方にはとても参考になる内容に仕上げているつもりです。

一番見て欲しいのは『昔のくすぶっていた頃の自分』ですが笑。

プログラミングの独学の9割が続かない理由

まず、プログラミングの独学が続かないパターンはほとんど決まっています。

プログラミングの独学で挫折する鉄板パターン

・プログラミングの勉強の仕方が分からない
・本が難しすぎて進まない
・開発環境を整えるところで心が折れる
・質問できる人が周りにいない
・エラーが直せない
・モチベーションが続かない

avatar
基本的にはこのどれかに当てはまり、嫌になって途中で投げ出してしまいます。

プログラミング学習が続く人・続かない人の明確な違い

結局のところ、プログラミング学習を続けられる1割の人たちは『自分がプログラミングの学習を続けやすい環境』に身を置いているだけです。

avatar
特別プログラミングの才能がある人だけが続くわけではないので、その点は安心して大丈夫です。
プログラミングの才能について

よくプログラミングは才能がある・ないと分けられますが、この『才能』に関しては、IT企業のトップエンジニアになる人たちだけ(googleなど)が当てはまります。

日本の普通のIT企業でエンジニアをするレベルでは、正直才能は全く関係ありません。

学校の勉強でもそうですが、塾に通って能力のある先生に教わる生徒もいれば、自宅で勉強するだけで好成績が残せる生徒もいます。

そして当然、塾に通う生徒の方が

  • 先生に直接質問できる
  • 能力の高い先生に直接教われる
  • 塾で意識の高い仲間に囲まれて学べる

などのメリットがあるため、成績を伸ばしやすくなります。

プログラミング学習に関しても全く同じです。

自分が本当に一人で独学できるのかどうか?ここを過去の学生生活を振り返っておきましょう。

avatar
ちなみに私の場合は、家で勉強するとあらゆる誘惑に負けて全く成績が伸びませんでした。

プログラミングを始めた当初の私の行動記録(ダメパターン)

現在もそこまでのスキルを持っているわけではありませんが、過去のダメダメな時期と比べると、圧倒的に成長しているなぁと実感している今日この頃であります(自己満w)。

今なかなか思うように結果を出せていない場合、もしかしたら過去の私と同じような思考でプログラミングに接している可能性があります。

avatar
人が失敗した経験というのは、次の世代の方々にとってとても参考になる話が多いです。

私も歴史書をたくさん読むのですが、その際には成功した事例よりも、むしろ

『なぜ失敗してしまったのか?』

この部分にフォーカスして文字を読み進めるようにしているのです。(成功は偶然の要素が多いが、失敗している偉人は大体同じような思考で動いていることが多いため)

補足

同じことをしたら失敗する‥ということは、同じことさえしなければ短期間で結果を出すことも可能になるのです。

では過去の私がどのようにしてプログラミングをスタートさせたのか?

まずやったことは大きく3つあります。

とりあえずプロゲートに有料会員登録

私の場合、新しいことに挑戦する際の投資の意識は人よりも高かったため、ある程度の資金であれば躊躇なく投資をしていました。

とはいえ、いきなり大きな金額を投資するほどのモチベーションもなかったため、まずは月額980円で使うことができるプロゲートというサービスに登録しました。

プロゲートに登録することは何も悪いことではありません。

avatar
むしろ成功するための最初の1歩としては適切な判断でしょう。

しかし私の場合

『プロゲートに有料会員登録するだけで満足してしまった』

のです。

つまり、自己投資した自分という存在に満足し、全く行動を起こさなかったのです。

この気持ち分かる人にはめちゃめちゃ共感してもらえると思います。

それっぽいプログラミング教材を3冊購入

プロゲートの会員という肩書きをひっさげることができた私は、そこから調子に乗ってバンバン投資をし始めます。

その時の思考を言葉であらわすならば

『プロゲートは初心者向けの教材‥、ということは、初心者レベルの学習はここで済ませることができるから、もしスキルが高まってきた時のために、今の段階で中級者・上級者向けの教材を3つくらい持っておこう!』

こんな感じで考えていたため、速攻でAmazonで教材をポチりました(全く使わないのにww)。

avatar
この段階でプログラミング初心者→中級者→上級者への階段を整えた(と、自分では思っていた)ことになります笑。

ちなみにプログラミング初心者が『本』で独学を始めると、ほぼ挫折します。

その理由に関してはプログラミング初心者は本で独学すると99%絶望します[体験談あり]の記事で解説しているので、本を教材に独学しようと思っている場合はこちらを参考にしてみてください。

ドットインストールで動画視聴をする

バッチリ学習環境を整えて、行動すればある程度知識は身につけられる環境を作ったのにも関わらず、私のスキルは一向に伸びていきません。

それもそのはず、当時の私は知識を頭に入れればプログラミングができると思い込んでいたため、教材をパラパラ読んでコードを暗記することに全力を注いでいました。

avatar
プロゲートに関しては、自分でコードを入力して学習するシステムだったため、正直面倒臭すぎて3日くらいで投げ出したことを覚えています笑。

そんな中で、教材を読むよりも動画視聴の方が学習スピードは高まるという話を聞いた私は、プロゲートと購入した教材を無視して

『ドットインストール(プログラミングの動画教材)』

を視聴し始めました。

こちらの教材も、無料で使えるものの中ではトップクラスに分かりやすいものになっていますが、何度もお伝えしている通り、私は

『知識を頭に入れるだけで終わり』

だったため、全くスキルが伸びていませんでした。

しかし当時の私は

avatar
『うわ〜、今日2時間も動画視聴してたわ〜!ムッチャ成長してるやん!』

と本気で思っていましたね。

目次に戻る▶▶

今考えると無意味だったプログラミング学習方法

もし今の段階で、私と同じような思考・行動をしているのであれば、それはマジで無意味なので速攻でやめてください。

これは言い切れますが、本気で

『人生の時間の無駄遣い』

です。

もちろん全くプログラミングを知らない状態であれば、ただの聞き流し、読み流しでも意味はあります。

avatar
しかし、これを続けているだけではプログラミングをスキルとして使えるようにはなりません。

意味のない行動記録をおさらいしたところで、プログラミング学習で無意味な行動・思考についてさらに掘り下げていきましょう。

  • なぜ成長しないのか?
  • なぜ無意味なのか?

その点を具体的に解説していきます。

ただ教材や動画コンテンツを視聴する時間(無意味レベル40%)

初心者の頃はこれをやりがちなのですが、もしやるとするならば、どんなに長くても最初の1週間だけにしましょう。

avatar
教材や動画を眺めて満足するというのは、レベル0から1にはしてくれるかもしれませんが、レベル1から10→20にはなりません。

どんな学習方法を取り入れる場合であっても、必ず

『得た知識をとりあえずアウトプットしてみる』

この習慣は必ず持ちましょう。

参考:プログラミング学習の暗記(インプット)はただの逃げである理由

補足

知識を入れるだけ、動画を眺めるだけというのは、テストで点数を取るなら問題ないかもしれませんが、プログラミングはテストではなく、自分でサービスを生み出すための手段でしかないため、このマインドは早い段階で切り替える必要があるのです。

自分ができる作業ばかりを選んで実践(無意味レベル100%)

教材を眺めるだけ、動画を見るだけの段階から、実際に自分の手でコードが書けるようになったとします。

この段階に来ても、また初心者だからこそやりがちなのがこれです。

一度コードを書いて、その通りにコンピューターが動くと最初は感動します。

avatar
今まで自分が使っていたサービスがこのようなコードで動くのか!と思うと、1つプログラミングの面白さを実感できます。

ただこの段階に入ると

『自分ができることだけしかやらなくなる』

時期も出てくるため、これも自分の成長スピードを止めてしまうのです。

何も見ずにコードが書けるようになれば、それは自分の1つのスキルとして身についている証拠です。

注意点

その段階で満足して同じようなことを繰り返していても全く成長はありませんので、できることが増えてきたのであれば、より自分を高めるために積極的に新しいものを取り入れていきましょう。

全て一人で問題を解決しようと頑張っていた時間(無意味レベル50%)

『分からないことが出てくる→自分で解決する→コードとして書くことができるようになる』

この繰り返しをすることによって、プログラミングのスキルはどんどん高まっていきます。

自分一人で問題を解決することは全く悪いことではありません。

しかしここでお伝えしたいことは

『全てを自分一人で解決しようとするのは、マジで時間の無駄』

だということです。

というのも、最初に私が失敗事例をご紹介したように、プログラミング学習においては先人たちが数々の学習方法を確立しています。

avatar
それなのに、わざわざ自己流でプログラミングを学習するとなると、1から全て自分で問題を解決しなければならなくなります。

言ってしまえば、すでに橋が架かっているのに、その横でわざわざ1から自分で橋を作り出すようなものです。

この行動は時間の無駄ですよね?

一人で頑張ることはプログラミング学習において重要です。

しかし

『努力する必要のないところを自分一人で頑張るのは無意味』

ですから、早い段階で先人たちに教えを請うことが最短ルートを駆け抜ける手段であると断言できるのです。

目次に戻る▶▶

昔の私のようにプログラミング学習でくすぶっている人に伝えたい3つの教え!

私の失敗経験、そして無意味なプログラミング学習方法、ここまでの話である程度やるべきことは見えてきたと思います。

そうです

『ここまでの話で紹介した逆のことをすれば結果は出る!』

ということです。

昔の私を全否定するつもりはありませんが、やはりあらゆる無駄なことを実践していたため、これらを省けば数ヶ月早くこの業界で活躍できるようになっていたことでしょう。

avatar
まぁ過去を悔やんでも仕方がありませんから、これから挑戦をする方々のためにこの記事で貢献していきますけどね笑。

今のくすぶっている状況を打破するために、やるべきことはシンプルです。

もし今の段階で、私がプログラミングを始めるのであれば、以下の3つマインドを徹底して実践していきます。

コードを書かなければ何も始まらない!

あらゆる業界の成功者に共通していること。それは

『アウトプットしている量が誰よりも多い!』

ことです。

これは様々な偉人の書籍を読めばすぐに分かることです。

とにかく結果を出している人たちは、行動力やアウトプット量が半端じゃありません。

avatar
プログラミングで考えるならば、インプット量を増やすのではなくアウトプット量を増やすためにコードを書きまくることが必要なのです。

実際にコードを書くと

なぜコードを書いてこのような処理がされるのか?
似たようなコードはあるのか?
コードを書いてエラーが出る‥その理由は何なのか?

あらゆる疑問が出てきます。

この段階に入って初めてインプットをするのです。

考え方としては

『足りない知識を肉付けしていくイメージ』

でインプットをするということです。

最初から多くの知識を入れるのではなく、所々足りない知識を補っていくことで、アウトプット主体の学習が定着していきます。

『分からない知識を肉付け→できないことができるようになる→さらに新しいことに挑戦→また分からないことが出てきたら知識の肉付け→できないことができるようになる』

プログラミング学習を最短で駆け抜けるのであれば、結局これを繰り返していくのが最短ルートでしょう。

もし別のやり方があれば、ぜひ私に教えていただきたいくらいです。

今まであらゆる失敗をしてきた私が導き出した一つの結論ですので、まず間違いはないでしょう。

短期的な目標を小さく、長期的な目標を大きくする!

そしてマインドセットとして最も重要なのはここです!

これは学習する前の段階で心に刻んでおいてください。

実際にど素人からプログラミングの学習を始める人の多くは

『とにかく短期間でスキルを身につける』

ことに意識を向けます。

これは悪いことではないのですが、最も危険なマインドセットなのが

『短期間で大きな成果を出すことに意識を向ける』

ことです。

プログラミング学習を進めていくと分かりますが、どんなサービスであっても、地味なことをコツコツ積み上げて作られています。

avatar
これは至極当たり前の話なのですが、短期間で大きな成果を出すマインドセットを持っている場合、短期間で自分ができることのレベルの低さに絶望し、プログラミング学習を挫折してしまいがちです。

逆に短いスパンでできることは小さなことだと理解し、コツコツスキルを積み上げて最終的に大きなことを成し遂げたい!←このマインドセットを持っている人たちは長期的なスキルアップができるため、まず挫折することはありません。

『短期的な目標は小さく、長期的な目標は大きく』

この基本的なマインドセットが、後々の自分の人生を大きく変えることになりますので、必ず心に刻んでおいてくださいね(どんな業界でも同じことが言えるはずです)。

投資しない=無駄な時間を自ら作っている!

これは先ほどお伝えした先人たちの話に繋がってきますが、結局今私たちがやろうとしていることは、早い段階で道を切り開いてくれた人がいることがほとんどです。

avatar
確かに数十年前までは、プログラミングは書籍から学ぶことしかできませんでしたが、現代は動画コンテンツやプログラミングスクール などでプロが直接指導するサービスが充実しているため、投資さえ惜しまなければまず挫折することはありません。

『スキルを身につける→スキルを使ってお金を稼ぐ→お金を再投資してスキルを身につける→新しく身につけたスキルを使ってお金を稼ぐ』

このマインドがすでに出来上がっている人たちは、投資を渋ることはありません。

しかしプログラミングを始めたばかりの頃は、この投資の重要性に気づいている方が少ないため、無駄なことに時間を使ったり、挫折したりするのです。

補足

実際プログラミングスクールに投資をすれば、転職先までサポートしてくれる高待遇を受けられるところもあります。

この投資を無駄だと思うのか?それともプログラミングスキルを身につけて将来的に余裕で回収できると考えるのか?この思考の違いが未来を大きく分けることになるのです。

プログラミングを本気で学ぶべきか迷っている場合には、プログラミングスクールの無料体験サービスなどを上手に活用することをおすすめします。

目次に戻る▶▶

まとめ

コンパクトにまとめようと思いましたが、予想外に長くなってしまいましたね笑。

avatar
これら以外にも伝えたいことは山ほどあるのですが、とりあえず今回の内容をしっかりと理解していただければ、まずプログラミング学習でくすぶることはなくなります。

もし今の段階で思ったようにスキルが伸びないと悩んでいる場合、どこかしらで昔の私と同じ思考を持ってしまっているかもしれません。

まずはその原因を突き止め、この先大きく飛躍するためには何をすべきなのか?そこから考えていきましょう。

思考が変われば行動が変わり、それが人生を変えることになりますからね。

Pocket