プログラミング初心者だった私が挫折した4つの問題とやってはいけない学習方法5選

もう無理...

環境構築が進まない…エラーも解決できない…もう何日も何も進んでいない…ようやく完成させたけど公開できない…

「独学でプログラミングを習得するのは無理なのかな」「自分には向いていないのかな」

そう感じている方も少なくないはず。

しかし諦めてしまっては今と同じ場所にとどまり続けるという結果になってしまいます。

そこで、常に「自分には無理かも」と感じながらも乗り越え続け、プログラミングを習得した私が過去に挫折した4つの問題とやってはいけない学習方法5つについて細かくお伝えします。

✅この記事でわかること
  • プログラミングを習得できるかどうかは 熱量 × 環境 × 経験値であること
  • やってはいけない学習をしてしまうと学習効率が格段に下がってしまうこと
目次

独学のころ挫折した4つの原因

挫折原因①:環境構築ができなかった

環境構築の記録
無理やり進んでいる感じを記録していたノート
(2021年はじめての環境構築)
筆者の最初の環境構築

お金をかけずに運用できる方法を探し、VirtualBoxというツールを使ってWindowsの中にLinux(CentOS7)を入れるという方法にたどり着くも一向に進まない。

どうやって乗り越えた?

✔️ 結局は根性

分からないながらもQiitaやZenn、YouTubeやUdemyなどで調べ続けた結果、徐々に自分なりの仮説を立てられるようになり一つづつ試すこと3か月。ようやくすべての仮説が当たり環境構築が完了しました。

環境構築で苦しんでいる方へ

✔️ 今はChatGPTなどのAIもあるので疑問に思ったことはどんどん聞いてください。

例 : 「あなたはプロのエンジニアです。以下のように実行したのですが〇〇となりうまくいきません。どこに原因があると思いますか?」などと質問すると考えられる原因を提示してくれます。

※AIの回答は間違っていることもあるので自分の頭で検証しながら進めていきましょう。
(これがハルシネーションと呼ばれる現象です)

私のほうでも初心者向けの環境構築のマニュアル記事を作成しておりますのでぜひ参考にしてみてください。

挫折原因②:エラーが読めない・解決できない

エラーの画面
エラーが出た瞬間の画面
当時の心境と行動の結果

「なんでもいいから先に進みたい」と思い、エラー文をそのまま検索して出てきたそれっぽいコードを試すもどんどん収集がつかなくなりさらに自暴自棄…

※考えることを放棄して誰かの作った答えをそのまま使おうとしてもうまくいかない

どうやって乗り越えた?

✔️ 結局は根性

アプリごとすべて削除し最初から作り直しました。

まずはエラーの意味を徹底的に理解し、エラーの原因と対処法の仮説を立てるようにしたところ徐々に仮説の精度が上がっていきエラー解決にかかる時間が短くなっていきました。

エラーで苦しんでいる方へ

✔️ エラーの意味を把握して原因と対処法の仮説精度を上げていく以外に方法はありません。

エラーが表示された瞬間うんざりしますし、「エラーは原因を教えてくれている」と言われても進行を止められるのはやっぱり嫌なものです。

仮説を立てて解決していくことを繰り返すうちに仮説を立てるスピード・精度ともに上がっていきますので気持ちを落ち着かせながら自分なりの仮説を一つづつ試していってください。

挫折原因③:何も進まない日が続く

2か月何もすすまなかった時のノート
筆者の体験

環境構築だけで3か月、そのうち2か月以上何も進まない日々が続きました。仮説を立て実行すると動作しなくなり最初からやり直す日々

どうやって乗り越えた?

✔️ 忍耐と根性と熱量

なんとしてもアプリを完成させたかったため「動かないことに絶望 ‣ 気持ちを整える ‣ 仮説 ‣ 検証」を繰り返し「バージョンの違いで動作しないのでは」という仮説が当たり乗り越えました。

VSCodeとmySQLのバージョンが原因でした。

何も進まず絶望している方へ

✔️ それでも諦めず続けましょう。誰かに聞ける環境にいるなら助けをもとめてください。

嫌な表現ですが、経験の乏しい人が一人でもんもんと悩むより経験豊富な人が見た方がずっと解決が早いです。

そしてここが独学とスクールの最大の差です。環境構築まで対応しているスクールにいるなら「現状をしっかりまとめて」先駆者に助けを求めてください。

おすすめのプログラミングスクール

RUNTEQ : 独学後私が受講したスクール。カリキュラムをやりきるだけでアプリケーションの企画、設計、環境構築、実装、バージョン管理、デプロイ(インターネット上に公開すること)まで習得できる。また質問できる環境が整っているなどの特徴があります。

RUNTEQについては以下の記事で細かく説明していますのでぜひ参考にしてみてください。

★友達紹介用★超実践型オンラインプログラミングスクール【RUNTEQ(ランテック)】

挫折原因④:完成したアプリを公開できない

筆者の体験と当時の心境

やっと完成したアプリを公開するも画像のようなエラーが出て正しく表示できない…

ここまで来てまたしても…

デプロイ失敗
どうやって乗り越えた?

✔️ 執念

なんとしてもアプリを完成させたかったのでまずは本番環境でもエラー文が表示されるように設定を変更した後、「仮説 ‣ 検証」を繰り返すことで正しく表示させることに成功しました。

データベースのURLの設定にexternal URLを指定していたことが原因でした。

デプロイできずに苦しんでいる方へ

まずは本番環境でもエラー文が表示されるように設定を変更しその後、以下の点を確認してみてください。

  • データベースのマイグレーションは実行済みか
  • CSSやJavaScriptのコンパイルはうまくいっているか
  • 画像や音声ファイルは適切な場所に保存されているか

挫折を乗り越える考え方 | これだけは知っておこう

つづいて私がプログラミング学習中に陥ったネガティブ思考から見つけたシンプルだけど大切なことを紹介します。

あなたに足りないのは経験だけ

「同時期に始めたのになんでこの人こんなにできるの?それに比べて私は…」と思うことが少なくなかったですが、その人たちは例外なく過去に経験を積んでいました。

つまり当時の私や今このページを見てくれているあなたに足りないのは経験だけなのです。

よく言われていることですが過去の自分よりちょっとでもできるようになっていればそれでOK!

できるようになっていなくても続けていればそれでOK!

気楽にいきましょう😄

⌛「時間効率」は捨てる

短時間でこなそうなんて思っていたらそれは考えが甘いです。

私も時間をかなり気にしていましたが、いきなり短時間で効率よくやるなんてそもそも無理です。

プログラミングは、間違え、うまくいかないことを乗り越えながら学ぶものです。

大事なのは今短時間でこなすことではなく、将来的に短時間でこなせる力をつけること。

ひとつひとつ丁寧に、仮説 ▸ 実行 ▸ 修正のサイクルを回すことで、少しずつ力がついていきます。間違っていても後々気が付くので、その時出せる自分なりの答えをしっかり出すようにしましょう。

諦めたら未来は変わらない

ちょっときつい言い方ですが「諦めたら今と同じ場所にとどまる」という結果が残るだけ。

未来を変えたくてプログラミングを学んでいる方が大半だと思います。

「まだ未来を追うのか。諦めて現状にとどまるのか。それとも違う未来を追うのか」

こことしっかり向き合ってください。

プログラミングだけが人生ではないし、他の道を追うのも全然あり。

ただ現状に不満があって学習を始めたのなら現状にとどまるという選択はおすすめしません。

一時的にとどまるのはありだけど、きっとまた割り切れなくなる日がやってきます。

やってはいけないプログラミング学習方法5選

ここからは私が過去にやってしまった効率が悪く挫折に繋がりかねない学習時の行動を紹介します。

やってはいけない学習方法① : メモやノートを取りすぎた

とりすぎた手書きメモ

タグやコードの動作など、疑問に思ったことや覚えておきたいことを詳細に手書きしすぎた。

なぜダメか?

時間がかかるわりに結局忘れてしまいます。そして同じ問題が起きた時にそのメモやノートを探すのも一苦労。
効率が悪すぎました。

何をメモしたかも忘れてしまい、結局ほとんど見返すことはありませんでした。

どうすればいい?

✅ 参考にしたサイトのURLや失敗した原因と対処法をNotionなどのメモツールに記録しておくことが一番効率が良い。

サイトに直接アクセスできるのも大きなメリット。解決した方法をQiitaなどに技術記事として投稿すると記憶が定着しやすいのでおすすめです。

※手書きは処理の流れや考えをまとめる時に行いましょう。

やってはいけない学習方法② : コミュニティに参加しなかった

young people programming

RUNTEQを受講していたころ、「自分は転職希望ではないし…」となんだか気が引けて、前半はほとんどコミュニティに参加しませんでした。

なぜダメか?

情報交換やモチベーションの維持、仲良くなるチャンスを逃してしまいます。

気軽な相談の場があるのに使わないのはもったいない。知識や世界が広がっていきません。

どうすればいい?

✅ 話題についていけそうにない時は「聞き専」でOK! ちょっとした雑談や共感コメントだけでも世界が広がっていきます。

ついていけない話題の時は静かにしていればいいし、ただ聞いているだけでも気晴らしになるし、単純に仲良くなれる。
「自分なんか…」とか思わずにどんどんコミュニティに参加した方が挫折しにくいですよ。

やってはいけない学習方法③ : 相談せずに一人で抱え込んだ

「説明するのがめんどくさい」「相談したところで解決はしないでしょ」などと思い、ひたすら一人でググっては解決できず無力感を感じ、気持ちを整えて再びググるということを繰り返しました。

なぜダメか?

起きている問題を他者にしっかり説明できるようにならないとエンジニアとしてやっていけない

答えが見つからない時間が長引くほど精神的にもきつくなります。

どうすればいい?

✅ 「どこまでは正常に動いていて、何をしたときにどういう問題が発生したのか」をしっかりまとめて、学習仲間や講師に相談する。

言語化してまとめるだけでも思考の整理とレベルアップにつながります。

他の受講生の問題に取り組み自分の問題以上に解決したい気持ちになった時に相談することは相手にとって迷惑という考えが間違いであったと気づきました。

やってはいけない学習方法④ : 自分の殻に閉じこもった

あまり関わって迷惑になってもいけないし、などと思い、卒業間近まで一人で学習をしていました。

なぜダメか?

自分では見えていない問題の解決方法や学びのチャンスを逃してしまいます

周りの現在地がはっきり見えないため、自分が他者より劣っている感覚に襲われます。

どうすればいい?

✅ 相手の負担になってはいけないと考えるより、本音や苦手な部分を出して、距離を縮めていきましょう。

精神的に楽になりましたし、単純に楽しくなりました。

やってはいけない学習方法⑤ : 自分なりの答えを出さなかった

the-risk-of-not-answering

参考にしたサイトやAIの答えでたまたま解決できた際、「時間がないから」で済ませてしまって、後日同じような問題につまずき自暴自棄

なぜダメか?

仕組みを理解していないため、再び同じ問題につまづきます。力や自信もつかない

これ、前もあったのになんでできないの…

どうすればいい?

✅ 解決できた時こそ学習のチャンス。解決した理由を調べて、自分なりの答えを出す。

記事にまとめるなどすると記憶が定着します。

間違っていてもいいので(後々気づく)その時出せる自分なりの答えを出すようにすると力がついていきます。

まとめ : 孤独に陥らず、成長を加速させよう

プログラミング学習で大切なこと
  • 手書きメモは取りすぎない
  • 少しづつでも自分の殻から出る
  • 相談を恐れず同じ境遇にいる仲間と繋がる
  • 常に自分なりの答えを出し続ける

これらを意識すると学習効率が爆発的に向上します。

なりたい未来を設定し、挫折しにくい環境に身を置き、成功体験を積み重ねてプログラミングを習得しましょう。

なりたい未来を設定したら、後は投げ出さない。

これだけで未来は変えられます。頑張っていきましょう。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

愛知出身。パソコンの作成・修理、プログラミングを経て、現在はWEBアプリケーションを作成する手順や学習方法、「困っているけど聞いたらめんどくさがられるので聞きにくい」と感じているシニアやIT初心者の困りごとを解決するコンテンツを作成しています。
苦手なものはめんどくさい人と過剰な広告

目次