みなさん、おはようございます!タカハシ(@ntakahashi0505)です。
こちらの記事は、タカハシが音声メディアVoicyの「スキルアップラジオ」にて放送した内容から、ピックアップしてお届けします!
今回のテーマは、ノンプログラマーがPythonで何をやればいい?です。
なお、以下で実際にお聴きいただくこともできます!
では、よろしくお願いいたします!
ノンプログラマーがPythonで何をやればいい?
今日は、ノンプログラマーがPython(パイソン)で何をやればいいかという話をしていきます。
Pythonとは、本職のプログラマーにも人気のプログラム言語です。
人気の理由は2つあります。
文法がシンプル
誰が書いても比較的同じ書き方になりやすいし、かつ、こう書こうねという書き方の指針が公式から発表されていて、みんながある程度それに従って書いています。つまり結果みんなが読みやすいというメリットがあります。
豊富なライブラリ
開発者の皆さんが独自のライブラリを公開できるしくみがあって、一流の開発者たちによるAI・機械学習、データサイエンス、Web開発などさまざまな分野の先端のライブラリを公開してくれていて、利用できます。それらを利用することで、たくさんのコードを書かずともさまざまなことが実現できるようになっています。
何でもPythonでやればいいということにはならない
ただ、ライブラリが豊富で何でもできるからといってノンプログラマーにマッチしているか、そうとも限らないということです。
例えば、職場でExcelをよく使うのであれば、VBAのほうが直接的に操作ができるんです。当然PythonでもExcelを操作するライブラリはありますが、ExcelにVBAのエディタが含まれているし、VBAを学ぶための学習教材も豊富です。
なので、わざわざPythonを使う理由は、とても特別な時を除き一般的には多くないと思います。
Googleのサービスをよく使うのであれば、Google Apps Scriptというプログラム言語が最有力候補になります。
Pythonでスプレッドシートを操作するライブラリはあるんですけれど、使うのにいくつかの認証周りで準備が必要ですし、GASのほうが圧倒的に楽です。
そんな理由から、なんでもかんでもPythonでやればいいという話にはなりません。
ノンプログラマーがPythonを使う検討をするケース
一方で、ノンプログラマーがなぜPythonでプログラミングをするのかという質問をよく受けるのでまとめておきたいと思います。
スクレイピング
1つめはスクレイピングです。プログラムによってWebサイトからデータを収集してくることです。
大量のデータをwebサイトから取得したいとき、同じwebサイトから毎日など定期的にデータを取得したいときは、プログラミングをしておくと便利です。
スクレイピングに必要なことは2つあります。
- WebサーバーからWebページのデータを取得する
- Webページのデータから欲しいデータだけを抽出する
このいずれの操作もとても使いやすいライブラリがPythonには用意されていて、ノンプログラマーにも学習しやすいし使いやすいです。
スクレイピングはVBAやGASでもできなくもないのですが、多くの場合Pythonのほうが、コード量がかなり少なく済みますし、やりやすいと思います。
なので日々の業務としてWebスクレイピングが多く発生するような人には、Pythonは良い選択肢になると思います。
データを処理・分析する場合
もう一つはデータを処理・分析する場合です。
Excelとスプレッドシートどちらかを使うかという話になります。
スプレッドシートだと、ひとつのスプレッドシートあたりに使用できるセルが1000万セルと決まっています。そもそも、そんなに使い切ることはあんまりないですが、何万という行数になってくるとけっこうスプレッドシート自体が重くなるし、GASで自動化してデータを処理しようとしても、実行時間6分の壁があって、6分超えると止まってしまいます。なので通常はたくさんのデータ量を処理し切れないわけです。
そういうときはスプレッドシートやGASをあきらめてPythonを使うことになります。その場合、Google ColaboratoryというGoogleが提供しているクラウド上のIDE(統合開発環境)を使って、Googleドライブ上のデータについてPythonプログラミングができます。
一方で、Excelはある程度のデータ量にも耐えられることが多いですし、分析ツールやPower Queryなどのツールもそもそも同梱されていて充実しています。
なので、データ処理・分析の内容によっては、そのままExcelを使ったほうが直接的でいいということも多いです。
ただ、データ処理・分析の内容によっては、Excelの基本機能では足りなくなることがあるので、そういうときはライブラリが充実しているPythonのほうが有利なケースも出てきます。
メリット・デメリットを見極めながら選択していくことになると思っています。
実務で使えるかどうかでPythonを学びましょう
まとめますと、Pythonはとても人気で、ライブラリが豊富でいろいろなことができる魅力的な言語です。
ただ、何でもできるからといってノンプログラマーにマッチしているか、そうとも限らないんです。
というのも、実務で使えないと、プログラマ的には学んで実践する機会が少なくなってきますので、まずそこを見極めましょう。
例として、「スクレイピング」や「データの処理・分析」でスプレッドシートやExcelなどではあまり有利ではないケースでPythonを使っていただくことになるかなと思います。
まとめ
ということで、今日はVoicy「スキルアップラジオ」の放送から「ノンプログラマーがPythonで何をやればいい?」をお届けしました。
タカハシのVoicyの放送はこちらからお聴きいただけます。
チャンネルのフォロー、コメント、SNSでのシェアなどなど、楽しみにお待ちしております。
では、また。