目次
独学でも可能!だけど、挫折しやすい。準備が大切!
プログラミングは独学でも習得することが可能です。
なぜなら現代は、プログラミングを独学で勉強する方法がネット上に多く存在するからです。
僕がプログラミングを始めた10年ほど前は、「猿でもわかるC言語」という入門サイトくらいしかなくて、本を読んで習得するのと変わらない環境だったんですよ。
今ではカリキュラムを用意された学習サイトがあるなど、独学でプログラミングを勉強しやすくなっています。
とはいえ独学だと途中で挫折してしまう人が多いのも事実。ある調査によると独学で始めた人の約9割が挫折を経験しているそうです。
よく聞くプログラミング学習を挫折するポイントは、
- モチベーションが続かない
- 疑問や不明点を解決できない
こんな感じです。
ここでは上記のような状況におちいり、挫折してしまうことがないよう準備しておくべきことを見ていきましょう。
準備1:プログラミングで何をしたいのか
モチベーションが続かない人にありがちなのが、「ただなんとなくプログラミングを勉強している」から。
プログラミングとはWebページやアプリケーションを作るための手法です。
手法だけ学んでも、「自分は一体何を目指しているんだろう。」とモチベーションの低下につながってしまいますよね。
なのでプログラミングを習得して《何をしたいのか》、ひいては《何を作りたいのか》を明確にしましょう。
《何を作りたいのか》を明確にしておけば、作りたいものを完成するために必要な知識やスキルを必然的に学ぶ必要が出てきます。
作りたいものを完成するために必要な知識やスキルが習得できたときって、すげー嬉しいんですよ。その喜びがそのままモチベーションに繋がります。
例えば「プログラミングで稼ぎたい。」という目標でも《何を作りたいのか》は重要です。当然ですが「プログラミングができる。」というだけの人には誰もお金は払いません。
報酬はプログラミングで完成したWebページやアプリケーションに支払われるんです。
個人的におすすめなのが、「Webページを作ること」です。
Webページの作成はプログラミングの中でも比較的簡単で、結果をすぐに確認しやすいです。
準備2:学習する言語を1つに絞る
学習する言語を1つに絞ることも重要です。
「あれもやりたい。」「これもやりたい。」で最初から広い範囲に手をつけてしまうと、どれも中途半端なまま挫折してしまうでしょう。
中途半端なまま挫折してしまわないために、最初は1点集中で習得しましょう。
実はプログラミングって、どの言語もよく似てるんです。
なので1つ集中して理解してしまえば、他の言語を勉強したくなった時、基礎の部分は一瞬で理解することができます。
多くの現役エンジニアは複数の言語を扱えますし、そうなっていかないと、エンジニアとして生きていくのは難しいです。
なので最初はとにかく1つの言語を説明できるレベルまで習得しましょう。
上記「プログラミングで何をしたいのか」と少々被りますが、おすすめなのがJavaScriptです。
JavaScriptはプログラミング言語の中でも比較的簡単で、動作も確認しやすいので初心者でも挫折しにくい言語になっています。
プログラミングを独学で勉強する具体的な3つの方法
学習する前に準備しておくべきことがわかったところで、独学での具体的な勉強法をご紹介します。
- 学習サイトを使い倒す
- 調べるスキルを身につける
- 質問するスキルを身につける
上記の通りです。
それぞれ詳しく解説していきます。
学習サイトを使い倒す
プログラミングを独学を勉強するなら絶対に学習サイトを使ったほうが良いです。
おすすめする学習サイトは以下二つ。
学習すると決めた言語1つを学習サイトで学びます。
完全に独学で行うなら、有料コースもコンプリートしておいたほうが良いと思います。
調べるスキルを身につける
プログラミングを勉強していると、というか実際に仕事でプログラミングをしていても同じですが、絶対に調べないとわからないことが発生します。
でも「調べ方がわからなくて答えにたどり着けない」なんてケースも多いです。
例えばですが、一覧をクリックするとその下にサブメニューがニョキッと出てくるような機能ってよくありますよね。
でも「サブメニュー ニョキ」で調べてもほぼ知りたい答えは出てこないでしょう。
正しくは「JavaScript アコーディオン」で検索です。
上記の通りに検索すると、理想としている機能の作り方がゴマンと出てきます。
このように理想としている機能が一般的になんて呼ばれているのか、知っているか否かで作業効率に雲泥の差が生まれてきます。
そこで具体的な調べるスキルを上げる方法ですが、アコーディオンのようなUI(ユーザーインタフェース)知りたいなら、サンプルサイトを見るのがおすすめです。
以下はOnsenUIというUIを作るフレームワークなのですが、多くのサンプルが揃っており、ここにある言葉で検索すればある程度、検索の精度は上がるはずです。
見本になるアプリやサイトがあるのなら、画像をキャプチャして、質問系サイトに投稿してみるのも良いと思います。
質問するスキルを身につける
プログラミングを学習していて、必ず調べなければわからないことがあるように、調べても解決できないことが必ずあります。
「10分調べてわからないことは有識者に質問する」という格言があります。
10分以上調べてわからないことは、1時間も経っても2時間も経ってもわからないままな場合が多いです。(僕もいまだにおちいりがちですが・・・。)
そういう場合は、不毛な時間を使ってしまう前に誰かに質問してしまったほうが良いです。
おすすめなのは、
です。
teratailは日本向けのプログラミングQ&Aサイトで、初心者の投稿が多く、言語やフレームワークごとにカテゴリ分けされているので非常に使いやすいのが特徴です。
ただし闇雲に質問するのは絶対にNGです。
質問者には質問するスキルが必要で、そのスキルとは
- 投稿する前に過去の質問を見る
- 何を実現したいのか明確にする
- 自分の開発環境をしっかりと書く
- 何を試したかしっかりと書く
上記の通りです。
投稿する前に過去の質問を見る
まずは自分で投稿する前に、過去の解決した質問で解決できないのか、しっかりと検索しましょう。
質問サイトにとっても悩みが重複してしまうことは芳しくないですし、自分の時間削減にも繋がります。
何を実現したいのか明確にする
自分は何を実現したくて悩んでいるのかを明確に質問してください。
「〜〜がわからない」「〜〜がうまくいかない」ではスーパーマンのようなプログラマにも伝わりません。有識者は彼氏じゃないですからね。笑
「●●を実現したくて、▲▲を試してみたけど、■■のエラーが出て先に進めません。」
というふうになるべく細かく今の状況を伝えるようにしてください。
自分の開発環境をしっかりと書く
わかる範囲で良いので、自分の開発環境も書きましょう。
フレームワークのバージョンは□□でとか、使ってるサーバーは〜〜でとか、OSのバージョンは○○とか、そんな感じです。
正しいコードを書いていても、開発環境のせいでエラーが出てしまっている場合も少なくはありません。
フレームワークを複数使っているなら、できるだけ全て書いておくべきです。フレームワーク同士が干渉してしまい、エラーが出るケースもよくあります。
何を試したかしっかりと書く
エラーの解決に重要なのは、《切り分け》です。
A処理とB処理が怪しい。A処理を修正してみたけど、エラーは解決しなかった。したがってA処理の疑いは晴れた。
このように、怪しい箇所をどんどん潰して《切り分け》ていくことでエラーを解決します。
自分がエラー解決のために試したことをしっかりと記述することで、有識者が答えを導き出すための強いヒントになってくれます。
確実に学ぶならプログラミングスクールがおすすめ
上記の通り3つの勉強法を活用すれば、プログラミングは独学でも習得することが可能ですが、確実に学ぶならプログラミングスクールの方が強いです。
本気でプログラミングを職業にして、副業やフリーランスで稼ぎたいのなら、プログラミングスクールも検討してみてください。
以下の記事でおすすめプログラミングスクールを解説していますので、ぜひ参考にしてください▼
今回は以上です。