当サイトはアフィリエイト広告(Amazonアソシエイト含む)を掲載しています♪

[解説]プログラミング学習で挫折しやすいポイントと理由は?対処方法を元に説明します

デザイン
浅山

・webデザイン 受託
・web制作 受託
・ブログ記事200本超

講師、担任経験のある現役のデザイナー、デザインを10年経験しています♪大阪在住♪「デザインって楽しい!」をメインテーマに活動しています♪

浅山をフォローする
あなた
あなた

プログラミング初心者ですが、学習で挫折しないようにしたいです♪
ポイント教えてください♪

このような悩みお持ちの方に向けて解説します♪

「プログラミングに興味があるけど、学習する時に失敗したくない♪」このような考えがある人は多いのではないでしょうか♪事前に挫折しやすいポイントを知っておくと回避しやすいですよね♪プログラマーになれたらどんな生活をしますか?

そこで今回は、webデザイナー歴10年であり講師の筆者が、プログラミング初心者の方を見ていて、よく挫折してしまうポイントを解説します♪

この記事を読むことによって、事前に挫折してしまうポイントを是非参考に知っておいてくださいね♪

※なお今回は、web系のプログラミングについての解説になります♪組み込み系、ゲーム系のプログラミングについては筆者は専門外なのでご了承ください♪

この記事のポイントまとめ
  • プログラミング初心者の挫折ポイントが分かる
  • 挫折ポイントの回避方法がわかる
スポンサーリンク

プログラミング初心者が挫折しやすい5つのポイント

プログラミング初心者が挫折してしまうポイントを経験から解説します♪

初心者の挫折ポイント①用語がわからない

<!DOCTYPE html>
<html lang="ja">
 <head></head>
  <body>

    <h1 id = "idName">クリック前</h1>
    <button id = "btn">クリック</button>

    <script>
      var btn = document.getElementById('btn');

      btn.addEventListener('click', function() {
        var mydiv = document.getElementById("idName");

        mydiv.innerHTML = "クリック後";

      }, false);
    </script>

  </body>
</html>

※正確には記述していません♪

こちらは、javascriptを使ったサンプル文♪クリックイベント処理したものになります♪しかし、上から順番に何故このように書くのか、単語にはどういう意味があるのかを知らないと、初心者の方は何がどうなっているのか分からないでしょう♪

  • 語順
  • 英単語の意味
  • 記述のルール

を把握する必要があります♪

また、web独特の用語があったりします♪

プロトコルデータベースHTTPAPI
GitHubLinuxリクエストレスポンス
ライブラリフレームワークアジャイル開発SRE

初心者の挫折ポイント②範囲が広い

また、html/cssが出来るだけでは、エンジニアになりにくくなっています♪

ポジションプログラミング言語や技術
フロントエンドエンジニアjavascript、jquery、node,js、vue.js、AngularJS、react
バックエンドエンジニアRubyもしくはPHP、Python、Java、Docker♪(javascriptも少しできると良い)
インフラエンジニアLinuxやApache、MySQL、PHP、Docker、AWSやFirebase、Azure
アプリエンジニアJava、Swift、Kotlin、React Native

などの総合的な知識が必要になってきます♪

初心者の挫折ポイント③物がないのでイメージしにくい

プログラミングとは言葉のイメージの通り、コンピューターに指示を出すファイルを作ることが仕事になります♪プログラミングは英字だけの世界です♪

例えば、工作で何かを作るときは、目の前で物を見ながら作業ができます♪何処と何処を組み合わせれば上手くいくか見ながら作業できるので理解しやすいと思いますが、プログラミングは目の前に物が見えることはありません♪

なので、どことどこを繋げれば上手くいくのか頭の中で上手く想像しながら作る必要があります♪

初心者の挫折ポイント④エラーの原因が多くてわからない

エラーを直す事は、絡まってしまった毛糸を解くようなイメージです♪

先ほど、

  • 語順
  • 英単語の意味
  • 記述のルール

が正しくないと動かないと言いました♪さらに言い出すとキリがないですが、プログラミング言語自体も日々開発され続けバージョンもアップしています♪

プログラミング言語はバージョンがあり、ちょっとしたバージョン違いで動いたり動かなかったりすることもあります♪このようにそもそもの前提が絡まっている事もあります♪

例に挙げたような複数の原因を一つずつ切り分けて、一つずつ検証して行きます♪1つが原因のこともありますし、2つ、3つが絡まっているような原因かもしれません♪それを解きほぐすような事が必要です♪

初心者の挫折ポイント⑤学校の勉強方法と違う

プログラミングの学習はスポーツの練習に似ています♪何回も試行錯誤することが大事です♪エラーを出しながら、エラーが出た理由は何か?どうすればエラー原因を特定できるのかを考えるスタイルの学習していきます♪

どんどんエラーを出して、エラーの原因を細かく切り分けれることが大事になっていきます♪

プログラミング挫折率のアンケート

各プログラミングスクールが出している挫折についてのアンケートによると、挫折率は8割もあるとの事♪

挫折した事がある人挫折の原因
侍エンジニア約9割気軽に聞ける環境になかった(40.8%)
エラーが解決できなかった(36.3%)
IOSアカデミア約8割わからないことが多すぎる(31%)
エラーの解決に時間がかかる(25%)
今の学習方法が正しいのか不安になる(15%)
デイトラ約8割エラーを解決できなかった時(46.2%)
分からないことを質問できない時(34.8%)
モチベーションの維持が難しい時(31.2%)

参考:https://prtimes.jp/main/html/rd/p/000000003.000047683.html
参考:https://prtimes.jp/main/html/rd/p/000000005.000052865.html
参考:https://prtimes.jp/main/html/rd/p/000000011.000050927.html

プログラミング学習に挫折している人たちの声

プログラミング学習に挫折している人たちの声を紹介します♪

挫折①大学受験のように暗記しようとしていた

この方の原因はとても参考になると思います♪

挫折②熱中できることを

参考:https://twitter.com/1276tsuzuki/status/1492431291672928256

この方は、「27年生きてきて思うことは、自分が好きじゃないことに関しては、全然続かないこと♪ 今まで、英語や簿記、プログラミングに挑戦しましたが、数週間で挫折しました♪

長期的に何かを続けたいなら、熱中できることに取り組むべきだと思う♪」とのこと♪

何事も熱量は大切ですね♪

挫折③「きちんとやりきる」に集中できなかった

参考:https://twitter.com/aotech6/status/1392426079344685065

この方は、「昔、プログラミング勉強したときに、何度も挫折しました progateの980円すらケチってひたすら独学♪ わけもわからず、HTMLとCSSが違うことすらわかってませんでした♪

情報の荒波にのまれると本当に時間を無駄にします 「何をやるか」は先人の知恵を借りて 「きちんとやりきる」に集中しましょう」との事♪

挫折④続けるほど時間とお金の投資になり、結果になる♪

参考:https://twitter.com/garyo0719/status/1397113824021336065

この方は、「何かを始めると決心した時に、続ければ続けるほどそれが時間とお金の投資になり、結果になる♪ただ、途中で諦めた瞬間に時間もお金も浪費に変わってしまうのが世の常♪

どうせやるなら結果が出るまで一緒に続けよ!!ちなみに僕はプログラミング挫折しました♪笑」との事♪

確かにやりきるって大事ですよね♪

プログラミング学習に挫折しないための対処方法

プログラミング学習に挫折しないための対処方法を、

の6つにまとめて解説します♪

対処方法①いきなり動くものを作り出す

よく本で学習しようとすると、冒頭でif文や四則演算など文法ルールが出てきます♪しかし最初は、細かい文法などをするより、いきなりhtml/cssでサイトを作ったり、Swiftでアプリを作ってみるのが良いでしょう♪

とりあえず一度サッカーで言うところのいきなり試合をしてみるイメージです♪そこでプログラミングが面白ければ、飛ばしていた文法をじっくりやると良いでしょう♪

対処方法②全体像を知る

そもそもプログラミングとは何をしているのか、イメージをつけると良いです♪web系に限れば、乱暴な言い方をするとやりとりの全ては「データ通信」です♪

ブラウザにデータを表示する♪データの表示をカッコよくデザインする♪データを大量に捌く♪ユーザーからデータの書き換えを求められたら、書き換えてあげる♪など♪

データの通信のやりとりを制御するのが、web系のやっている仕事になります♪訳が分からなくなったら、データのやり取りをプログラムしてるんだと思ってもらえると自分が何をしているかイメージしやすくなるでしょう♪

対処方法③慣らす

プログラミングの習得はスポーツの習得に似ていると言いました♪なので、ゆっくり慣れる事がオススメです♪なるべく長期少なくとも半年ぐらいは見ておくと良いです♪

教え子を見ていても1日10時間やって1ヶ月で短期で習得しようとするより、1時間を小分けで半年やったほうが、しっかり習得できると思います♪

対処方法④エラーを分割して検証する癖をつける

プログラミングを習得する上で、プログラミングは作る事がメインだと思われていますが、エラーを解決するのが、腕の見せ所だと思った方が良いでしょう♪エラーは当たり前のことで恥ずかしくありません♪日常茶飯事だと思っても良いです♪どちらかと言うとエラーをうまく解決できる人を目指しましょう♪

エラーを解決する場合

  • 記述の順番
  • 単語の記述ミス
  • 関数の使い方が間違っている
  • プログラミング言語のバージョン

などが考えられます♪自分はどのケースなのか細かく切り分ける事が大切です♪記述の順番が違うのか>単語の記述ミスなのか>関数の使い方が間違っているのか、など場合によっては原因を複数で考えたり、場合によっては1つの原因細かく検証する事が大切です♪

対処方法⑤補助プラグインを活用する

プログラムをコーディングする際にエディタには、便利な補助プラグインがたくさんあります♪自動で関数を補完してくれるものや記述ミスを指摘してくれるものなどがありますので、うまく活用しましょう♪

VSCodeのプラグイン例

zenkaku不要な全角を表示
Trailing Spaces不要なスペースを表示
Auto Rename Tag閉じタグも合わせて変更
Path Autocompleteファイルパスを自動補完
Code Spell Checkerスペルミスをチェック
HTML CSS Support設定しておいたclassやidの候補を出してくれる
CSSTree validatorcssの記述ミスなどの問題を指摘してくれる

またプログラミングする際には、ブラウザはchormeを使うと良いでしょう♪chormeを使う事で、検証パネルを出して問題を教えてくれる事があります♪

対処方法⑥動画をなぞる

とにかくプログラミングは、最初イメージが湧きづらいです♪何故なら見えるのは文字だけで、頭の中で組み上げていく必要があるからです♪最初は慣れるまで、ひたすら教材をなぞった方がいいです♪

特に最近ではyoutube動画にて、なぞるだけでサイトが完成する動画もあります♪なぞるだけで完成するものをうまく活用しましょう♪例え簡単な物でも、自分が作ったものがブラウザに表示されるだけで感動しますよ♪

補足:継続について

この記事は、講師目線で解説していますが、「どうやったら継続できるか?」みたいな所は、自分でも試行錯誤中です♪体験を分析してみたので良ければ、[体験談あり]毎日継続のコツや要因を自己分析してみました♪習慣化できる人とはを参考にしてみて下さいね♪

Macの初期設定

パソコンで長時間作業していくと思いますが、

  • 目に優しい
  • 外でも音が出ない

設定にしておきましょう♪[Mac]おすすめの初期設定♪クリエイターが買ったらすぐ行う設定を共有します♪また、パソコンにはアプリケーションを減らしてインストールしておくと良いです♪[Mac]おすすめのアプリケーション♪webデザイナーがDLする神アプリを紹介で解説しています♪

まとめ:プログラミングで挫折しないために

いかがだったでしょうか?

とにかく挫折しないためには、

  • 慣れる
  • 細かい文法より物を作ってみる
  • エラーを細かく分けて考える

ことが必要です♪問題を小さく分割して原因を探り検証する思考は、実際にエンジニアになってから働くことになっても役に立つでしょう♪

何かわからないことや疑問がありましたら、是非コメントにてお知らせくださいね♪

浅山
浅山

twitterでもお気軽に問い合わせくださいね♪

@akisara_asayama

それでは♪

コメント

タイトルとURLをコピーしました