Progate -無料版- でプログラミングを学ぶことについて　〜初心者による初心者のための〜

#はじめに
「プログラミング勉強したいんですけど何から勉強したらいいかわからなくて……」と言う方に、よく
「とりあえず[Progate](https://prog-8.com/)から触れてみるといいよ！　無料版あるし！」と答えておりますので、
これを機にProgateの良し悪しを軽くまとめておきます。

Progateを検討している人に、ほいっと見せられる記事になることを目指しています。

**※筆者は2018/08にプログラミングの勉強を始めたばかりの初心者です。ご了承ください。**

# Progateとは
![スクリーンショット 2018-11-28 19.48.24.png](https://qiita-image-store.s3.amazonaws.com/0/320620/d68f6e95-a6c3-1b8c-a9ec-1362e9004e01.png)
Progateとは、「初めてプログラミングに触れます！」という方向けのプログラミング学習サービスです。
ネット環境と、パソコンと、「どれぐらい続くかはわからんけどプログラミングの勉強してみるぞ！」程度の気持ちさえあればOK。
面倒な手続きや設定は一切不要です。

無料版と有料版（¥980-/月）があり、無料版では各言語の基本のキを勉強できます。
私はまだ無料版しかやったことがないので、今回は無料版に関してのみ触れます。

学習の流れとしては、以下の通り。

1. この言語はこんな言語なんですよ！　という数行程度の解説
2. このように書くと、こんなことができますよ！　というスライド解説
3. 実際に自分でやってみる（こと細かいアシスト・解説あり）
4. 正解すると次に進むことができる
5. (2.)に戻る、以降繰り返し

解説が細かいので、しっかり読めば、理解が追いついていなくても行き詰ることがありません。
何周も、定着するまで取り組むことも可能です。
1つのコースあたりの修了時間は2時間と設定されていることが多いですが、
さくさく進めれば1時間で修了できます。

# Progateの良いところ
- 行き詰まらない、挫折しない、かんたん
- 特に必要なものがない
- 自分のペースで良い
- 無料

 **・行き詰まらない、挫折しない、かんたん** 
100%保証できるわけではありませんが、解説がとても丁寧なので、何もできなくて困るということはありません。
逆に言うと、Progateで理解できないならば、他の教材を用いても理解できないと思います。
本屋とかの参考書を読むと文字だ圧力だで「うっ」となりますが、Progateはその辺、優しくて安心です。

 **・特に必要なものがない** 
プログラミングの勉強をしようとして挫折する理由の1つに、「必要なツールのインストールがわかりにくい」があります。
そもそもパソコンに触るのだって初心者だ、という方にとっては、アレやコレやインストールするというのも苦難なものです。
ProgateはProgate内で完結しています。
ちなみに、とある言語のとある本は、「プログラミングをはじめる準備をしよう！」という項目だけで23ページ使っています。
それだけ準備は大変で、準備がいらないのはありがたいものです。
<font color="silver"> とはいえ、プログラミングの勉強を長く続けるなら、いつか準備をしなきゃいけないですが。</font>

 **・自分のペースで良い** 
対人授業じゃないので、好きな時に好きなように取り組めます。

 **・無料** 
挫折したり飽きたりしても、金銭的損失はありません。
なお、書籍だと1冊数千円、有料オンライン教材だと1ヶ月数万円かかります。
書籍はともかく、続くかどうかわからないのならオンライン教材はおすすめしません。

# Progateの期待できないところ
- 内容が少ない
- 「できるようになる」わけではない、すぐに何かに活きない
- プログラミング学習ならではの達成感がない

**・内容が少ない**
そもそも無料版ですので当然です。

**・「できるようになる」わけではない、すぐに何かに活きない**
例えば、「漫画家になりたいので漫画を描けるようになりたい、絵の練習をしたい」と考えている人が、
いくら「ぬりえ」の練習をしても、漫画を描けないことと同じです。
Progateは敷かれたレール通りに学ぶ形になるので、自主性を持たないと、言われるがまましかできるようになりません。
漫画を描く上で、自分でストーリーを考えたり、自分でイラストを描き上げたりすることが必要なように、
プログラミングもまた「自分で考えて、自分で作ること」が重要です。
また、Progate内の知識のみで仕事に活かすこと（業務効率化など）はさすがにできないと思います。

**・プログラミング学習ならではの達成感がない**
プログラミングの勉強の楽しさの1つに、「自分で好き勝手いじることができる」があります。
例えば「1から10まで数えるプログラム」を自分で勝手にちょっといじって「1から100まで数えるプログラム」にしたり、「1から10まで、それぞれを2乗して数えるプログラム」にしたりして、楽しむことができます。
しかし、Progateは「こうやってください」と指示してきますし、それ以外のことをやると「間違ってますよ！」と注意してきます。
自由度が足りません。生徒が正しい答えを言うよう、めっちゃ誘導してくる先生みたいな感覚です。
飽きる原因にもなるんじゃないかなと思います。
（※そもそも達成感をあまり必要としないGitについてはProgateだけでもかなり満足に学習ができました。）

# Progateの有効活用について
「プログラミングを学習し、実践できるようになりたい！」と考えている方は、
良い点を活かし、期待できない点を他で補って学習するべきです。
よって、私は「Progateで着想を得て、別のところで実践してみる」という学習方法をおすすめします。
例えば、「この知識を使えば、じゃんけんゲームを作ることができるのでは？」という着想を得て、ネットで足りない知識を色々調べながら、実際に考えたものを作ってみるということができると思います。
常に「この知識で何ができるか」を考えてみることが重要です。
（詳しいことについては後日書くことにします）

「実践する気はないが、仕事の都合上、とりあえず触れてみたという経験だけほしい」
「プログラミング学習を続けるかはわからないが、まずはやってみたい」
という方には大変おすすめです。とりあえずProgateだけやってみても十分良いでしょう。

「もうプログラミングを学習したことがあって、知らない言語でもある程度自力で調べてどうにかできる」
という方にはおすすめできません。効率が悪いです。

# さいごに、個人的な感想
Progateは手軽なので、「プログラミング勉強したいです」と言う方に差し出すには便利なサービスです。
一方で、Progateが優しすぎるゆえに、生徒側が自主性を持たないと定着しないとも感じています。
以前にTwitterで「プログラミングが上達しない人の特徴の1つとして、Progateばかりしている、ということが挙げられる」という旨のツイートを見かけましたが、その通りだろうなと思います。　
初めて触れる分にはProgateでいいと思いますが、「Progateに頼り切らず、自分で考えて、自分でやってみよう」という精神が大事である、ということも同時に伝えられれば幸いです。

（有料版はとりあえずこれから1ヶ月だけ使ってみようと思います）

[Progate](https://prog-8.com/)