プログラミング教育への需要が、かつてないほど高まっています。
以前から案件の多かったWeb開発に加え、最近ではデータサイエンスやAIの隆盛もプログラミング学習者の増加を促しています。
さらに、学校での必修化により、プログラミングは誰もが身につけるべきものとなりました。
こういう環境下で、プログラミングスクールと並んで自習型のプログラミング学習サイトへのニーズも日々高まっています。
この記事では、これからプログラミング学習を始めようと思っている人のために、学習サイトを使うメリットやデメリット、サイトの選び方などをお伝えします。
プログラミング学習法
かつては一部の専門家やマニアのものでしかなかったプログラミングも、みんなが学ぶ時代になりました。
それには、学習方法が多様化したことも大きく寄与しています。ここでは、様々な学習方法の中から「書籍」「学習サイト」「スクール」の3種類について紹介します。
書籍を使う
昔からある、本道とも言える学習法です。
入門者向けの簡単なものや、1冊で深いところまで網羅的に学べるもの、リファレンスとして末永く使えるものなど、ありとあらゆるタイプのプログラミング本が出版されています。
良い本を手にすると自然とモチベーションが上がるものですが、反面、1冊の本を読み通すのはなかなか大変で、挫折につながりやすくもあります。気をしっかり持って、根気強く続けることが必要です。
ほかの学習法で学ぶとしても、補助教材として、またはバイブルとして、良書を手元に置いておくのがお勧めです。
プログラミング学習サイトを使う
解説動画やスライド形式の教材などを提供するサイトを使って勉強する方法です。数多くのサイトがあります。
本稿では、講師に直接教えてもらうのでく、教材を自分で見て、自分のペースで学ぶ「自習型」のサービスのことを「プログラミング学習サイト」と呼んでいます。
手軽に始められ、料金も比較的手頃な場合が多いので人気があります。
プログラミングスクールを利用する
プロの開発者などの先生について学習する方法です。
テレビCMを打つところもあったりして、利用者が増えていることがうかがえます。
授業形態は、対面形式とオンライン形式のものがあります。また、講師一人に対して複数の生徒がつくものや、マンツーマンのものがあります。
何しろ生身の先生に個別に教えてもらえるわけですから、モチベーションは最高です。質問もすぐにできます。
最短で業務レベルの技術が身につく、と多くのスクール出身者が語っています。
費用はかかりますが、仕事としてやっていくつもりならば、スクールは有力な選択肢になるでしょう。
プログラミング学習サイトを使った学習
さて、ここからは、本稿の本題であるプログラミング学習サイトを使った学習について掘り下げていきます。
メリット・デメリットがいろいろあり、またサイトによっても差がありますが、一般的にはプログラミングへのよい入り口になってくれることでしょう。
メリット
学習サイトを使った学習には、以下のようなメリットがあります。
費用が抑えられる
全般的に、プログラミングスクールよりは人件費がかからないため、費用は低めに抑えられる傾向にあります。1ヶ月1000円前後のところが多いです。
また、一部の教材が無料で見られるようになっているところもたくさんあります。それだけでも結構なところまで学習を進められることもあります。
上手に利用すれば、コストパフォーマンスはかなり高いと言ってよいでしょう。
自分に合った形式が選べる
プログラミング学習サイトには、様々なタイプがあります。動画を見るもの、例を見ながらコードを打ち込むもの、問題を解いていくもの、ゲーム形式のものなどです。それらが混ざったようなところも多いです。
サイトの雰囲気も、まじめで堅いところもあれば、非常に柔らかいところもあります。
個性豊かなサイトがたくさんあるので、どこかしらには自分に合うところがあるのでは、と思わせてくれます。
手軽に始められる
プログラミング学習サイトでは、ほとんどのところで無料で試せる教材が用意されているので、「とりあえず試してみる」ことがしやすくなっています。
もし、試してみて自分に合わないと思ったら、すぐに別のサイトを試せます。
有料会員になるにしても、費用が安めに設定されていることが多いので、そのぶん始めるハードルは低くなります。
難しい手続きなどなく、サインインすればすぐに学習がはじめられます。無料お試しだけならサインインすら必要ないこともあります。
この手軽さから、学習サイトはプログラミングへの入り口として最適なものと言ってよいでしょう。
自分のペースで学べる
決まった日時にやらなければならない、というようなこともないので、自分のペースで学ぶことができます。
1回ごとの学習時間が短いことが多く、すき間時間に学ぶことができます。
環境構築不要なことが多い
初心者は、プログラミング言語を動かすための環境構築のところでつまずきがちですが、それが不要な学習サイトもよくあります。ブラウザ上にコードを打ち込んでいけばよいようになっていたりします。
デメリット
学習サイトには、以下のようなデメリットがあります。
挫折しがち
基本的に一人で学ぶものですから、意思の力がなければ続けることはできません。
メリットのところで述べた手軽さも、アダになりかねません。手軽に始めたのだから、手軽にやめよう、となることもあるかもしれません。
費用の安さも、ちょうど「あきらめのつく」金額になりがちで、挫折の温床になり得ます。
また、自分のペースで学べるという点にも危うさがあります。非常にゆっくりとしたペースになって間隔があきすぎると、実質挫折しているのと変わらなくなってしまいます。
メリットで挙げたことがみな挫折と表裏一体になっているというちょっと皮肉な構図です。
質問する場がないこともある
質問に答えるサービスを用意していないサイトもあります。その場合、わからないことがあったらネットで検索するなどして自分で調べるしかありません。
もちろん質問に答えてくれるサイトもありますが、どの程度答えてくれるのかはサイトによります。通常、有料会員にならないと質問には答えてくれなくなっています。その場合でも、頻度や内容に制限があることもあります。
このあたりは入会前によく調べておいたほうがよいでしょう。
深いところまでは学べない
どのサイトもプログラミングへの「入り口」の部分には大変力を入れていますが、プログラミング言語の詳細に立ち入るようなレッスンは少ないようです。
言語の機能をフルに学びたいと思ったら、書籍などで補う必要があると思ったほうがよいでしょう。
また、デザインパターンやリファクタリングといった技法が学べるサイトにもなかなか出会えません。これもまた書籍の領域ということになるのでしょう。
プログラミング学習サイトのタイプ
学習サイトには様々なタイプがあって、バラエティー豊かです。それぞれのサイトが独自の発想でレッスンを展開しています。
ここでは、数ある学習サイトのタイプのうち、典型的な3つを紹介します。
なお、すべてのサイトがこれらの分類にきっかり当てはまるわけではなく、ひとつのサイトが複数のタイプに属する場合もあります。
動画中心
まず目立つのは、動画でレッスンを見るタイプのサイトです。
各レッスンは短めなことが多く、ちょっとした空き時間にも学ぶごとができます。忙しい人にも続けやすくなっています。
ただし、「見るだけ」だと、その場ではわかった気になっても実際にはできない、ということにもなりかねません。自分で手を動かしてやってみるという過程がどこかで必要です。
コードを入力しながら
ブラウザにコードを入力しながら学ぶサイトもよくあります。
画面が分割されていて、片方がレッスンコンテンツ、もう片方がコードを入力するところ、という具合です。
実際に手を動かすので、高い学習効果が期待できます。それでいて、ブラウザベースのため言語の環境構築が不要で、手軽さも失っていません。
動画中心のサイトとは違って、寝っ転がってスマホで、というわけにはいかず、ちゃんとパソコンの前に座ってレッスンを受ける体勢を作らなければなりません。
ゲーム感覚
ゲームで遊んでいるうちにプログラミングが身につく、というサイトもたくさんあります。
コードを入力し、正解すれば先に進める、というのが典型的なパターンです。それによって経験知を得て自分のキャラがレベルアップしたり、アイテムをもらったりすることもあります。
ゲームにハマればどんどん先に進みたくなるし、そうでなければゲームの部分が邪魔、ということになるかもしれません。続けられるかどうかはゲームの出来次第というところはあります。
プログラミング学習サイトの選び方
数ある学習サイトの中から、自分に合ったものを選ぶのはなかなか大変なことです。
いくら評判がよいサイトでも、自分に合わなければ続けることが難しくなってしまいます。
手始めに、いくつかの判断基準を設けてそれぞれのサイトを評価してみてはいかがでしょうか。
その上で、自分のやりたいことや置かれた状況から何を優先すべきか考えて、最もよさそうなところを選ぶ、という手順で選んでみるのです。
ここでは、サイトを選ぶ際のいくつかの判断基準について述べていきます。
やりたいことで選ぶ
プログラミングを学びはじめる前には、ただ漠然とプログラミングをやろうというのではなく、「プログラミングで何をしたいのか」ということを考えるのが重要です。目標もなく始めてしまうのは挫折の大きな原因になります。
ですから、学習サイトを選びはじめる前に、まず自分の目標ややりたいことをしっかり定めておきましょう。
そうすれば、自ずとサイトを絞り込むことができます。ズバリ、自分のやりたいことにマッチするコースがあれば、そこが候補になってきます。
例えば「データ分析をしたい」というのであれば、データ分析のレッスンが充実したところを選べばよいでしょう。また、データ分析でよく使われるPythonやRといった言語を学べるところも候補に入ってきます。
言語で選ぶ
やりたいことから学ぶべき言語が自ずと決まる、というのが理想ですが、学びたい言語をまず決めて、それが学べるサイトはどこか、と探すのもひとつの方法です。
学びたい言語を一番詳しく学べるのはどこか、という基準で選ぶのもいいでしょう。また、たくさんの言語が学びたいというのであれば、対応する言語の多いところが候補になるでしょう。
ただし、各サイトは世の中のトレンドを反映していますから、学ぶ人があまりいなくなってしまったような言語に対応するところはなかなか見つからないかもしれません。
タイプで選ぶ
学習サイトのタイプも、重要な選択基準になります。
すき間時間を利用して学びたいなら動画中心、手を動かしてじっくり学びたいならブラウザに入力していくタイプ、という感じになるでしょう。
サイトの見た目や雰囲気で選ぶ、という人もいるかもしれません。このあたりは学びの意欲にも影響しますから、見逃せない点です。
動画サイトならば、講師やナレーターのしゃべり方も気になるところです。分かりやすいか、眠くならないかなどについて、無料で見られるレッスンでチェックしてみましょう。
難易度で選ぶ
初心者向けの講座だけを受講したいのか、それとも中級以上の内容も受講したいのか、ということでも選ぶべきサイトは変わってきます。
講義一覧はどこのサイトにもありますから、よくチェックしておきましょう。
レッスン内容を詳しく調べなくても、サイトの雰囲気だけでなんとなく扱う難易度が察せられることもあります。ただ、見た目の割には難しい、というようなことも有り得ますから、無料部分でよく確認しましょう。
費用で選ぶ
料金体系は、人によっては最重要ポイントになることもあるでしょう。
大体は月1000円前後と安く抑えられいますし、まとめて先払いすることでさらに安くなることもあります。コンテンツの買い切り制のところなどでは、結構いいお値段がすることもあります。
いずれにせよ、費用に見合った学習効果があるのかどうか、この点は厳しくチェックする必要があります。
プログラミング学習サイト10選
それでは最後に、あまたあるプログラミング学習サイトの中から10個を厳選して紹介します。
なお、料金等の情報は本稿執筆時点のものです。
ドットインストール
ドットインストールは、動画でプログラミングを学習するサイトです。
1本の動画が3分以内と短いので、時間がないときにも学習を進められるようになっています。
また、動画を見るだけでなく、ブラウザ上にコードを書き込んで実行する形式のレッスンも一部取り入れられています。分割画面の片方に動画、もう片方にコード入力部分という形になります。
Web開発系を筆頭に、とても多くのレッスンがアップされています。データベースやスマホアプリ開発のレッスンもあります。
他ではあまり見られないほど様々な言語の入門講座を受講することができます。中にはBASICやCOBOLなど、今では新たに学習する人が減ってしまった言語の講座もあります。
無料会員でも一部のレッスンは受けられますが、月額1080円で有料会員になれば、すべての動画を見られるのに加えて動画の文字起こしやソースコードが閲覧できたりなど、学習に便利な多くの機能が使えるようになります。また、先生への質問も有料会員の特典になっています。
Udemy
Udemyは、動画を中心に学ぶサイトです。
プログラミングだけでなく、ビジネススキルや趣味など様々なジャンルのコースがあります。日本語や英語のほか、世界中の様々な言語による動画を見ることができます。
プログラミングに関していえば、Web開発、データサイエンス、オブジェクト指向など、幅広い分野のコースを選べます。かなり専門的な内容の講義も存在します。
Udemyの特徴は、各コースが「買い切り制」だということです。月額制ではなく、各コースを買う形になっています。一度買うと、そのコースは期限無しで見続けることができます。
サイトに登録した各界の専門家などが、講義を「売る」という形で提供しています。そのために豊富なコースが用意できるのです。
各コースは、大体100本前後の動画からなる合計数時間~20時間程度の講義で構成されています。値段は1~2万円台のものが多く、なかなかのお値段になっていますが、大幅値引きセールをよくやっていて、そのときは大体1000円台から購入可能です。
購入前に、無料公開されている部分で中身を確かめることができます。また、30日の返金保証もついています。
Progate
URL: https://prog-8.com/
Progateは、ブラウザにコードを打ち込みながらプログラミングを学ぶことのできるサイトです。
Web開発系のコースが豊富に用意されています。入門的な内容からステップバイステップで学ぶことができます。
各コースはいくつかのレッスンに分かれています。それぞれのレッスンは、まずスライドを見てその回の内容を学習し、次にその内容に即した演習でブラウザ上にコードを打ち込む、という形で進んでいきます。
無料登録すれば、各コースの入門編を学習することができます。月額1078円で有料会員になればすべてのレッスンを受けられます。
paizaラーニング
paizaラーニングは、動画を見て学び、コードを打ち込んで演習するタイプのサイトです。
各レッスンでは、まず動画を見てどのようにコーディングするのか学び、そのあとの演習課題でそれを再現するという形で進めます。
課題をクリアしていくと「レベルアップ」するなど、ゲーム的な要素もあります。
Web開発系のHTML&CSSやPHPのほか、C、C++。C#といった言語も学ぶことができます。難易度としては、入門~基礎レベルが中心となります。
各講座に無料部分があるほか、完全無料となっている講座もあります。有料会員になれば全講座、学習できます。月額1078円のプランのほか、6ヶ月4488円、12ヶ月7200円のプランがあります。
CODEPREP
URL: https://codeprep.jp/
CODEPREPは、手を動かしながら学ぶタイプのプログラミング学習サイトです。
ブラウザ上で「穴埋め式」の学習をするのが中心となります。ある程度書き上がったコードの一部が空欄になっていて、そこに単語を書いていくスタイルです。「どこに」「何を」書けばよいのかすぐに分かるので、スムーズな学習が可能です。
穴埋め式の学習が終わると、自由にコードを書いていく演習に進みます。こちらは、なかなか力を試される内容になっています。
内容はWeb開発が中心ですが、データサイエンスやゲーム開発の講座もあります。
CODEPREPは、すべて無料で学習できます。わからないことがあったら、「ディスカッション」という掲示板で他の学習者と疑問を共有できます。
シラバス
URL: https://cyllabus.jp/
シラバスは、「マネして学べる、プログラミング学習サイト」をキャッチフレーズにしています。
講座のページを読んでいきながら、途中にあるコードをマネして、自分で入力しながら進んでいくタイプです。
ブラウザ上に入力できる環境が用意されているわけではないので、自分でエディタや実行環境を準備する必要があります。この点については、環境構築の方法が詳しく書かれているので大丈夫でしょう。
Web開発に関するコースがメインになっていて、「WEBデザイン編」と「WEBアプリ編」に分かれています。「デザイン編」では、HTMLやCSSのほか、IllustratorやPhotoshopといったデザインツールの使い方も学べます。「アプリ編」ではRuby on Railsでサイトを構築する演習などができます。
かなり実践的な内容で、サイトの設計図なども出てきます。
シラバスはすべて無料で学習できます。
Codecademy
URL: https://www.codecademy.com/
Codecademyは、手を動かしながらプログラミングを学ぶタイプのサイトです。
このサイトはすべて英語表記になっています。
講座のブラウザ画面が3分割されていて、説明や課題の内容を読むところ、コードを打ち込むところ、実行結果が表示されるところになっています。基本的に自分ですべてのコードを打ち込むので、それなりに時間がかかります。
講座のテーマは、定番のWeb開発をはじめデータサイエンスや機械学習など、トレンドをとり入れたものをそろえています。
一部の講座は無料で学ぶことができます。有料会員になれば、すべての講座が学習可能になります。月払いだと39.99ドルですが、年払いだと1ヶ月あたり19ドルになります。
CODEMONKEY
CODEMONKEYは、ゲーム形式でプログラミングを学ぶサイトです。
簡単なプログラミング言語を使ってブラウザ画面上のおサルさんを動かし、バナナを取るという課題をこなしていきます。
実行ボタンを押したときのおサルの動きがかわいいです。課題はパズルのようで、クリアするごとにだんだん難しくなっていきます。それに伴ってオブジェクトやループなどの新しい概念が導入されていきます。
子ども向けのテイストですが、Scratchのようにブロックをつなぎ合わせればできるものではなく、キーボードからコーディングしていくので、本格的にプログラミングをしてる感覚が味わえます。
また、マウスクリックでコードを入力してくれる補助機能がついているので、キーボードに不慣れな子どもでも取り組むことができます。親子で夢中になれるサイトです。
無料で序盤の冒険を遊ぶことができます。有料サブスクリプションを購入すると、すべての冒険を遊べるようになります。値段はファミリープランで1年間13200円です。
コードガールこれくしょん
コードガールこれくしょんは、プログラミングを学びながら進めるゲームです。
プログラミング課題であるクエストをクリアして、レベルを上げたりアイテムをもらったり、ガチャを回してキャラクターを集めたりと、凝った作りのブラウザゲームになっています。キャラクターが「C言語標準ライブラリ」を擬人化したものだったりして、ニヤリとさせられます。
PHPやJavaScriptやRubyなど、いくつかのプログラミング言語で遊ぶことができます。
panzaが運営するサイトであるため、課題の内容はpanzaに準じます。ブラウザにコードを入力していくタイプです。知らない言語の課題にいきなり取り組むのは難しいため、panzaラーニングなどで勉強してからのほうがいいでしょう。
コードガールこれくしょんはすべて無料で遊ぶことができます。
テクノロジア魔法学校
URL: https://www.technologia-schoolofmagic.jp/
テクノロジア魔法学校は、ディズニーが提供するプログラミング学習サイトです。
ゲーム形式になっていてい、ストーリーを進めながら課題をこなしていきます。おなじみのディズニーキャラクターや映画の要素が満載されていて、ファンにはたまりません。
なぞ解きをしながら進めていくストーリー部分にも目を奪われますが、学習教材としてとてもよくできています。ちゃんと手を動かしてブラウザ上にコードを入力していく形になっています。
課題で作るものがとても面白く、まさにプログラミングが「魔法」だと思えることでしょう。
子どもでもできるくらいゆっくりとしたペースでレッスンが進んでいきます。そのぶん、忙しい大人には時間がかかりすぎると感じられるかもしれません。
学習内容は、Webデザイン、ゲーム、メディアアートの3領域に分かれています。その過程で、HTML&CSS、JavaScriptなどの言語を学んでいきます。
無料体験版でストーリーの序盤を体験することができます。有償版は、入門・基礎編を含むパッケージが32780円ですが、体験版を終了するともらえるクーポンで5000円引きになります。必要に応じて、応用編を追加購入することができます。
まとめ
今、プログラミング学習サイトは群雄割拠の状態にあります。どのサイトも特徴的で、それぞれのやり方で学習者を励まし、楽しませてくれます。学習者の皆さんは、自分の好みやペースにあったサイトを探してみてください。