プログラミング

PyQはPython初心者に超おすすめ出来る教材だった。

Keito Ochiai

大学を飛び級で卒業後、MBA(経営大学院)に進学して経営戦略と会計を学ぶ。現在は、データ分析を用いて企業との共同研究に従事。趣味は読書とSwitch、カラオケ。最近はアソビ大全のトイテニスを極めてます。

Keito(@keito_dilige)です。

本稿では、文系からデータ分析業務に関わるようになった私が、Pythonのオンライン学習サービスであるPyQをレビューします。結論から言うと、PyQはPython初心者に超おススメできる教材でした。以下では、主なメリットやデメリット、PyQの効率的な使い方について解説します。

PyQとは:Python特化のオンライン学習サービス

(出所)https://pyq.jp/

PyQ」は、Python初心者~中級者向けのオンライン学習サービスです。PyQという名前から分かるように、他サービスとは違ってPythonに特化したオンライン学習ツールになっています。そのため、Pythonを集中的に学びたい人にとっては、他言語の誘惑を受けずにコツコツと学習を続けやすいはずです。

PyQは企業によって製作されているものの、一般社団法人Pythonエンジニア育成推進協会によって推薦されているサービスです。開発陣もPythonやプログラミング実務に精通した面々であり、その品質は担保されていると言えます。

実際にデータ分析業務を行っている筆者が使ってみた感想は、「初心者~中級者が知らない&実務で役立ちそうなポイントを押さえている」という印象でした。プログラミングの学習は独学や書籍でも十分に可能であるものの、”存在自体を知らないものを学ぶ”というのは難しいです。Pythonでネックになりそうな部分をあらかじめ学べるというのは大きなメリットだと感じました。

 

PyQの料金体系:2プランが選択できる

(出所)https://pyq.jp/

料金体系は、ライトプランとスタンダードプランの2つに分かれています。2020年9月時点では、個人ライトプランが3,040円(税込)、個人スタンダードプランが8,130円(税込)となっています。2つのプランの違いは、①PyQに投稿された過去質問の閲覧、②Pythonのプロによるサポート機能の2点です。

過去質問の閲覧では、過去のユーザーが遭遇した疑問点に当たることが出来ます。初心者が詰まるポイントは大体同じ部分なので、ここは参考になると思います。しかし、Google検索に慣れている人であれば、この機能は必ずしも必要とは言えないでしょう。

むしろ大きな違いは、2点目のサポート機能だと思います。直接プロに質問できるのは初心者に嬉しいですね。ただし、ライトプランと比べてかなり料金が異なるので、自身の学習スタイルに合わせたプランの選択を行うようにしてください。

PyQは全体的に初心者向けに作ってあるものの、一部表現が分かりにくい箇所や、専門用語を説明なしに使用している箇所、コードの内容説明を放置している箇所など、ユーザーに優しくない部分も見受けられます。筆者としては全くの許容範囲内であったものの、プログラミング初心者にはきつい部分があるかもしれません。その場合には、サポート機能付きのプランを選ぶのもアリかと思います。

プランの詳細については、PyQ公式がヘルプを詳しく書いていますのでご覧ください。

 

他サービスとの比較① :幅広く濃密な学習が可能である

Pythonを学べるオンライン学習サービスは、他にもたくさん存在しています。その中で、PyQがどのような立ち位置にいるのかを表で見てみましょう。

 ProgateAidemyPyQDotinstallAIAcademy
Python基本
Web開発×
AI・機械学習××
サービス上でのプログラミング出来る
出来ない

他サービスと比べると、幅広い分野で濃密な学習が出来るのがPyQというサービスになっています。これは、数々のオンライン学習サービスを試した筆者としても、納得できるところです。

PyQで濃密かつ多分野の学習が可能な理由は、Pythonに特化したサービスだからです。他サービスは、Python以外にもたくさんの言語を扱う必要があり、各言語における学習の「深さ」を担保するのが難しくなっています。その点、PyQはPythonのみに的を絞っているため、Pythonを用いて幅広い分野を習得することが出来るのです。

他サービスとの比較②:Web上でのコーディングが可能である

また、他サービスと比較したときのPyQの強みは、Web上でのコーディングが可能であるという点も存在します。ここはかなり重要な点で、個人のPC環境に左右されずにいつでもコーディングが可能なのは、大きなメリットと言えます。

初心者であれば、Pythonを使うまでの「環境構築」でやる気が削がれてしまう可能性があります。プログラミングを始めるには、Python自体のインストールや開発ソフトのダウンロード、Pathの設定を行う必要があり、初心者はこの時点で行き詰ってしまうのです。プログラミングを始める前に挫折してしまっては、元も子もありません。

上記の画像は、実際のコーディング画面です。PyQでは、「写経」と呼ばれるコードの写しが基本の学習スタイルになっており、自分でタイピング(コーディング)していく過程で体にPythonを染み込ませていきます。コードを画面上で実行すると、PyQのプログラムが自分のコードを自動で判定してくれます。判定に引っかからなければ、その学習はクリアになります。

画像の左側には、コードの解説が付いています。基本的には、PyQが用意したコードを写経することから始めて、写経が終わった段階でコードの解説を読んで理解するというのが、学習の一般的な流れになっています。そのほかにも、豊富な演習問題が存在しています。

コースを設定して集中的に学習ができる

(出所)https://pyq.jp/

PyQでは、学習したいコースを自分で設定すると集中的に学習が行えます。

上記は実際のコース選択画面です。分野別に学習プランがまとまって整理されているため、自分が学びたい分野を徹底して学ぶことが出来ます。各学習は「クエスト」と呼ばれており、短いクエストを消化していくことでテンポよく学習を進めることが出来ます。

また、各コースには目安となる学習時間が付記されており、どのくらいの時間を割けばよいのかが明確になっています。例えば、Webアプリ・APIのコースをイチから学習しようとすると、73時間の学習時間が必要とされています。

ただし、別のコースと被っているクエストも大量に存在しているので、すべてのコースをイチから学習する必要はありません。むしろ、クエストを進めていくほどに、新たな学習量が減って効率よく各分野を学習できます。

もちろん、コースを設定しなくても学習をすることは可能です。以下の画像のように、各クエストには分かりやすいタイトルが付けられていて、自分の学びたい知識だけを学ぶことも可能になっています。様々な学習スタイルに合わせることが出来そうです。

(出所)https://pyq.jp/

学習時間を可視化できる

(出所)https://pyq.jp/

この機能はおまけ程度だと思いますが、一応自分の学習時間を自動でグラフにしてくれています。「1日〇時間勉強した!」というモチベーション維持の方法を取っている方には良い機能だと思います。

学習時間だけではなく、1日に何回クエスト(学習)を開始したかが分かるため、自分がどのくらいのペースで学習できているのかも分かりやすいです。

PyQで学べる分野は主に4つある

PyQの概要や料金体系、他サービスとの差異などはご理解いただけたでしょうか。ここからは、PyQのメリットをどんどん紹介していきます。

PyQで学べる分野には、主に以下の4つが挙げられます。

  • Python基本
  • Python実務
  • Web開発
  • データ分析(機械学習・統計学)

「Python基本」はその名の通り、Pythonを使う上で欠かせない文法事項を扱っています。for文やif文といった基本事項から、オブジェクト指向プログラミングまで、Pythonでのコーディングに必要な知識を網羅的できます。PyQはPython特化のサービスだけあって、他サービスと比較しても網羅度は高めです。

ただし、量が多すぎる点は人によってデメリットになるかもしれません。あまり基本事項ばかりインプットしても飽きてしまうので、たまには他分野に手を出すのが良いかも。この辺りはモチベーション管理が重要になりそうです。

「Python実務」には、PyQ独自の切り口が存分に活かされています。他サービスでは通常、Pythonの基本事項や各分野の「知識面」にフォーカスをします。しかしPyQは、実務上での振る舞いを重視したサービスを提供しています。

具体的には、ユニットテストの方法や関数・クラスの使いどころ指南など、「知識面」だけではない「実務で必要な知見」を提供してくれています。こうした知見は、独学で身に付けることが大変難しいものとなっているため、実務に加わる前の駆け出しプログラマーにとっては嬉しい機能です。

「Web開発」では、Pythonを用いたWebアプリの開発からスクレイピング(Web上のデータを探査する技術)まで、Webに関わることを広く学べます。PythonでWeb開発が行われることは多くないものの、Web開発の知識を慣れ親しんだPythonで得られるというのは、初心者にとってコスパの良い学習になるはずです。

「データ分析」では、Pythonの本領といえる機械学習や統計分析を学ぶことが出来ます。NumpyやPandasといったデータ分析では必須のライブラリを学んだり、scikit-learnといった機械学習用のライブラリを学ぶことが出来ます。

ただし、これらの内容はごく簡便な物であり、本格的なデータサイエンスを学びたい人は別途学習が必要になります。PyQでの学習はあくまでも、「Pythonで機械学習ってどうやるの?」といった初心者レベルのものであり、各分析手法の細かい内容については解説されていません。この辺りは、書籍での自習が求められており、実務で分析を行えるレベルには至りません。

 

Jupyter Notebookの練習ができる

(出所)https://pyq.jp/

機械学習などのコースを学習すると、「Jupyter Notebook」の練習を行うことが出来ます。Jupyterは、Python用の対話型開発ツールです。通常の開発ツールでは、Pythonのコードをすべて記述した後にコードを実行するのですが、対話型のツールだと画像のようにコードを細かく分けて記述することが出来ます。

例えば、お試しで書いてみたいコードがある際には便利なのがJupyterです。ちょっとしたコードを書く時には、コードのすべてが繋がっているという状態はあまり使い勝手の良いものではなく、逆に小さい単位で実行できる方が開発の効率を上げることが出来ます。

Jupyterは、「ちょっとずつ」プログラミングするのにうってつけの開発ツールであり、Python使用者の多くがこれを用いています。PyQではJupyterの練習も出来るため、実際の開発ツールに困らない状態を作ることが出来ます。これは大きなメリットだと思いました。

(補足)Jupyterを使うと、上記のようにグラフを1つずつ適宜表示することが出来ます。一気に開発をしたいというよりも、お試しのコードをいくつか書いてみたい場合には、Jupyterはやはり便利なツールと言えます。

まとめ:Python特化ならPyQがおすすめ

いかがでしたか。PyQは、Pythonに特化したい初心者には、本当におすすめ出来るサービスです。Web上でのコーディングによって環境構築の面倒さを排除するだけでなく、幅広い分野を網羅的に学習することが出来ます。

他サービスと比較しても品質の良いサービスだと感じたので、気になった方はぜひ使ってみて下さい!

Twitter(フォローや質問等)
メールでの質問やお仕事依頼

人気記事

no image 1

1日2時間でTOEIC800点台へ。就活や昇進に使える、超効率的な勉強法。
その秘訣とは……
1:基礎力を底上げすること
2:戦略的に解くこと

2

本稿では、転職における「市場価値」を高めるための方策を提案します。本稿で扱う内容は、すべて経営戦略に基づいたものになっており、「そもそも市場価値とは何か」といった定義から、「市場価値を高めて維持する方 ...

© 2020 Diligent Life