プログラミング初心者が2ヶ月Pythonを勉強してきた方法と、図書館の電子書籍貸出サービスのすごさを語る

プログラミング初心者の自分が、どうやってプログラミング言語のPythonを勉強してきたのかについてまとめます。

Pythonのコード書いていないと落ち着かなくなりました。

スクレイピングやクローラーやBotが作れたらいいなと思って、Pythonを2022年の2月中盤から勉強し始めました。この期間どっぷりとPythonの基礎を学び、エラーの山に崩れ落ちそうになりながらも、エンジニアの先輩に助けられながらスクレイピングは余裕でできるようになり、TwitterのBotを作れるようになりました。コードの善し悪しは別にして。

ここで、プログラミング初心者の自分が、プログラミング言語のPythonをどうやって勉強してきたのかについてまとめます。

プログラミング勉強の基本はUdemyと書籍

本職はコンテンツ制作の人間なので、文系です。ただ、サーバーの運用は個人でやっていたため、適性はあったかもしれません。

サーバー運用はわからないことがあったら調べて構築することがほとんどで、体系的に学ぶために書籍を購入したことはありませんでした。

プログラミングやるならPythonが書きやすいという情報は知っていたため、とりあえずPython触ってみっか。という感じで情報を漁り始めましたが、公式ドキュメントは文字だらけで読む気力はなくなります。

そこで目を付けたのがオンライン学習のUdemyです。ちょうどセールをやっていて、まず買ったのは定番の現役シリコンバレーエンジニア酒井潤さんの動画「現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル」です。

動画だけで28時間あり特大ボリュームなので、最初の基礎をさっと見ながらコードを写経で打ち込んでみて、プログラミングの動きを体験します。そして、自分のやりたいことを反映させながら実践していく。わからないことがあったらUdemyの動画へ戻って…の繰り返しでなんとかなります。

ざっくり、Pythonの基礎はUdemyの現役シリコンバレーエンジニアが教えるーーを見ながらやれば70%-80%くらいのことは習得可能だと思います。

僕自身は現在はクラスがだいたいできて、MongoDBのデータベースをかじった程度ですが、Bot運用に必要なことはほとんどこれで学べています。

Udemy動画内の応用、プロセス並列化やインフラ自動構築は、時間を見てやればいいやくらいなので、あとから勉強するとして、基本的なことを学ぶだけでもボリューム的に大満足。これが1500円程度で購入できたのは非常にお買い得です。

あとは、スクレイピングとクローラーを作って自動で情報収集をしたかったので清水さんの「Pythonによるビジネスに役立つWebスクレイピング(BeautifulSoup、Selenium、Requests)」と「【3日で学べる】PythonでWebスクレイピング・クローリングを極めよう!(Scrapy、Selenium編)」を買いました。この二つはスクレイピングの基本がわかるし、説明が丁寧で、講師の方へ質問したらすぐ返事が返ってくるので大変おすすめです。

書籍はテーマごとに買いました。

初心者にうってつけの本

独学プログラマーは、書籍名が一時期話題になっていたことがあり、名前だけはうっすら記憶にあったことと、初学者が手に取る一冊ということで各所で目にしたため購入しました。

勉強を始めたてのころは内容的には問題なく進められると思います。

ただ、Udemyと同時並行でこの書籍を読んでいると、本の内容が広く浅いため、コードに落とし込むときには大抵検索していくことになります。

スクレイピング

オライリーの本をはじめて買いましたが、初心者がいきなり飛びつくと痛い目にあいますね。関数の使い方がわからずに読み進めたら第1章でこてんぱんに打ちのめされました。

関数の宣言や戻り値の動きを知らなかったので、何が書いてあるのかも全く分からず、Udemyに戻って勉強してから挑むことに。

内容的に濃く、満足いく内容なんですが、翻訳の精度が悪いため、読みにくいのが難点です。

上記オライリーの本は満足いく内容なんですが、翻訳の精度が悪いため、新しめの日本人が書いた書籍を探しているとこの本が見つかりました。スクレイピングは極めたいと思っていたので購入。

Udemyのスクレイピング動画より一歩進めた内容が書いてあるため、細かい所に手が届く内容なのは、補完としてうまく機能してますね。買って良かった。

Pandasのデータ分析

定番と言われているPython 2年生データ分析の仕組みです。3章までしか読んでいませんが、非常にわかりやすい。入門の一冊としていいですね。

機械学習

いずれ機械学習も触ってみたいと思っているのでPython 3年生も購入。まだ読んでないので評価はこれから。

これらの書籍は、新品で買うと1冊3000円そこらします。技術書は高いですね。

僕は運良くキャッシュレスアプリのポイントが貯まっていたので新品を買いながらアマゾンで中古本を漁りました。技術書は結構高いので、アマゾンやメルカリで中古を探すのと、後述する近所の図書館を利用するのがおすすめです。

紙・電子書籍が借りられる図書館を利用するのはアリ

プログラミング学習本が高いということに気づいてからブックオフやアマゾン中古を漁る毎日を送っていました。

何冊か買い進めていくと、「今学習・勉強したい内容と書籍の内容がズレてたら嫌だな」と思うようになります。本屋さんで立ち読みして確かめられるならいいんですけど、プログラミング学習が一般化しているとはいえ、本屋のラインナップは良くないことが多いです。お目当ての書籍が置いてある本屋を探す方が大変かもしれません。

そこで思いついたのが、近所の図書館を利用する方法です。

僕は東京23区内に住んでいるため、図書館が身の回りに5箇所くらいありました。しかも、最近の図書館はネットで蔵書検索ができるため、自分が読みたいプログラミング書籍がどの図書館にあるのか一発でわかります。

仮に近くの図書館で読みたい書籍がなくても、もっと勉強を進められる中級者以上のレベルの本が置いてあることが多く、図書館にMacもっていってプログラミング勉強すればレベルアップに繋がると思います。

しかも、最近の図書館は電子書籍で貸し出すサービスがあるので、家にいながら本が借りられます。

図書館で利用手続きをしてしまえば、24時間本が借りられてPC・タブレット・スマホで本が読めるので本当に便利ですよ。

電子書籍が借りられる電子図書館一覧はこちらからどうぞ。

電子図書館(電子書籍貸出サービス)実施図書館自治体の公共図書館における「電子書籍貸出サービス」を実施している図書館となります。(電子出版制作・流通協議会 電子図書館・コンテンツ教育利用部会まとめ)

aebs.or.jp

図書館なんて学生時代から利用してなかったのですが、国民のために存在してるありがたさを感じましたね。税金払ってるんだから活用させてもらいます笑

どうしてもエラー解決ができなかったら質問サイトを活用する

プログラム書いててエラーを解決できそうもないと思ったら、いさぎよくstack over flowやTeratailで質問してしまうのがいいですね。

少ない知識でエラーを解決するのは困難なので、時間の無駄になってしまいます。

個人的にはstack over flowの英語版で質問するのがおすすめです。日本人より親身になってくれる人が多いと感じます。

休みの日なんかは1日15時間くらいプログラム書いてたり、個人的にあってるんだなと思って楽しく続けられています。プログラム書けると仕事で楽できていいですね。

向いていない人・買い替えなくてよい人

現在の機器や設定で同じ用途を満たせている人には、買い替えや構成変更は向いていません。製品仕様やOSの手順は公開当時から変わっているため、最新情報はメーカーや公式ドキュメントで確認してください。

AUTHOR

UPTIME

「ちゃんと使う」を軸に、ガジェットや作業環境を買ったあとまで検証するメディアです。