変わりモノがいい!

変わりモノには価値がある・・・ハズ?

書籍紹介:退屈なことはPythonにやらせよう

Pythonに慣れるには良い本かも。

この本は、ページ数が560ページという非常に厚い本です。 名前はちょっと変わっていますが、内容は非常に堅実な内容で、僕は仕事をするうえで本当に重宝しました。 
退屈なことはPythonにやらせよう 
    -ノンプログラマーにもできる自動化処理プログラミング
出版社:オライリージャパン

f:id:ken2017:20200215095314j:plain 

どんな内容なの?

 本書の目的というかメインディッシュは、処理の自動化、に関するものです。 Pythonというと機械学習、と、機械的に思い込んでいる人がいるかもしれませんが、本書はそれをターゲットにしているのではなく、毎日起きていることを題材にPythonを使えば、ノンプログラマーでもこんなに簡単に対応できるよ、ということを示してくれています。 でも、いきなり本題に入るのも読者側も準備しきれない可能性もあり、居酒屋に行ったときに出てくる、お通し、ではないですが、第一部にPythonプログラミングの基礎、というものを置いて、Pythonという言語に関する基礎的なことに関する記載を行っています。 ここまでで150ページとなります。 読者側としたら、560ページの本に壁を感じなければ、入門書を買って基礎を勉強し、次に応用の書籍、というステップを踏むよりも、いきなり本書から入っていくのも効率的かな、と感じました。

メインディッシュには何が入っているの?

何が入っているかの説明をする前に、僕がアメリカで行っていた仕事の一つを紹介します。 それは、本当に手間がかかる仕事で、かつ、時間的な制約が大きい仕事でした。 それは、顧客の工場内設備の生産性向上が至上命題になったときから始まりました。 製造装置のサプライヤーである我々は、納入した装置の稼働率を改善することに協力するよう要請を受けました。 活動開始です。
顧客は毎日、装置の稼働率データを装置単位に送ってきます。 データ数は数百。 また、毎日、どの装置でどんなアラームが発生したかというデータも送られてきます。 警報レベルも含めると、これも数百になることもあります。 そして、装置のメンテナンスやトラブルシューティング、ハードやソフトのバージョンアップが日々行われており、それらに関する情報は日々データベースに蓄積されて行きます。これらのデータを用いて、各装置に何が起きているか、稼働率を下げている原因は何なのか、何をすれば良いのかを判断し、行動につなげていく必要がありました。 これを無手勝流に行うのでは時間は膨大にかかるし、精度も良くないのでPythonを使ってデータ処理することにしました。 その際に使ったのが本書です。
本書を活用することで、装置ごとの稼働率を時系列で並べ、それに装置ごとのアラームを時系列で加え、それに装置ごとのメンテナンス情報他を時系列で加え、週の纏めとして装置ごとの稼働率平均と総アラーム数、メンテナンスによる停止日数が自動的に出来上がるようにしました。 このデータを顧客とのミーティング前に最前線で活動するメンバが把握し、資料化して顧客と活動内容の議論を行ってきました。 これは今も続いています。

処理の自動化って何?

我々の日々の仕事を考えると、メールやWebで入手した複数のデータを整理し加工して新しいデータとして関係者に発信する、ことを1日当たり数時間使って続けています。 これはこれで大切で、でも困るのは、続ければ続けるほど、その仕事から離れられなくなるという事実です。 結構問題です。 ということで処理の自動化は地味なテーマではありますが、非常に大切なテーマです。
ということで、処理の自動化に必要な機能は、
・電子メールの取り扱い(読み書き)
・テキストの認識
・ファイルの読み書き(エクセルやCSVファイルの取り扱いを含む)
・ファイルの管理
・文字列データ整形
・プログラムの自動実行(Pythonから他のプログラムの起動も含む)
とかが必要になります。
特にエクセルやCSVファイルの取り扱いやそのデータ処理に関して熟知することは処理の自動化に係わらずPythonを活用するうえで強い武器になります。

おまけ

本書には、多くの演習問題が記載されているが本の中には、その解答例は載っていない。 このことについて不満の声が多かったようで、解答例がGitHubに加えられていた。(購読者の特典とするため、ZIPファイルにはパスワードを設定してあるとのことで、 パスワードは、11.3.4節の本文に現れる最初の英単語3つをつなげたもの、とのことです)

いくらノンプログラマ向けとは言っても必要最低限の知識は持っていないと、課題解決は出来ないわけで、演習問題を考えるということを通じて能力を高めることも良いかな、と思います。 レッツ チャレンジ!

github.com

おまけのおまけ

なんと、この本、英語版で良ければネットで全文公開されています。
ここです。 本書の内容を把握して購入したいという人にはお勧めかも。

automatetheboringstuff.com

 

 

プライバシーポリシー お問い合わせ