初心者時代、プログラミング独学に挫折したぼくが正しい勉強法やおすすめサイト、本まとめとく

公開日: : 最終更新日:2018/06/26 WEBサービス, プログラミングの勉強サイト

このエントリーをはてなブックマークに追加

どうも。ネットベンチャー勤務時代、プログラマーとして消耗していたタクスズキです。

今回は、ぼくがプログラミング学習で挫折して学んだ経験談を書きます

これからプログラマーを目指そうと思っている方は参考にしてみてください。

結論を先に書いておくと、独学はしんどいので、プログラミングスクールに通いましょう。(講座料の価値あります。ぼくも有料でプロに習いました)

今だと、「侍エンジニア塾」でプログラミングを無料体験できるので、まずそちらを先に使っておくといいです

スクリーンショット 2018-06-26 11.21.04
(家にいながらネット経由で学べます。実績として7000名が無料体験中)

プログラミングとは?

ではまず、そもそもの話から。

プログラミングとは、機械(PC)に特定の処理を実行させる指示書を書くことです。

人間も、バイトなどをやる前、マニュアルを読まされて行動を指示(指定)されますよね。それのPC版です

その指示書は、プログラム(コード)と呼ばれます。

スクリーンショット 2018 04 07 12 09 07
(プログラム[コード]の一例)

こういった指示書を書くことで、SNS、アプリ、ゲームを作れるのです。

スポンサーリンク

プログラミングで独学したら挫折したよ

そしてフリーター時代、このプログラミングに興味を持ち、独学を始めたんですが、まもなくして挫折しましたw

その理由は、プログラミング学習には挫折ポイントがたくさんあるからです。

では、それらをこれからまとめていきます。

>>プログラミングとは?入門者向けに勉強のやり方、無料アプリなどまとめとく

スポンサーリンク

初心者の挫折ポイントまとめ

1.何から学べばいいかわからない(まずHTML?)

まずこれ。

プログラミングの世界は奥が深く、言語の種類もめちゃくちゃあります。

いま思いついたものだけでも、C言語、Java、C+、Objective-C、Swift、JavaScript、Ruby、PHP、Python、R言語など色々あります。

この中から、何を学べばいいか理解するのは初心者には無理なんですね。

(プログラミング前段階のHTML、CSSも理解しないといけないので、余計こんがらがります)

2.どの本を読んだらいいかわからない

仮に学ぶべき言語を理解したとしても、言語を学ぶための入門書の選定でも迷うわけです。

アマゾンを見たり、本屋の書籍コーナーに行ったりするとわかりますが、1つの言語の本に対してかなりの数の学習本があるのです。

それらの中から、初心者が厳選して良書を選ぶのは無理です。

こんな感じで、参考書選びでも挫折ポイントがあるんですよ。

3.本の専門用語が多すぎて理解が進まない

いざ本を読み始めても、挫折ポイントがあります。

それは本の難解さ。専門用語がめっちゃ出てきて、都度つまづくのです。

(オブジェクト指向とか、型とかなんだよ!とキレたくなります)

がんばって用語を調べても、用語を解説してるサイトでも専門用語が使われており、一向にその意味を理解できないこともあります

これはマジでこれは地獄でした。

4.サンプルコードを書いてみてもエラーがでる

理解不能ながら読み進めて、サンプルコードなるものを見つけその通りに書いてみても、エラーが出ることもありました。

その場合、解消するために、エラーメッセージでググって質問サイトなどを巡回するわけですが、

初心者のうちは書いてあることがさっぱりわからず、一向にエラーが解消されないのです。

5.エラー解消にめっちゃ時間がかかる

こんな感じで、エラー解消に励んでも、初心者にはどうすることもできず、ただ時間を浪費してしまいます。

プログラミング中級者、上級者からしたら、すぐ解決するような問題でも初心者にはその何倍も時間がかかるのです。

また、プログラミングは「”」と「’」のような細かいタイプミスでもエラーがでます。

そんな感じで、しょうもない原因のエラー解決にも時間がかかって、泣きそうになることもありました

6.1番詳しい質問サイトが英語

プログラミングのエラー解消の際(エラーメッセージでググると)、だいたい上の方に「Stack Overflow」というQ&Aサイトがでてきます。

これは質問数も回答数も多く、参考になるのですが、すべて英語なんですよね。

なので、グーグル翻訳などをかけつつ、問題の対処にあたらなければならないのです。

これもかなりしんどかったですね。

7.質問サイトで解決しないエラーがたくさんある

Stack OverflowなどのQ&Aサイトに解決したいエラーの質問があったとしても、その通りにやって解決するわけではありません

(構築)環境の違いなどで、自分はその通りにならない場合があるんですよ

こうなったら、もうお手上げです。(諦めるしかないですw)

8.同士がいないのでモチベーションが続かない

独学だと、1人でやるため、モチベーション維持も難しいです。

塾とかサロンだと仲間がいるので、「自分も頑張ろう」となりますが、独学は孤独な作業なので、気持ちが切れやすいです。

実際、ぼくは何度も学習を投げ出してましたw

こんな感じで、独学ゆえの悩みも出てくるのです。

9.かなりムダな時間を過ごしていることに気づき、むなしくなる

学習本(参考書)に書いてある内容がわからず、コードを書いてもエラーだらけで、その解消も難しく、、、

という状態が続くと、ある時「俺はなんてムダな時間を過ごしてるんだ」と”三井寿”状態に陥ります

こんな感じで、一人で学んでおいて、勝手にへこむなんてことも体験することになります。

10.フィードバックがないため、自分のやり方が正しいかわからない

一人でコードを書いていると、エラーが出ずに動いてはいても、書き方がよろしくない場合がります。

(エンジニア時代は、Gitを使ってよくコードレビューしてもらって、改善点を教えてもらっていました)

そうやってよくない書き方を続けていくと、変な癖がついてスキル向上につながりにくくなります

このように、独学だと、よくない学び方をしてしまうこともあるのです。(添削者必要!

挫折しないために使うべきサービス

こんな感じで、独学だと弊害がたくさんあることに気づき、ぼくは独学をやめました。

そして、当時お会いした方に教えてもらったプログラミング講座(有料)に参加することにしました

当時のぼくはフリーターでお金を出すのをためらいましたが、「このままじゃラチがあかない」ということで投資を決意。

ついに誰かの元で学ぶことになったのです。

有料の講座に参加してマジでよかった

結論から言うと、プログラミング講座はめちゃくちゃよかったです。

おかげで、学習効率が何十倍にもなりましたし、理解も進み、簡単な診断系サービスを作れるようになりました

こうした経験をして、学びに投資すること、プロが開催する講座に参加することはプログラミング学習で必須とわかりました。

失敗してわかったプログラミング学習の正しいやり方

というわけで、失敗してわかったプログラミングの正しい学び方をまとめておきます。

・作りたいサービスを決める(これがモチベーションになる)

・クライアント・サーバーの簡単な関係性を知る(ググるだけでOK)

ドットインストールでHTML、CSSを学ぶ(これを学ばないと何も始まらない)

・実際にプログラミング言語を学習し始める

初心者の言語はPHPがオススメ。学びやすいので(逆にC言語、Javaから入ると絶対挫折する。メモリ管理とかムズイのです)

まず1冊入門書を読んでサンプルコード書きつつ、ざっくり理解する(「よくわかるPHPの教科書」がおすすめ)

・そしたら、作りたいサービスを完成させるために、講座に通う

こんな感じですね。

今ならネットでもプログラミングが学べる

「講座に通う」ですが、僕の時代(2012年)は東京のセミナールームのような場所で開催されており、物理的な制限がありました。

(地方の人は参加しづらかったし、関東住みでも受講できる人は限られていた)

ただ、今であれば、「侍エンジニア塾」のようにネットで学べるプログラミングスクールがあります

ここだと、無料体験でもかなり手厚い待遇が受けられます

プログラミングからの指導で学習効率が高まる

また、現役エンジニアから教えてもらえるという大きなメリットもあるのです。

なので、プログラミング学習に興味ある方は、スクールのサイトをチェックしてみるといいですよ。

無料動画もあり、講座のイメージもできるようになりますので。

プログラミング学習でお世話になったサイト(入門者向け)

以降ではプログラミング学習で役立ったサイトや必要だったツールなどを紹介していきます。

まず役立ったのは、先ほども紹介したQ&Aサイト。

Stack Overflow以外だと、日本語版の「Qiita(キータ)」、「teratail(テラテイル)」があります。

他に役立ったサイト

他だと、以下の記事で紹介してるサイトが役立ったので、参考にしてみてください。

関連記事:短期間でプログラミング言語を学習してWebサービスをつくるための基礎知識と方法まとめ

関連記事:短期間でJavaScriptを習得し、アプリ・Webサービスをつくるための勉強法

>>【短期で】iPhoneアプリとAndroidアプリ開発初心者のための入門書とサイトまとめ

使うと役立つツール(PC、エディタなど、その他の道具)

プログラミングをやるなら、パソコンはMacがいいですね。

ぼくはプログラミングをやるためにMacを買いました。(環境構築がWindowsと比べて圧倒的に楽)

WindowsでもMac環境はつくれますが、作業が面倒なので、Macを用意した方がいいです。

>>フリーター向けのおすすめ職種はIT系アルバイト!20代から正社員就職を目指す

エディタも大事(Sublimeおすすめ)

プログラムを書くためのエディタ(メモ帳の進化版とイメージしてください)は、「Sublime Text」が圧倒的におすすめ。

上級者だと、vimが楽らしいですが、初心者には難しいです。

「Sublime Text」は色分けや、かっことじなどが見やすく、気に入って使ってました

なので、これを使ってコードを書くといいですよ。

プログラミング学習のおすすめ本

おすすめ本は以下の通り。

・たのしいRuby

・Ruby on Rails 5アプリケーションプログラミング

・RailsによるアジャイルWebアプリケーション開発

・リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック

あと、最近は「プログラミングゼミ:低学年から使えるプログラミングアプリ」というものもあり、学習ツールが充実しています

プログラミングはその後の仕事に役立つよ

と、こんな感じでプログラミングを学んでいけます。

今は仕事でプログラミングをほとんど使ってませんが、プログラマー時代に培った考え方は記事執筆に生きています。

役立っているのはオブジェクト思考で、これを学んでいて本当に良かったと今は思っているし、論理的思考も身につきました

なので、ぼくはプログラミングを学ぶことは非常に有益と思っています。

>>気になる方はプログラミング講座の無料体験をどうぞ“"

【追記】基礎を学んだ後、上達のためにやりたいこと

紹介してきた方法でプログラミングの基礎を学んだら、その先に進むために以下のこともやるといいです。

・プログラミングの本質を学べる本を読む
GitHubで良いコードを見て学ぶ

・スキマ時間を使ってアプリでも勉強
・(できれば)1万時間費やしてみる

では、それぞれについて詳しく書いていきます。

プログラミングの本質を学べる本を読む

PHPで基礎を学んだ後、内定先のベンチャーからの以下の本を読むよう指示され読みました。

・Webを支える技術 -HTTP、URI、HTML、そしてREST
・オブジェクト指向でなぜつくるのか

この辺のアプリケーションレイヤー以外の本も読んでおくと、プログラミングへの理解を深められます。

あと、インフラレイヤーの方に行くためにもこの辺の理解は必須ですので、覚えておきましょう。

GitHubで良いコードを見て学ぶ

これも上達には必須ですね。

ライター(物書き)がスキルを上げるために、うまい文章を写経するという方法があるように、きれいな良いコードをみることにも効果があるのです。

ぼくはあまりやってなかったのですが、ぐんぐん成長していく動機とかはちゃんと良いコードを見て勉強してました。

GitHubは無料で見れるので、ひまな時とかに見ておくといいですね。

スキマ時間を使ってアプリでも勉強

空いてる時間をプログラミング学習に当てれば、学習効率は高まります。

ぼくは「CoffeeScript At Once」というアプリでJSを学んでました。

今だと『Progate(プロゲート)』、「codebelle」などのiOS(Android)アプリがあるので、この辺も試してみるといいですね。

(できれば)1万時間費やしてみる

1万時間の法則についてはこちらもどうぞ。

「あくまで目安」だそうですが。

Linuxコマンドも覚えよう

あと、ターミナル(vim)などでのコマンド(CUI用)も覚えておきましょう。

>>vimの操作に便利なコマンド9選

>>開発でよく使うvimコマンド一覧

【こぼれ話】未経験からプログラマーになれた人の話も知っておく

僕同様、未経験でも企業に就職(転職)できた人の事例は以下の記事をどうぞ。

カメラ販売員から独学でプログラマーになった方がいるのです。

>>第二新卒の転職って成功するの?大手に行ける?を求人サイトのエージェントに聞いてきた

>>「社会人2年目、3年目だけど転職できる?」「ブラック企業でエンジニアやってたけど需要ある?」←聞いてきました!

>>未経験でプログラマーになるにはどうすれば?仕事内容や給料はどんな感じ?に答えておく

【関連記事】プログラミングの心構え

以下のことも知っておくといいですね。

>>プログラミング初心者が特定言語でいいコードを書くための心構え7つ

>>これは便利!初心者でも挫折しないプログラミング学習サイト5選

>>【入門】初心者がプログラミングを独学するときに役立つ記事12本

学びをアウトプットしてました

勉強したことはブログにアウトプットすることで、より定着します。

技術ブログ書きましょう。

>>【便利】Rails でのデバッグ方法を知れば開発が楽になる!

>>Ruby on Rails入門者におすすめしたい便利なメソッド7つ【サンプル付き】

>>Railsでログイン、ユーザー登録機能を簡単に実装できるgem「devise」の使い方

エンジニアとして働くことについて(仕事内容、年収など)

>>「IT業界に転職したいけど未経験だ」って人が求人を見る前に知っておくべきこと

>>「プログラミングをやると就職で有利になる」という理由で始めて仕事にすると後悔するよ

>>web系プログラマーを辛い、辞めたいと思って1年で辞めた人間がその理由と当時の生活書いとくよ

プログラミングは転職に有利か?

>>ベンチャー企業ランキングは参考にならないので、経験者として転職したらお得な会社まとめとくわ

>>IT業界求人サイトの「未経験でもプログラマーになれます」は本当なのか?

>>ゲームプログラマーになるにはどうすりゃいい?未経験で就職できた人間が年収などを書いてみる

プログラミングを学ぶメリット

>>年収が高いwebベンチャーにおけるエンジニアの仕事内容がエグすぎる件

>>「プログラミングをやると就職で有利になる」という理由で始めて仕事にすると後悔するよ

>>Webプログラマーになるには独学でもOK?未経験可?←経験者として答えておきます

プログラミングスクールの口コミ、評判

なお、プログラミング学校の受講者は以下のような感想を書いてました。

素人状態でも理解できるようになる

本業のある社会人も参加中

フリーランスとして独立、副業、転職にもOK

>>【0円起業】副業でも一人で、資金なしで始められる仕事(商売)まとめ

>>サラリーマンにおすすめの複業!副業との違いやその種類、求人などをまとめとく

>>【副業】月5万円稼ぐ方法33コ!在宅、ネットで収入を得られる、時間が自由な仕事

仕事やお金で悩む人から人気の記事

【月商600万円!】ブログで稼ぐ方法を公開中

この記事を書いた人のTwitterアカウント

ツイートをまず見てみる>>@TwinTKchan
フォローいただければ、最新記事や、ブログで稼ぐ方法、仮想通貨などの投資で役立つ情報が手に入ります。

ブログ「らふらく」を購読する→follow us in feedly

この記事が気に入ったら
いいね!しよう

最新情報をお届けします

関連記事はこちらからどうぞ!

いつもシェア感謝です!今回もぜひ

このエントリーをはてなブックマークに追加
※ 微妙だったら、そっと閉じるか、ほかの記事を見ていただけるとうれしいです!
SNSでも自分の得意なことで収入を得る方法を発信しています。フォローすれば更新をチェックできますので、ぜひフォローを。
仕事依頼などのお問い合わせは「iwgp545@yahoo.co.jp」か、「TwitterのDM」、「Facebookのメッセージ」からお願いします。

SNSでフォローしてお金を稼ぐための情報を受け取ろう
ブログで生活しているタクスズキと申します。「好きなことを仕事に」を当たり前にする活動をしています。よく「真面目」と言われる89世代の意識高い系です。 スズキについて詳しく知りたい方はこちらからどうぞ
仕事のご依頼(広告掲載、記事寄稿など)はiwgp545@yahoo.co.jpからお願いします!