未経験から転職

屍を越えてゆけ、プログラミング独学でやってはいけない3つの失敗

こんにちは、現役フリーランスエンジニアのとだこうき(cohki0305)です。

僕は、独学のみで営業からエンジニアに転職したのですが、今から考えたら非効率な勉強していたなーと思うわけですよ。

実際、転職するのに 1.5 年かかりました。適切な勉強方法実践していたら、半年くらいで転職できたのではないかと…

僕だけの失敗ならそれで別にいいんですが、周りを見ると結構同じミス犯してる人多いなと!しっかりしろよ!

Twitter で独学しているアカウントの発言見ると「うーん、僕と同じ間違いしてるよ…」ってことがあるのですよ。いやーほんとに….

というわけで、僕の経験から「独学でこういうことやっちゃマズイよねー」というダメダメ勉強法を紹介していきます。失敗から学んで、皆さんは効率的に勉強してください!!!

基礎を押さえずに発展的な内容に取り組む

一番やりがちな失敗の 1 つ目が、「基礎を無視している」です。

独学していると、早く次のステップに行きたくて凄い焦ることがあるのですが、基礎を無視して発展的な内容やると痛い目あいますよー

プログラミングを学ぶ順番がある

プログラミングをやろうと決めて、学習内容を決めると思いますが、大抵の場合その順番は間違っているのですよ。僕も間違ってました。

言っておくぞ!順番間違えれば地獄だぞ!!間違った僕が言うのだから間違いない。

どういうことかというと、たとえば、高校の数学のカリキュラムを思い出してください。

1 年生は基礎をやって、2 年生で発展した勉強して…って段階を踏んで勉強していきますよね。数学だと 1 年生で線形代数、2 年生で高次関数、3 年生で微分積分とか。

もし線形代数わからない人が、微分積分なんてやろうとしたいたらどう思いますか?「あーこの人絶対失敗するな」と思いますよねw微分積分なんて基礎学んでても難しいですからね。

これ、プログラミングでも同じですよ。「あーこいつ失敗するな…」というのは端から見ていたらわかります。

そして、プログラミングもちゃんと基礎を学んでいても難しい分野は多いです。だからこそ基礎をちゃんと勉強するのは大事です。

適切な順番で学習するのはプログラミングにおいても非常に重要

学習する順番を調べるのに少し時間をかけよう

ただ、プログラミングは、数学とは違って親切に I → II → III というようにカリキュラムが決まっていないんですよね。

番号が付いていたら、確かに I と II を飛ばして III からやろうという人はいないでしょうねw

実際、どういう順番で勉強すべきかというのは、結構難しいです。僕だって新しい技術に挑戦するときには失敗してしまうことがあります。

ではどうすべきかというと、自分が学ぼうとしている技術に詳しい人に聞いてみてください。これが一番です。

iPhone アプリ作ろうと思ったら、iPhone アプリ作ってる人になに勉強すべきか聞くのが一番です。Web アプリ作りたいなら、Web エンジニアに聞いてください。これは絶対間違いない!

プロ中のプロですから、何を学べばいいかなんて楽勝で知ってますよ!

でも、そんなプロフェッショナル普通周りにいないよなwいたら苦労しないわ!!って感じですよね。

(Webアプリ作りたいなら Twitter で僕(@cohki0305)に DM くれれば、教えますけどね!)

だから、もう自分で調べましょう。本でもブログでもなんでもいいです。その技術を学ぶのに必要な知識が書かれているものは必ず存在します。てか、結構あります。

※ Rails であれば、もちろん僕のブログにもそういう情報少し書いています。

あわせて読みたい
未経験から独学でRailsエンジニアに転職するために必要な5つの技術とその勉強方法こんにちは、とだ (cohki0305) です! 僕はまったくのプログラミング未経験から Rails エンジニアになったのですが、 ...

みんな全然それを調べずに挑戦しちゃうのですよ。あるいは調べていても、作りたい気持ちが先行して、基礎を疎かにしてすぐに発展的な技術を触りたがるのですよね。

で、難しすぎて挫折しちゃうわけです。

学ぶことが多すぎて焦る気持ちはわかるけど、焦って突っ走って崖から落ちて死ぬより、ゆっくり進んででも生きてるほうがいいよ。

学習手順をしっかりリサーチしてから勉強しよう

アウトプット量が少なすぎる

2 つ目は、インプットばっかりしてアウトプットしていないことです。これマジ最悪ですよ。

たとえば、こんなこと心当たりないですか。

  • 新しい本をすぐに買う
  • Progate ばっかりやっている
  • 新しい言語にすぐにチャレンジする
  • チュートリアルを 3 周以上やる
  • 写経ばかりやっている

初心者で学習歴が 3 ヶ月以上でこれに当てはまっていたら、ちょっと危機感を持ったほうがいいです。これ結構やりがちなミスなのですが、インプットだけだとスキル伸びないです。

インプットしつづけてもスキルは伸びない

これらの項目って全部インプットなのですよね。インプットすることは、学習する上でもちろん大事なのですが、プログラミングって自分でコード書けるようになってなんぼです!

インプットしてるうちは「勉強している感」があるでしょうが大して実力ついてないはずです。だって、スキルって自分でコードを書ける力のことですから。

アウトプットこそ最高の学び

自分で考えてコード書けるようになるには、自分でコード書くしかないです。なので、アウトプットしつづけることが最強の勉強方法です。

コード書いたことある人ならわかると思います。コードを理解できることと自分で書くことに大きな隔たりがあることを。

書けるようにならないと、プログラミングを学ぶ意味はないので、インプットしたらそれをアウトプットしていきましょう。

実際僕の周りの初心者でも伸びている人は、明らかにアウトプット量多いです。インプットは最低限って感じです。そして、インプットしたらすぐにアウトプットしてますね。

とはいえ、アウトプット意識しすぎて、いきなり難しいことにチャレンジするってのは前章で話したとおり違いますからね!

「基礎は基礎でインプットしてアウトプットする、そして発展内容についてもインプットしてアウトプットする」、段階的にインプットとアウトプットを繰り返すのが大事です。

インプットばっかりしてる人は今すぐコードを書け!

動かすこと”のみ”に夢中になっている

最後ですが、「動かすことがだけが目的になっている」です。

初心者だと、とりあえず動かすことが目標になってしまうことが多いなと。エラーが起きたら、それを解決することが目的になったり、ググってコードをコピペしただけとか。

これは結構危険です。そして、僕もこうでした。

出来ることを増やしたくて勉強するんですが、コピペばっかりしてるから、問題にぶち当たったときに自分で考える能力がついてなくて、結局全然スキルついてないやん!って状態でした。

動かすことを目的にすること自体は悪いことではないのですが、「動かす」ことに囚われすぎると、汎用的なスキルが身につかないので注意が必要です。

「動けばいい」では動かない

プロダクトを作る際には、「動けばいい」というのは正しいと思うんですけど、学習する上ではそういう姿勢だとあまり良くない。

問題が生じたときに、それを解決する方法を学べばいいと思うかもしれませんが、プログラミングなんてやってれば問題なんていくらでも生じまくるわけです。

だから、場当たり的な対応策をいっぱい知るのではなくて、どういう仕組で動いてるのか、なぜ動かないのかを理解する必要が出てくる。

そうすれば、どんな問題でも対処できる能力が培われる。

動けばいいという場当たり的な対応策では、結局動かなくなる。

汎用的なスキルを身につけることを意識しよう

プログラムが動かないときこそ学習のチャンス

逆にいうと、エラーが出たり、思ったとおりに動かない状態っていうのは勉強するチャンスです。だから、そういうときはイラっとするのではなくて「勉強するチャンスだ!」と喜びましょう!!

問題はググれば、teratail や stackoverflow などのプログラミング質問サイトやブログにたどり着くでしょう。

その記事のなかで、回避方法を知るだけではなくて、なんで動かなかったのか、どういう仕組で動いているのかを理解するようにしましょう。

最悪エラーが直らなくても、そこで学べれば価値がありますよ。

プログラミングが動かないときこそ、学ぼう

【最後に】難しいからこそ独学には対策が必要

  1. 基礎を押さえずに発展的な内容に取り組む
  2. アウトプット量が少なすぎる
  3. 動かすこと”のみ”に夢中になっている

以上 3 点が独学でやりがちな失敗でした!

とはいえ、やっぱり独学って難しいです。プログラミングは常に進化しているし、学ぶ量も膨大。

独学じゃなくても大変。

それでも独学でやるっていうなら、ちゃんと対策が必要です。僕が言ったようなことはちゃんと実践してください。じゃないともっと苦労することになるでしょう。

そして、独学自信ないという方はプログラミングスクールに通いましょう。数十万円でプログラミングを確実に学べるのですから、現代の最高の投資ですよ。

あわせて読みたい
元営業が教える未経験からプログラマーに転職する最短3STEP!こんにちは、現役エンジニアのとだこうき(cohki0305)です! 僕は新卒で入社したもともと営業をやっていたのですが、独学でプログラ...

プログラミングスクール以外の選択肢として、独学をサポートするようなサロンを運営しているので興味ある方は DM ください。

ABOUT ME
cohki0305
25 歳にして実務経験 1 年でフリーランスエンジニアになり月収 3 倍になった男。独学のみで営業からエンジニアになった経験あり。 未経験からでもエンジニアになる術を多くの人に伝えたいと思ってます!
プログラマーになって年収1000万目指そう

学歴・職歴関係なく、数年間で年収 1000 万円を目指せる職業って何が思いつきますか??

僕はソフトウェアエンジニア(プログラマー)しか思いつかないです。

僕は実務一年でフリーランスになって年収1000万稼げるようになりましたが、別にこの業界なら普通です。学歴も職歴も関係ないです。

プログラマーを目指して稼ぎたい方は、僕が紹介している「プログラマーになるための最短ステップ 3」を是非読んでチャレンジしてください。

未経験からプログラマーになるための方法を知る