素人がゼロからWebサービスを作るノウハウ!③学習はpaizaにする理由

素人がゼロからWebサービスを作るノウハウ!③学習はpaizaにする理由

前回は、言語にPythonを選んだ理由を説明しました。今回は学習方法について説明します。

基礎知識を身に付けるに当たって、書籍を使うか、ネット上の記事を読んで勉強するか、教室に通うかなどの選択肢があると思います。どの方法でも良いと思うのですが、私は前提条件として下記の5点を洗い出しました。

・自分が素人であること

・あまりお金をかけたくないこと

・短期間&自分のペースで勉強したいと

・周囲に聞ける人がいないこと

・英語が苦手なこと

このことを前提に考え、たどり着いた勉強スタイルは paizaラーニング で基礎的な知識を身につけて、足りない部分や専門性の高い部分は書籍、具体的な方法はWebで検索して理解していくというものです。

Web検索で1から勉強していくのは上級者向けだと考えた

まずは、学習サイトを使わなずWebで分かりやすいサイトを検索して勉強しようと考えました。Webだけの勉強だと無料で良いのですが、まず自分のレベルに合ったサイトにたどり着くまでに時間がかかります。検索して出てくるのは専門的なものが多く理解できずに、理解できないことを調べるために他のサイトを調べさらに他のサイトを・・・という感じでネットサーフィンが始まってしまいます。

仮に自分のレベルに合ったサイトを見つけても、2点問題がありました。1点目は開発環境を自前で用意する必要があり用意できても、サイトで説明されている内容と微妙に環境が違っていて、学習内容とは無関係のところでトラブルが発生して、何の学習をしているのか分からなくなります。
2点目は、学習したい内容が変わるとまた別のサイトを探す必要があり、別のサイトでは開発環境も教え方も違うので学習の効率が落ちてしまいます。

ただし、Webでは、具体的な問題解決の方法や、具体的な設定方法、具体的なソースコードの書き方が沢山あります。特に、Qiitaでは沢山の具体的なノウハウが投稿されています。teratailでは、3時間以上調べても考えてもわからなかったことを質問して15分で回答が返ってきて感激しました。開発段階になると具体的な方法を知りたいことが増えるので開発段階に入ったら大いに活用しましょう。また、日本語で解説しているいいサイトがなければ、あきらめて英語のサイトに行きましょう。英語がわからなくてもGoogleChromeで右クリック→日本語に翻訳としてしまえばOKです。

教室に通わなかった理由

これは、簡単です。料金が高いのと自分のペースで勉強できないからです。お金と時間に余裕がある方はいい選択肢かもしれません。

専門的な部分は書籍、できれば電子書籍を使う

書籍にも専門性の高いものから、初心者向けの者までたくさんあります。そのため、自分に合った書籍を見つけられれば重宝しますが、Web検索で勉強するのと同じで開発環境を整えなくてはならないという問題があります。また、自分に合った欲しい情報が載っている書籍に巡り合わないと何冊か同系統の参考書を買う羽目になって費用がかさみます。

私のお勧めは、後述する学習サイトで基礎的な知識を身に着けたうえで、少し専門性の高い領域をきちんと理解するためには書籍を活用するという方法です。やはり書籍は専門性の高い内容を体系立てて学習するには必要になってきます。
ですが、まずは学習サイトで基本を身に着けてからでOKです。
こちらの記事で紹介していますが、書籍を買うなら電子書籍がおすすめです。理由は、複数の画面に同じ書籍の違うページを表示させられるためです。
コーディングしながら勉強する際にはかどります。

複数端末でkindle表示
複数端末で同じ参考書を表示させている様子

学習サイトを選んだ理由

先ほど説明したように、Web検索で知りたいことだけを探すのは結構大変です。

学習サイトなら、色々な言語やツールが一覧で表示されているのですぐに学習したい内容を見つけて学習が始められます。また、教えかたやレベルも統一されているので学習がしやすいです。なれてくるとこの学習サイトでは、どのレベルはまでは教えてくれて、どのレベルからは教えてくれないというもの分かって来ます。
下図はpaizaラーニングの多くの言語やツールが網羅されており一覧で確認できるので、勉強したい内容にすぐにたどり着きます。

paizaラーニング 講座一覧

次に、学習サイトを探すにあたり、動画で説明してくれる学習サイトにしようと決めました。

理由は、やはり動画は理解しやすいという点が挙げられます。
下図はラーニングピラミッドと呼ばれている、学習補方法と定着率を現した図ですが、paizaラーニングの場合は、動画での動画での説明(視聴覚)+デモンストレーション+自分でコーディング(自ら体験)が含まれているので、学習効果は高いと考えられます。

プログラムの学習は実際にコードを打ちながら進めるのがよいと思いますが、テキストベースの学習だと、読んでコーディングしてを繰り返すことになり、説明文とエディタを行ったり来たりすることになります。動画でも行ったり来たりはありますが、説明文を読みながらやるよりは楽だと感じました。

また、テキストベースだと、無意識のうちに読み飛ばしていたり、単語の読み方がわからなくて独自の読み方を編み出してしまったりします。

そして、テキストベースで学習する際は特に、全てコーディングしながら学習するのが必須になることが多いかと思います。なぜなら、前の章で書いたコードをベースに次の章で学習していくスタイルが多いため、前の章でコードを書くのをさぼると次の章でコーディングすることができなくなったりします。学習するうえで、コードを実際に書いて動きを見るというのはとても重要ですが、時間がないときや疲れた時は、コーディングは動画を見ているだけでも、動画中でコーディングをして結果を表示してくれるので便利です。

学習サイトにpaizaラーニングを選んだ理由

Paizaを選んだ理由1:開発環境がセットになっている。

素人がプログラムの勉強をしようとすると、開発環境の違いによるトラブルで学習を進められなくなることが多いと思います。プログラムの勉強に集中したいのに途中から開発環境の勉強になってしまったりして、しかもこの開発環境っていうのが結構難解でハマります。

Paizaラーニング以外にもいくつかの学習サイトは、開発環境を学習用のWeb画面で使うことができるようになっています。開発環境を用意する必要もなく、環境の違いによるトラブルが有りません。これは学習に集中するうえで大切です。

出典:paizaラーニング

Paizaを選んだ理由2:自分の学びたいコンテンツが多い

私はPythonで開発を進めようと決めていたのですが、paizaラーニングは2018年12月時点で4つもPython関連のコンテンツがあり、充実していると感じました。

出典:paizaラーニング Python3入門講座一覧

またPython以外にも多くの言語やツール用のコンテンツが用意されていて自分にぴったりだと感じました。多くの学習サイトはお試しで受講できることが多いので、実際に無料アカウントで登録してみて、自分に合っているかを検討するとよいと思います。

学習サイトの選択は何を重点的に覚えたいかによって変わってくると思うので、いくつかの学習サイトを試してみて、決めるのがよいかと思いますが、素人がPythonを使ってWebシステムを作りたかったらpaizaラーニングで問題ないでしょう!

ちなみに、基本的な学習はpaizaラーニングにしていますが、paizaラーニングには無い内容もあったりするので、そんなときはドットインストールを使っています。ドットインストールPaizaラーニングより上級者向け(といっても素人にもわかりやすく教えてくれますが)という感じはしますが、とても多くのツールや言語を網羅しているので、ちょくちょくお世話になっています。2018年12月時点でドットインストールは367レッスン5,473本の動画を提供しており、かなり高い網羅度です。

Paizaを選んだ理由3:料金が安い!

各学習サイトの料金の比較は行いませんでしたが、Paizaラーニングの場合は月に600円/月(年間契約)から980円/月 (1か月契約)でしたので、この程度なら私の財力でもなんとかなる範囲です。学習サイトというかe-lerning全般に対して言えることですが、コンテンツの質が非常に高いのに、値段がとても安くてコスパ最高です。運営会社の視点で見れば、コンテンツを一度作れば、低いランニングコストで利益を生み続けるので、費用をかけてもみんなが使って満足するような質の高いコンテンツ作りが行えますね。人が教える形の教室だと、講師の人件費がかかるので、どうしてもコンテンツそのものへの投資割合を少なくせざる得なくなると思います。

Paizaラーニングの場合有料会員になると、全てのコンテンツを学習出来るだけではなく、質問や、動画の再生速度を変えられるようになります。(他のサイトも同じような感じです)

再生速度を変えられるのは重宝しました。2倍速で学習して、理解出来なかったらもどって速度を落としたり一時停止して自分で考えるという使い方が出来るので、自分のペースで勉強が出来ます。また、1回目の学習では実際に手を動かしながら学習して、一度勉強したけど忘れたから確認したいような場合は2倍速で聞き流すといった使い方も出来ます。

Paizaラーニングは初心者でも学習出来るようになっているので、難しい部分をざっくり削って説明する事が多いと思います。

出典:paizaラーニング 利用者の声

細部に入ってしまうと初心者が理解できなくなってしまうので、あえて、難しい部分をざっくり削った内容で作られているのだと思います(いい事だと思います)。 そのため、『なぜその一行が書かれたの?』とか、『今までにない書き方だけで説明ないの?』『この設定ってどう言う意味?』って思う事が出て来ます。ですので、Paizaラーニングで学習して、気になった点は、書籍を活用したりWebで検索して気になった点を把握するような使い方が良いと思います。Paizaラーニングで基礎知識が身についているので、Web検索で出てくる専門性の高い内容もある程度理解出来るようになります。

私の場合最初はPythonの学習を行おうと思いPaizaラーニングを使いましたが、システム構築を進めると様々な知識が必要となってきてしまいます。

例えば、データベース、JavaScript、Linux、AWSなどです。

その為、言語を限定して勉強することだけを考えず色々な言語やツールについて体型立てて教えてくれるPaizaラーニングなどのサービスを一つ見つけておくのは学習を進めるうえでオススメです。

学習方法をルーチン化しておくことは非常に効率的ですので、最初の段階で学習方法を決めておきましょう。

私の場合は学習したい内容が決まったら

Paizaラーニングで手を動かしながら学習
②書籍で専門的な部分、Webで具体的な内容を学習
Paizaラーニングの内容を忘れたら速度を上げて聞き流す

というルーチンです。

次は、サーバーにAWS EC2 t2.microを選んだ理由をご説明いたします。

連載記事一覧

素人がゼロからWebサービスを作るノウハウ!①最初にやること
素人がゼロからWebサービスを作るノウハウ!②Pythonにする理由
素人がゼロからWebサービスを作るノウハウ!③学習はpaizaにする理由
素人がゼロからWebサービスを作るノウハウ!④サーバーをAWS.EC2.t2.microにした理由
素人がゼロからWebサービスを作るノウハウ!⑤開発環境もEC2
素人がゼロからWebサービスを作るノウハウ!⑥Dockerを使おう