「プログラミング」を学びたいと思ったあなた。いきなり「プログラミングスクール」に行こうとしていませんか?
「ほぼ無料」で「独学」できるのでちょっと待って下さい。
この記事では、18個の学習サイトを紹介します。これらのサービスだけで、基本的には初心者から実践レベルまで独学可能です。
なお、Pythonのオススメ 学習サイトを知りたい方は以下の記事も参考にして下さい。
【完全版】Python初心者から上級者までオススメ学習サイト【独習ロードマップ】
有料のものも、「飲み会1回分」位なので、本気で独学を試みる人は全て試していきましょう。
ちなみに、「プログラミングスクール」にも通った自分の感想は、以下の記事でぶっちゃけてます。
自分が厳選するとしたら
ひょっとたら、「多すぎる!」、「オススメだけ教えてくれ」って人もいるかもしれません。
その場合、Webアプリ開発に偏りますが、自分はまずは以下の4つを勧めます。
- Progate(初心者はこれ一択)
- PyQ or Rails Tutorial(応用)
- Udemy(ながら聞きに活用)
- Code4Startup(airbnb等の本格的サイトを作成)
オススメのプログラム学習サイト(まとめ)
スマホの場合は、表をスクロール出来ます。
名前 | コメント | 価格 | 対象 | オススメ度 |
Progate | 初心者はこれ一択! | 無料 有料(月980円) | 超初心者 | ★★★★★ |
Codeacademy | 米国のProgate | 無料 有料($19.99/mo-) | 初心者 -中級 | ★★★★☆ |
ドットインストール | 3分動画で学ぶ事が出来るサイト。 | 無料 有料(月980円) | 初心者 -中級 | ★★★☆☆ |
PyQ™(パイキュー) | 有料 (月2980円-) | 初心者 -中級 | ★★★★★ | |
Udemy | 英語のコースがオススメ | 有料 (セールで1500-2000円) | 初心者 -上級 | ★★★★★ |
Aidemy | AI・人工知能に特化 | 無料 有料(月1880円-) | 初心者 -中級 | ★★★☆☆ |
Rails Tutorial | Ruby on Railsの登竜門 | 無料 有料 | 中級 | ★★★★☆ |
言語処理100本ノック | 自然言語処理研究の第一歩 | 無料 | 中級 | ★★★☆☆ |
サルでも分かるGit入門 | バージョン管理は早い内に学ぶべし | 無料 | 初中級 | ★★★★☆ |
paizaラーニング | 内容良し。アニメは好き嫌いあり | 無料 有料(月600円) | 初心者 -中級 | ★★★★☆ |
AtCoder | プログラミングコンテスト | 無料 | 初心者 -上級 | ★★★☆☆ |
Qiita | 分からない事はまずはここで | 無料 | 初心者 -中級 | ★★★☆☆ |
teratail | 日本語でエラー解決したい場合 | 無料 | 初心者 -中級 | ★★★☆☆ |
Stack Overflow | 英語でのエラー解決スキルは必須 | 無料 | 初心者 -上級 | ★★★★☆ |
Coursera | スタンフォードのAIコースは神 | 無料 有料 | 初心者 -上級 | ★★★★☆ |
edX | ハーバードのCS50がオススメ | 無料 有料 | 中級 -上級 | ★★★☆☆ |
Code4 Startup | airbnbやUberEatsが作れます | 有料 ($29/mo-) | 中級 -上級 | ★★★★★ |
Kaggle | データサイエンティストの登竜門 | 無料 | 中級 -上級 | ★★★☆☆ |
Quontopian | 無料 | 中級 -上級 | ★★★☆☆ | |
CryptoZombies | ブロックチェーンを学ぶ | 無料 | 上級 | ★★★☆☆ |
【初心者】プログラミングの基礎を学べるサイト-3選
Progate
初心者に最もオススメなサイトを1つだけ選べと言われたら、「Progate」をオススメします。
「環境構築」の挫折リスクゼロ
初心者が躓く理由No.1が「開発環境の構築」です。
ブラウザ上で実行する形で構築が不要なので、プログラミング学習そのものに集中する事が出来ます。ネットに繋がるパソコンさえあればOKです。
スライドが圧倒的に分かりやすい
まずは、「HTML/CSS」コースから初め、「JavaScript」、「Ruby」、「Ruby on Rails」と進めていきましょう。
「Python」は少々物足りないので、PyQ(後述)をオススメします
Codeacademy
「Codecademy」は、「Progate」の元ネタと言っても過言でないサイト。
Progateと同じく、環境構築の手間なく、ゲーム感覚でプログラミングを学ぶ事が出来ます。
Codeacademyのレッスン画面
Codeacademyでは一番左にレッスンと課題が表示され、真ん中にコードが、一番右に実行結果を見る事が出来ます。
Progate使った事ある人でしたら、簡単にイメージ出来ると思います。
カバー範囲が広め
Progateよりカバー範囲が広く、レベルが高い内容も扱っているのが違いです。
とは言え、日本語で学んだ方が大半の人は理解が進むと思うので、Progateでサックと学んだ後に、ステップアップとして使用するのが効率的な活用法です。
Codeacademyのユーザーの動画
Codeacademyの卒業生のインタビュー動画はこちら。
フロントエンドエンジニアの方やスタートアップの人がインタビューに答えてますね。
ドットインストール
ドットインストールは、3分動画で学ぶ事が出来るサイトです、1時間とか短い時間で凝縮して学びたい時に、使います。
【中級者】実際に使えるプログラミングの練習-6選
PyQ(パイキュー)
Pythonを基礎からプロレベルまで本気で学びたかったら、「PyQ™(パイキュー)」がオススメです。
「Progate」は、「Python」は軽くしか触れられていないので、次に取り組んだサイトがこちらでした。
株式会社ビープラウドの方が開発されているのですが、出版されている書籍の評判も非常に良いです。
レッスンがとても豊富(嬉しい悲鳴!!)
PyQ™(パイキュー)では、「Python」の基礎はもちろん、応用例として、「Webアプリ・API」や「スクレイピング」、「機械学習」などもあります。
「ライトプラン」でまずは大丈夫
「ライトプラン」で課金しましたが、「月2980円」でこの内容を学び放題は安すぎです。
Udemy
Udemyは、プログラミングに限らず、あらゆる講座がアップロードされている教育プラットフォームです。日本ではベネッセ社と提携しています。
「Udemy」はオフラインで学習可能
講座をダウンロードすると、オフラインでアクセス出来るので、通勤時間やジムなどでもながら聞きが出来ます。
個人的に一番良いと思っている点です。
日本語より、英語の講座がオススメ
日本語より、英語講座の方がボリュームも質も10倍ほど良いです。
世界中から厳しい目に晒されるので、当然と言えば当然ですね。
例えば、自分が一押しの「Colt Steele」氏の「The Web Developer Bootcamp」は、何と口コミが「10万件」を突破しています!!
1人$10としても、1講座だけで優に1億円を越えてますね。
UdemyでPythonを学びたい人はこちらでオススメを解説します(自腹購入)
Aidemy
「Aidemy」は、Pythonや人工知能に係るプログラミングに特化したサイトです。
良く「PyQ」と「Aidemy」が比較されますが、簡単なコース(Python入門)等であれば、無料で使い始める事が出来ます。
機械学習やAIは、色々な教え方のアプローチがあるので、是非とも色々チャレンジしてみて下さい。
Rails Tutorial
「Ruby on Railsチュートリアル」では、Webアプリケーションの開発から公開までを、実際に手を動かしながら学べます。
「Ruby on Rails」だけでなく、GitやHeroku、Bootstrap、テスト駆動開発を学ぶ事が出来ます。課金する事で、解説動画やプログラミング教室で学習する事も出来ます。
解説動画(36時間)に課金しました
別に、独学でやっても全然良いのですが、自分は時間がもったいなかったので、「解説動画」を買って学びました。
テキストに載っていない間違いやすい箇所やポイントについて特に集中して視聴する様にしました。36時間程あり、3万円は、正直かなりコスパ良いと感じました。
言語処理100本ノック
言語処理100本ノックは、実践的な課題に取り組みながら,プログラミング,データ分析,研究のスキルを習得することを目指した問題集です。
言語は主にPythonを想定していますが、その他も対応しています。
「Qiita」等に回答が落ちているので、答え合わせをしながら進みましょう。
サルでも分かるGit入門
もし、あなたがエンジニアを目指すのであれば、バージョン管理についての知識は必須です。
前述のRuby on Railsチュートリアルでも第1章にGitについて解説がありますが、出来るだけ早いタイミングでGitについてバージョン管理する習慣をつけましょう。
【中級者】プログラミングの実力をテストしながら学ぶ-2選
paizaラーニング
個人的に、とても好きなサービス。プログラミングスクールの先生に教えて頂きました。
プログラミングスキルチェックで実力を測る
プログラミングスキルチェックは、「Dランク」から「Sランク」に分かれており、「回答時間」と「テストケースの正答率」で点数が付けられます。
答えが明かされる訳ではないので、あくまでも実力を測る為に使いましょう。
paizaラーニング
アニメが苦手な人は、ちょっと抵抗があるかもしれませんが、内容は良いです。(外でやるのはちょっと恥ずかしい、、)
AtCoder
AtCoderは、オンラインで参加できる「プログラミングコンテスト」のサイトです。
リアルタイムのコンテストで競い合ったり、約2000問のコンテストの過去問に挑戦することが出来ます。
競技プログラミングと実務のプログラミングは違う所も多いですが、コンピューターの仕組みについて考える良いキッカケになります。
【中級者】エラーで詰まったら活用するサイト-3選
エラーが出たら、まずはエラー文をしっかり読みましょう。大抵、エラー文を読むだけで解決します。
それでも解決しない場合は、以下のサイトを利用します。
Qiita
「Qiita」は、エンジニアリングに関する知識を記録・共有するためのサービスです。
何か作りたいものや、エラーに突き当たった場合は、まずここでググります。
teratail
teratailはITエンジニア特化型のQ &Aサイトです。
基本的にはエラー解決は英語の情報サイトを読んで解決するのがオススメなのですが、日本語で解決したい場合はここにお世話になります。
Stack Overflow
膨大な質問がストックされているので、基本的には「公式ドキュメント」とこのサイトで解決出来ないエラーは無いです。
もし、エンジニアを目指しているのであれば英語でのエラー解決スキルは必須なので、練習のつもりで早いうちから英語の情報に触れるようにしましょう。
【中級者】世界最高の授業から学ぶ-2選
Coursera
coursera は「プリンストン大学(Princeton)」、「スタンフォード大学(Stanford)」などといった外国の超一流大学の授業をオンラインの動画で受講できるサービスです。
スタンフォード大学の「Deep Learning」コースが必見
スタンフォード大学のAndrew Ng先生の「Deep learning」はAI関連で世界最高のコースと言われています。実践的であると共に、教え方がとても上手です。
このコースは、プレミアムの扱いで「月$49」かかりますが、終了すると「Certificate」が貰えます。
edX
edXも、courseraと同じ様に、外国の一流大学の授業を受けられます。基本的には「Certificate」を取得しなければ無料です。
ハーバード大学の「CS50」がオススメ
ハーバード大学のCS50はプログラムの基礎を身につけた人がチャレンジするのにオススメです。
何か見た事ある教室だな?と思ったあなた、鋭いです。CS50は、マイケル・サンデル教授が以前していたあの教室で開催される、超人気授業です。
【上級者】実践的なアプリケーションを開発-4選
Code4 Startup
Code4 Strartupでは、実際に世界中で使用されているWebサービスのクローンを開発していきます。キックスターターの超人気案件が元になっています。
Airbnbのクローンがオススメ
オススメは、「Ruby on Rails」を使用して開発する「Airbnb」と「Python」での「Uber Eats」です。他にも「Tinder(出会いアプリ)」や「fiverr(マーケットプレイス)」などの講座があります。
普通の人はValueプランで十分
「Unlimited Plan」は最初から全ての講座にアクセス出来ますが、「Value Plan」は、毎月1つ講座を選び、アクセスしていく事になります。
自分は、1月に1つの講座がアンロックされれば十分なので、「Value Plan」の「$39」で課金しています。急いでない人は、このプランで大抵十分です。また、忙しい時期は、一時休止することも出来ます。
「Ninja Plan」では、「Airbnb」等の講座はアクセス出来ないので注意しましょう。
Kaggle
「データサイエンティスト」の世界的なコンテストサイトであるKaggleです。
実際のデータを使用してコンテストが開催され、「Netflixの映画レコメンデーション」のコンテストは有名ですね。
もちろん、コンテストだけでなく。学習コンテンツも沢山あります。世界中のプロの「データサイエンティスト」のアプローチの仕方を学べます。
Quontopian
「Quontopian」は、トレーディングアルゴリズムのオープンプラットフォームです。金融データは基本的に無料で提供され、オンライン上に「Python」でトレーディングアルゴリズムを書いていきます。
コンテストで入賞すると実運用に
定期的にコンテストが行われ、入賞したトレーディングアルゴリズムは、実際の運用に活用されます。アルゴリズムの開発者には、アルゴリズム使用料が分配されるという画期的な仕組みです。
CryptoZombies
ブロックチェーンをゲーム感覚で学ぶのにオススメのサイトです。「Ethereum(イーサリウム)」を扱うアプリケーションを作成していきます。
「プログラミングスクール」は必要?
ネット上で、「プログラミングスクールは絶対にオススメ!!」みたいな記事を良く見ますよね。
「プログラミングスクール」=「ビジネス英会話スクール」
「プログラミングスクール」は、「ビジネス英会話スクール」(Berlitz、GABA)の様なものだと思って下さい。
自分も、「最短・最速で学びたい人」や「ビジネスの現場で通用する生の知識」を知りたい人には「プログラミングスクール」に行く事をオススメします。
ですが、全ての人には当てはまらないはずです。
こんな事を書いたら怒られちゃいそうですが、必要な人に必要なものだけを勧める、背中を押してあげるのが自分の流儀です。
「ムダな試行錯誤は嫌い」、「急いでいる」という方は、自分が実際に受講した感想を以下の記事でブッちゃけているので、参考にして下さい。
まとめ
まずはこの記事で紹介したサービスを一通り試してみるだけで、十分すぎる程の実力がつくと思います。ほぼ「無料」なので、あなたのリスクは0です。
なお、あらゆる「プログラミング」の潮流は、海外発です。プログラミングを学ぶ上で、英語は必須なので、苦手意識がある人は、ちょっとずつ慣れていきましょう。
プログラミングの英語は結構パターンがあるので、慣れてしまえば簡単です。