プログラミング学習を頑張っている、頑張ろうとしているあなたへ?
なんとプログラミング学習は9割以上の人が挫折するようです。
まじかよ・・・。
でも私は、9割も挫折者がいるのはプログラミングが難しいというより、
挫折のポイント、解決策があまり広まっていないからなのかなと思っています。
テキストや授業が難しい、エラーばかりで時間が浪費される、全部理解するなんって無理!!など
プログラミングを習い始めた最初は色々なネガティブな気持ちを覚えるでしょう。
この記事ではプログラミング初心者が挫折しやすい3つのポイントについて、
解決策とともにお伝えしたいと思います。
挫折しやすい3つのポイント
1. サイト、本、動画など教材をみても理解できない
2. エラーが解決できない
3. モチベーションが続かない
挫折しやすい各ポイントの解決策
プログラミング勉強サイト、本、動画など教材をみても理解できない
解決策1 教材に載っているサンプルコードを書いて動かしてみる
頑張って理解しようと思わず、
とりあえず書き方を覚えると思って教材のサンプルコードを書いて動かしてみましょう。
覚えるというのは暗記というよりこういう書き方なのか〜くらいです。
例えば英語を学ぶときにありがとうはThank youですが、
なんでThank youなのかは最初から理解する必要はないでしょう。
ありがとうが英語でThank youということがわかれば問題ありません。
サンプルコードを書くときはなるべく短いコードから書いてみることをお勧めします。
コードを書くときはスペルミスやカッコ忘れなどケアレスミスがつきものです。
コード量が多いければ多いほど、ケアレスミスの箇所も増え、
学習項目以外の理由で動かなくなる可能性が高いです。
まずは短いサンプルコードを実行するということを目標に進めていくとをおすすめします。
サンプルコードがうまくうごかない場合、
教材が理解できないというよりかは、プログラムを書くのに慣れていないのかもしれません。
初めてプログラミングを学習するならなおさらプログラムを書くのに慣れるのには時間がかかります。
教材と同じコード書いてるはずなのに動かない!!これも日常茶飯事です。
少しでも違うの動かないのがプログラミングですからね・・・。
是非教材のサンプルコードを動かして、
トライアンドエラーで動くプログラミングコードを書く練習をしてみてください。
”習うより慣れろ” プログラミング学習にも当てはまりますね。
一単元ずつじっくり学習&練習していく
プログラミング言語の教材は分厚いですよね。
プログラミングの教材は分厚くて内容も盛り沢山です大学等でも1年間かけて習うような内容が載っています。
1単元ずつ焦らずに、
まずは教材に載っているサンプルコードを書いてみて、
少し内容をアレンジして書いてみるを繰り返すことをお勧めします。
特にプログラミング教材の初めの方に出てくる単元は、
どんなプログラムを書くのにも使うプログラムの書き方が載っています。
例えば変数の書き方、足し算引き算といった四則計算やif文、for文、配列といったところでしょうか。
学習が進んでくると
DBに接続して値を取ってくることがあります。
その際、DBにつながっているかどうか確認したり、
DBの値をとって変数に入れたりと少しややこしいプログラムを書くことになります。
ややこしくは見えますが、
たいていはテキストの前半部分に載っているコードの書き方を使ってプログラムを書くことになります。
初めの方に出てくる項目を難なく書けるようになれば、後半部分のややこしい単元の理解にも大いに役立ちます。
手を動すのを繰り返しているときっとああこういうもんなんだとわかる時がくると思います。
急いで先に先に進もうとするとサンプルのプログラミングのコード量も増えてきて大変です。
まずはプログラミングコード量も少ない教材の前半を重点的にコードを書いて動かしてみることをおすすめします
エラーが解決できない 、エラーが消えない
解決策 エラーが出ないところまで戻る
調べようと思うほど詰まってしまったのであれば、問題点を見つけるのにも時間がかかるのではと思います。
せっかくここまで書いたのにという気持ちもわからなくはないですが、
見つけにくいものなのでいったん消して再チャレンジしてみると良いと思います。
せっかく書いたコードがもったいないと思うようでしたら、
どこか別ファイル等に保存しておくと良いと思います。
解決策2 Googleで検索
サンプルを使って説明します。
例えばPHPのコードで;(セミコロン)を忘れた場合です。
2行目の最後に;セミコロンが抜けています。
このPHPを実行すると
php -d display_errors=1 test.php
下記のエラーが出ます。
Parse error: syntax error, unexpected ‘echo’ (T_ECHO) in /Users/XXXXXXX/test.php on line 3
エラー文の見方もついでに説明していきます
エラー文の下線が引いてある部分が何のエラーかを説明しています。
①パールピンクの下線部分にはエラーの内容が書いてあります。
Parse error: syntax error, unexpected ‘echo’ (T_ECHO)
echo実行する際にシンタックスエラー(文法エラー)で実行できない!!と言っています。
②黄色の架線部分には問題のファイル名が書かれています。
/Users/XXXXXXX/test.php
③緑の下線部分には問題が起きた行数が書かれています。
line 3
3行目と書かれていますが実際はその前の行に問題があることが多いです。
さえている時はこのエラーを見ただけでセミコロンが抜けている!と気づくでしょうが、
わからない時はGoogleで検索してみることをおすすめします。
①の部分
Parse error: syntax error, unexpected ‘echo’ (T_ECHO) をGoogleの検索ボックスに入れてみます。
Parse error: syntax error, unexpected ‘echo’ (T_ECHO) でGoogle検索した結果です。
検索結果画面を見てみるとどうやら2つ目のこの内容に答えがありそうです。
2017/09/07 — [PHP Parse error: syntax error, unexpected ‘echo‘ (T_ECHO)] というエラーが出るのですが、このエラーは大体前のコードの;がないという事例が多い …
この部分ですね。
大体前のコードの;がないという事例が多い
先程のコードのechoの前の文、
2行目の最後に;セミコロンをつけて解決です♪
アドバイス
トラブル解決のために開発するエディタに行数を表示させておくことをおすすめします!!
解決策3 コードとエラー内容をキャプチャーで貼って質問サイトteratail(https://teratail.com/)などへ投稿
もう何が何だかわからないという状態でしたら、
質問サイトに投稿してみましょう。
うまく質問をしようと思わずに、
コードと画面の状態をキャプチャーして画像で貼ると良いです。
※ただし画像には、
あなたの名前や業務上インターネットに出すのが望ましくない情報が含まれていることがありますので、
画像を確認し問題ありそうでしたら画像を編集し見えないようにしてから公開してください。
質問する時はこんな初歩的な質問して恥ずかしい!!なんって思わないでください。
誰もが通る道を今あなたが通っているだけなのです。 あなたの質問で他のたくさんの人も救われます。
質問するときはドキドキしますが、
緊張した分他の人の何倍もスキルアップにつながるよい経験ができると思います!!
質問する時は、回答者のことを思い
- 何をしようとしていたか
- 言語
- バージョン
- コード
- エラー内容
を伝えると回答の助けになります。
質問例
何をしようとしていたか ・・・ PHPで教材を写して実行しようとしていた
言語 ・・・ PHP
バージョン ・・・ 7.4
コード ・・・
<?php
$test = "test"
echo $test;
?>
エラー内容 ・・・ Parse error: syntax error, unexpected ‘echo’ (T_ECHO)
私も会社でプログラミング覚えたての時は起こっていることが説明できず、
隣の席の先輩に画面差し出して目で困ってると合図して解決策を教えてもらってました・・w
もし情報が不足しているときは質問の回答者がこれも教えてくださいと言ってくると思うので追加で情報を渡しましょう。
エンジニアの人は、人に教えるのが好きな人が多いのできっと答えてくれるはずです!!
3. モチベーションが続かない
何を学ぶ時もそうですが、モチベーションの維持は本当に難しい問題ですね・・。
石の上にも3年と言いますが、少し続けてみないとなかなか手応えは得られないものです。
モチベーションが下がって勉強が続かないと思ったときに
少し自分について振り返ってみることで再びモチベーションが戻ってくることがあります!!
解決策 次のアクションを決める
モチベーションが下がってプログラミングの学習が手につかなくなっている時は、
きっと次に何をすれば良いかが見えなくなっているのだと思われます。
色々やらないといけないはずけど、何をやればいいかわからない、
これやっても意味あるのかな、意味なさそうな気がする、
授業がわからないからどうしていいかわからない、
などネガティブな気持ちになっていないでしょうか?
プログラミングを学んでいる人のパターンに分けて解決策を書いてみます。
授業や研修でプログラミングを学んでいる人へ
ちょっと授業に置いて行かれて挫折しそう!っていう方を想定しています。
ドットインストールなど動画&無料でプログラミングを学習できるサイトがあります。
一コマも短く、細分化されているのでわからない単元をメインに動画を見て学習してみてはいかがでしょうか。
その他Udemyなど有料ですがセール時は1000円台から動画を購入&視聴できるサイトがあります。
動画教材を使ってじっくり理解を深めてみてはいかがでしょうか。
その時も聞いているだけではなく、教材のコードを自分で書いて実行してみることをおすすめします!
プログラミングができない要因は、プログラミングに慣れていないことが大半です。
その状態でテキストを先に進んでも楽しくはありません。
ぜひ自分でコードを書いてみてトライアンドエラーをしてみましょう!!
プログラミングで稼ぎたい人へ
例えばプログラミングで稼ぎたいというのがきっかけの人は副業やフリーランス、
転職サイトに登録して仕事内容を確認し、
自分に足りないものを探してみてください。
もし足りないものがよくわからないようでしたら気になる案件に応募してみると良いかなと思います。
スクールや教材等で学習していくのもいいですがプログラミングスキルの有無より、
実務経験の有無が採用判断には大きく関わってきます。
仕事を始めると、実務を通じて得られるものは大きいですし、自分とのギャップもよく見えてきます。
勇気を出して実案件に応募してみるというのも一つの手ではないでしょうか。
興味でプログラミングを始めたいと思った人へ
興味でプログラミングを学んでみたいと思った方は、
作りたいアプリを決めて実際作ってみるのが良いでしょう。
どうやって作ればいいかを調べているうちに次に勉強したいものも見えてくるはずです。
業務を効率化したいと思った人へ
VBA等で業務効率化をしたいと思った方は実際VBAでプログラムを書いてみると良いと思います。
Excel開いてVBAの編集画面を開くだけでも大進歩です。
簡単なコードでも業務は効率化できます!!
コードを勉強しながらこんなことに使えそうという想像を膨らませてみてみましょう。
終わりに
プログラミング学習は難しくそして特別なものととらえられているようですが、
壁を乗り越えていけば徐々にできるようになるものだと思っています。
ぜひこのブログ記事であげたようにこの3点に取り組みプログラミングの壁を乗り越えてみてください!!
- コードを書いてプログラミングに慣れる
- わからない時はエラーで検索または質問サイトに投稿する
- やめようと思ったらプログラミングを始めたきっかけを思い出し次のアクションを決める