「プログラミングは誰でもできる」「プログラミングで年収1000万円」なんていうふれ込みをたくさんみましたが実際はそんなに簡単なものではありません。
もし本当にだれでもできるなら時給1300円がいいところではないでしょうか。
今回はプログラミングをこれから学ぼうという方に知っておいてほしい認識と向き合わざるを得ない現実について今もぎりぎりプログラミングを続けている私が一つづつ紹介していきます。
※ この記事は「これからプログラミングを始めようとしている方」や「独学に不安を感じている方」にプログラミングの現実を知ってもらうことを目的に作成しております。
プログラミングは誰でもできるはほぼ嘘
プログラミングを始めるのに特別な資格がいるわけでもないし誰でも始められますが1年後には90%以上の人がプログラミングから離れているという現実があります。
つまり「プログラミングは誰でも始められる」が正しい表現ではないでしょうか。
誰でも達成できることと選ばれし者しか達成できない領域
誰でも達成できる領域
個人開発者
私はここに該当します。
きちんと学習すればここには誰でも到達できます。年齢が高くても、学歴が低くても関係ありません。
諦めずに続ければ必ず達成できます。
選ばれし者しか到達できない領域
職業エンジニア
受託企業にしろ自社開発企業にしろ事業会社のエンジニアにしろここは企業との縁がなければ実現できません。
その企業に就職したいという強い意志と就職活動をしっかり行う忍耐力が必要になります。
最初の挫折ポイント | 環境構築ができない
最初にwebアプリケーションを作るための環境を自分のパソコンの中に構築するのですがその難易度がなかなかに高くここで挫折してしまう初学者もかなり多いです。

ここは正直スクールで学んだ方が楽です。ネットにも情報はありますがこれらを初学者が理解しながら進めるのは正直かなりきついです。







初めての環境構築を成功させるのに3ヶ月かかりました。
もう無理なのではと何度も思いましたがどうしても形にしたかったためなんとか達成しました。
実装中にやってくる挫折ポイント | 意味不明なエラー
「慣れてくると多分この辺でエラーが起きてそう」などの予想がつきますが初学者のころは「この世の終わり」のような感覚に陥ります。
最近はチャットGPTなどのAIが発達し、数年前に比べ格段にエラー解決しやすくなってきましたがそれでも初学者には難易度が高い挫折ポイントの一つです。







イライラしてきたら思い切ってその日はやめましょう。
寝て起きたら一瞬で解決ということを何度も経験しております。
アプリ完成後にやってくる挫折ポイント | インターネット上に公開できない
やっとの思いで完成させたのにそのwebアプリを公開できない。
私は「ふざけんな!ここまで来たんだから絶対出したる!」という気持ちで乗り越えました。




性格が悪い方が挫折率は低いのかもしれません。



プログラミングにおいて挫折は当たり前であることを知っておく【最重要】
「自分には無理」
「もうやめて楽になりたい」
ということを感じる日が必ず来ます。
そんなときは「挫折を経験したことのない人はいない」ということを思い出してください。
(もしかしたらいるかもしれないけど私は出会ったことがありません。)




私はすでに何百回も挫折と復活を繰り返しております。
プログラミングに文系・理数系は関係ない
「よく理数系じゃないから無理だ」
ということを聞きますが正直関係ないと思います。
プログラミングはデータの送受信などもありますが基本的には英語などの言語習得の要素の方がずっと大きいからです。
例えば英語がアメリカやイギリスの人たちと会話するための言語だとするとプログラミングはコンピューターと会話するための言語といっていいでしょう。
例えばこんなイメージです。
| 日本語 | 英語 | Ruby(プログラミング言語の一つ) |
| 画面にAと表示して | Display “A” on the screen | puts “A” |




簡単に言うと「やりたいことをプログラミング言語に変換してるだけ」なんですよね。




ただここに関係してくるデータや連動するツールが複雑に絡み合うから難しくなる。ということです。
足りないのは経験だけ
最初はわけがわからないです。
しかし続けていくうちに理解の点と点が徐々に繋がっていきます。
「エラーが解決できない」「思っているように動作しない」などはいつまで経っても辛いですが力は必ずついていきます。
力がついてくると辛いは辛いですが「解決できないことはない」という思考に変わってくるのでそこまでは頑張ってほしいです。
以下に成長速度を表す図を配置しておきます。



✅ 約100時間の取り組みで基本がわかり・初心者を脱する
✅ 1000時間を超えると実務レベル・中級者レベル
✅ 10000時間を超えるとプロ・一流レベル
になるという「成長の目安」としてよく使われています。




私も新しいことを始める時は常にこれを意識しています。
どうせできる
今まで解決できなかった問題はありません。
どうしても形にできなくて設計ごと変えたこともありますがそれでいいのです。
大事なのは「目的を達成すること」ですから。
ほぼ毎日エラーや不具合でイライラしていますが続けていればどうせできます。




焦らずいきましょう。
諦めたら未来は変わらない
昔スラムダンクという漫画で「諦めたら試合終了」というセリフがありましたがそれと同じような意味です。
「諦めたら今と同じ場所にとどまる」という結果が残ります。
私はそれだけは絶対に嫌だったので頑張れました。




強烈なマイナスエネルギーは時にとてつもない力を与えてくれます。
絶対に離れたいなら頑張れますよね?
実装よりも設計や仕様変更、エラー解決に時間がかかる
実際にコードを書いている時間よりもどう設計するかや使用変更、また仕様変更に伴うエラーを解決するために使う時間の方が圧倒的に長いです。




「こんなところで詰まってる場合じゃないのに」とよく思っていましたし今も思っていますがそういうものです。
効率アップと実力が上がる学習方法
処理の流れをその都度理解する
「動いたからいいや」で放置するのではなくどうしてそういう挙動をしたのかをその都度理解しておくと上達が早いです。
一度しっかり理解しておけば次に実装するときは必ずできます。
相談できる人がいるなら相談する
私はHSP気質なところがありなかなかうまく心を開けないので基本的に一人で解決していますが相談しながらやっている方の方が私より圧倒的に上達が早かったです。




できるだけ人に頼ろう



まとめ : どこまで行っても辛い
現時点で私がわかっていることをまとめると
✅ 解決できない問題はないが解決に取り組んでいる時間は辛い
✅ 実装よりも設計や仕様変更、エラー解決に時間を取られる
✅ 誰もが必ず一度は挫折する
これだけ知っておくと挫折する確率はかなり下げられると思っています。
最後までお読みいただきありがとうございました。
補足 | プログラミング初心者におすすめのプログラミングスクール
「プログラミングスクールを検討しているけど、どこがいいのかわからない」という方には「習得できる技術の総量が圧倒的に多く挫折防止に力を入れている」RUNTEQをおすすめします。







残念ながら、プログラミングスクールの中には、カリキュラムの内容と価格が見合っていない(高額すぎる)ところが少なくありません。
RUNTEQをやりきるとこんなものが作れるようになります
私が「空いた時間で手軽に英語学習ができたらいいな」と思い作った英会話練習アプリです。
RUNTEQを卒業するころにはこのくらいのアプリは問題なく作れるようになります。



▷ 関連記事はこちらもおすすめ







