PyQオフィシャルブログ

Pythonのオンライン学習プラットフォームPyQのオフィシャルブログです

【Pythonエンジニア列伝:vol.5】片柳薫子さん その5〜PyLadiesや片柳さんの活動の今後の展望について〜

f:id:nana_yu:20180712092722j:plain

この記事はPythonエンジニア列伝第5回その5です

Pythonエンジニア列伝は、「Pythonエンジニアたちのインタビューを通して、Pythonを使う人達がどんな人なのか、どんな場面で活用しているのか、なぜPythonに出会ったかなどを紐解く」連載です。

連載はトピックごとになっているので記事単体でも読むことができます。

バックナンバー

  • 導入・索引…片柳さんのご紹介とインデックスページです。
  • その1…農業研究分野でのPythonデータ処理について
  • その2…「PythonユーザのためのJupyter[実践]入門」とPyQについて
  • その3…女性によるPythonコミュニティ「PyLadies Tokyo」について
  • その4…女性にとっての技術コミュニティについて

pyq.jp

PyLadies Tokyoの今後の課題と展望

f:id:nana_yu:20180702172029j:plain
haru現在も参加者が増えるなど成長中の「PyLadies Tokyo」かと思いますが、今後の課題はありますか?

片柳内輪感が出過ぎないように気をつけたいですね。 メンバーが多くなってくるとどうしても内側に向かってしまうので。いま運営に関わっているスタッフはみんな積極的に提案したり発信したりしていて、とてもいい雰囲気で動いています。とてもありがたいです。
f:id:nana_yu:20180629171145j:plain

片柳Pythonコミュニティの入り口の一つとして、今後も多くの方にPyLadies Tokyoを知って頂きたいですね。Slack参加者も常時受け付けています。
f:id:nana_yu:20180629171145j:plain

PyLadies Tokyo


片柳さんのPythonistaとしての今後の展望

f:id:nana_yu:20180702172032j:plain
kamekoでは、片柳さん自身の今後の展望などお聞きしてもよろしいですか?

f:id:nana_yu:20180712102944j:plain

片柳私は現在、基本的にデータの整理と解析にしかPythonを使っていないので、機械学習を取り入れた研究をしていきたいなと思って。今日も本を買って勉強してました。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruどんな本を買ったんですか?

片柳有賀さん(@chezou)らの「仕事ではじめる機械学習」という本です。ちょうど今日イントロを読んでいたらJupyter本を読むといいでしょうって書いてくれていて、ありがたい!と思っていたところです。
f:id:nana_yu:20180629171145j:plain

仕事で始める機械学習

片柳あと、自分が研究者だと名乗ることによって研究者や大学関係の方から講演依頼がきたりするようになりました。同じ研究者にもPythonが広がっていくと嬉しいので、お話をいただいたら積極的に引き受けるようにしています。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruとなると、今後も初心者の方々との交流は継続したいですか?

片柳そうですね。プログラミング初学者だととにかく自分で考えても解決しないことが、人に聞けば一発で終わることが多いです。

自分もpyhackやPythonもくもく会などに参加して色々教えてもらうことで前に進んできたので、職場やインターネットでは得られない知識がコミュニティに参加すれば得られるということを多くの人に知ってもらいたいし、自分自身もコミュニティにおいて初学者の方が学ぶ一助となれればと思っています。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kameko片柳さんは初期から「もくもく会」に沢山参加されていて、女性でそういう人は少ないイメージです。

初学者の人は「もくもく会」って玄人の人というか、コアな人がいくイメージが強いからかな、と感じるのですが、そういうことってありませんか?

片柳 参加するまではそういうイメージを持つ人も多いですね。私も初めはすごく緊張しました(笑)。でもそんな怖い場所ではないですよ。

自分のやりたい事を持ち寄って作業して、疑問が浮かべば誰かしら答えてくれます。

もちろん、それぞれやりたいことを持ち寄っているので、疑問をただ聞くだけではなく、例えば本を一冊持っていって、これをやるぞ!と思っていくと得られるものは多いと思いますよ。

f:id:nana_yu:20180629171145j:plain

片柳ぜひ、紳士淑女のPythonコミュニティにどんどん参加して、Pythonの理解を深めていってください。
f:id:nana_yu:20180629171145j:plain

まとめ

f:id:nana_yu:20180712103035j:plain

5回に渡って片柳薫子さんにお話を聞きました。いかがでしたか? 研究分野でのPythonの活用や共著書「PythonユーザのためのJupyter[実践]入門」、PyLadies Tokyoのお話など、多岐に渡る貴重なお話をありがとうございました。 女性のPythonistaやデータ分析に興味のある方には有益な情報も多かったと思います。

活発に活動しているPythonエンジニアの皆さんがどのようにPythonに触れ、学び、活用してきたかを知ることは 学習者にとっても有益ではないでしょうか。

Pythonエンジニア列伝は過去の記事も大変好評頂いています。よろしければそちらもご覧ください。

過去のエンジニア列伝

第一回:清水川貴之さん

第二回:鈴木たかのりさん

第三回:石本敦夫さん

第四回:cocoatomoさん

  • その1…技術ドキュメント翻訳との関わりや歴史を伺いました
  • その2…Pythonドキュメント日本語訳プロジェクトの足跡を聞きました。
  • その3…PEP454と翻訳にともなうグローバルなコミュニケーションのお話を聞きました。
  • その4…プロジェクトへの参加方法とPythonコミュニティのメリットを聞きました。
  • その5…語学面でのドキュメント翻訳の難しい所や、モチベーションの保ち方を聞きました。
  • その6…cocoatomoさんというPythonistaのこれまでの足跡を聞きました。
  • その7…(最終回)cocoatomoさんの今後の展望や活動について・PyQについてききました。

第五回 片柳薫子さん バックナンバー

  • 導入・索引…片柳さんのご紹介とインデックスページです。
  • その1…農業研究分野でのPythonデータ処理について
  • その2…「PythonユーザのためのJupyter[実践]入門」とPyQについて
  • その3…女性によるPythonコミュニティ「PyLadies Tokyo」について
  • その4…女性にとっての技術コミュニティについて

【Pythonエンジニア列伝:vol.5-4】片柳薫子さん その4〜女性にとっての技術コミュニティについて〜

f:id:nana_yu:20180712091348j:plain

この記事はPythonエンジニア列伝第5回その4です

Pythonエンジニア列伝は、「Pythonエンジニアたちのインタビューを通して、Pythonを使う人達がどんな人なのか、どんな場面で活用しているのか、なぜPythonに出会ったかなどを紐解く」連載です。

連載はトピックごとになっているので記事単体でも読むことができます。

バックナンバー

  • 導入・索引…片柳さんのご紹介とインデックスページです。
  • その1…農業研究分野でのPythonデータ処理について
  • その2…「PythonユーザのためのJupyter[実践]入門」とPyQについて
  • その3…女性によるPythonコミュニティ「PyLadies Tokyo」について

pyq.jp

女性にとっての技術コミュニティ

f:id:nana_yu:20180702172029j:plain
haru実際問題、技術系のイベントに抵抗感を感じる女性は多いのでしょうか?

片柳発表などに対してマサカリを投げる*1方なども居ないわけではないので、そのようなイメージから技術系分野のイベントに抵抗のある方はそれなりにいるんじゃないかと思っています。

私は最近「投げてもらっていいよ!」と、建設的な議論を歓迎できるようにになってきたのですが、最初の頃はやはり怖かったと思います。

f:id:nana_yu:20180629171145j:plain

片柳あとはナンパなどですかね。不愉快な思いをした経験があったり、そのような心配があるのだと思います。ただ、私はPythonのコミュニティではそういうものを感じたことはそれまで無かったです。

その手の人を目撃したのは去年のPyCon JPがはじめてです。「しつこくLINEアカウントを聞いてくる男性がいます。規約違反なんで注意してください。」と報告してくれた女性がいて、実際にその男性が別の女性にもアプローチしている現場を目撃し、こんな人がいるんだなとびっくりしました。

近くにいた別の男性がハラハラしてブロックする努力をしていたのが救いでした。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruそれは、良くも悪くもPythonの広がりを感じるエピソードですね。

片柳そうなんです。Pythonの認知度が高まりコミュニティとして大きくなってきたからこそ、そのような行動規範に反している人も現れてくるんだなと感じます。

これらの行動規範はPyCon JPでもPyLadiesでも明文化されているので、私達参加者も「行動規範に違反しているよ」と伝えられるようにしていかないといけないなと。

そのような流れで、まーやさん(@maaya8585)やかめちゃん(インタビュアーkameko(@okusama27))、みゃーさん(@kor_miya)が主導してくれている「PyLadies Handbook 翻訳しNight 」(PyLadiesの行動規範(Code of Conduct)が記載されている、PyLadies Handbookの翻訳会)が始まったんです。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kamekoはい。6月10日に3回目を行いました。

紳士淑女のPythonコミュニティ

片柳とはいえ、基本的にはPythonコミュニティはどのコミュニティにいっても紳士な方が多くて参加しやすいなと感じています。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180711161951j:plain

f:id:nana_yu:20180711161737j:plain
haru紳士、呼びました?って出てくるPythonistaがたくさん居そう。(笑)

でも、そうした情報はぜひ女性Pythonユーザーに届けるべきですよね。心理的なハードルで機会を失ってしまうと勿体ないですし。

片柳はい、私としても、自分がコミュニティやイベントに参加したら、紳士淑女なPythonistaたちのおかげで疑問がすぐに解決した経験もあるので、周りに聞ける人がいないならコミュニティに積極的に参加することはぜひぜひすすめていきたいなと思います。
f:id:nana_yu:20180629171145j:plain

片柳Pythonには紳士・淑女が多いので怖くないよ!(笑)
f:id:nana_yu:20180709180108j:plain

f:id:nana_yu:20180711161802j:plain
kameko紳士淑女の為のプログラム言語Python。

f:id:nana_yu:20180711161737j:plain
haruこのフレーズ積極的に使って行きましょう。(笑)


f:id:nana_yu:20180702172029j:plain
haru女性のPythonistaは増えてきていると感じますか?

片柳そうですね、もくもく会に参加したら女性が3人ぐらいいるのが当たり前ぐらいにはなっていますし、PyCon JPも年々女性が増えているという印象です。

発表ができるような女性も増えてくると思うので、男性の多い場で発表するのに抵抗のある人はPyLadiesを発表の練習の場として使って欲しいです。

次のPyCon JPや海外のPyConを目標にする女性を増やすと共に、自分も積極的に発表していきたいです。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haru片柳さん自身のお話として、今年のPyConでこういう発表したい、などの展望はありますか?

片柳そうですね、さっき紹介した土性の三角図を書くスクリプトなどは研究分野への広がりの例として、今年のPyCon JPの「ひろがる Python」というテーマにも沿っているかなと思うので検討したいです。
f:id:nana_yu:20180629171145j:plain

次回の内容

次回は、連載最終回として、PyLadiesと片柳さんの活動の今後の展望を伺います。次回更新は7/17(火)の予定です。

バックナンバー

  • 導入・索引…片柳さんのご紹介とインデックスページです。
  • その1…農業研究分野でのPythonデータ処理について
  • その2…「PythonユーザのためのJupyter[実践]入門」とPyQについて
  • その3…女性によるPythonコミュニティ「PyLadies Tokyo」について

*1:マサカリを投げる…厳しい言葉で技術的な指摘をすることを表すネットスラング

【Pythonエンジニア列伝:vol.5-3】片柳薫子さん その3〜女性によるPythonコミュニティ「PyLadies Tokyo」について〜

f:id:nana_yu:20180709151821p:plain

この記事はPythonエンジニア列伝第5回の3記事目です

Pythonエンジニア列伝は、「Pythonエンジニアたちのインタビューを通して、Pythonを使う人達がどんな人なのか、どんな場面で活用しているのか、なぜPythonに出会ったかなどを紐解く」連載です。

連載はトピックごとになっているので記事単体でも読むことができます。

バックナンバー

  • 導入・索引…片柳さんのご紹介とインデックスページです。
  • その1…農業研究分野でのPythonデータ処理について
  • その2…「PythonユーザのためのJupyter[実践]入門」とPyQについて

pyq.jp

女性 Pythonユーザーを支える「PyLadies Tokyo」とは

f:id:nana_yu:20180702172029j:plain
haru片柳さんは最近、初心者向け講義などを頼まれることも増えているとお聞きしました。

片柳そうなんです。Pythonの普及活動に勤しんでいます。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruその一環として運営スタッフに参加している「PyLadies Tokyo」について教えてください。こちらはどのようなコミュニティでしょうか?

PyLadies Tokyo

URL(connpass):https://pyladies-tokyo.connpass.com/

片柳もともと「PyLadies」はアメリカから始まったコミュニティで、「PyLadies Tokyo」はその東京支部となるコミュニティです。名前にもある通り「女性のPythonユーザー」を対象にしています。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruPyQスタッフkamekoもスタッフの一員ですよね。

f:id:nana_yu:20180702172032j:plain
kamekoはい。PyLadiesの行動規範などが書かれている「PyLadies Handbook」の翻訳会のスタッフなどをしています。

f:id:nana_yu:20180702172029j:plain
haru女性のためのコミュニティであるPyLadiesですが、特色などはありますか?

片柳うちは参加者だけでなく講師も完全に女性で統一しています。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kameko講師も含めて全て女性というのは、他の女性の団体でもあまり見ない気がします。

片柳そうですね。年に1回あるアニバーサリーイベントの時だけ男性参加者OKとしますが、講師も参加者も運営スタッフも女性だけのところは少ないかと思います。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kameko女性しかいないせいで化粧っ気がないという疑惑もあります(笑)

片柳ありますね(笑)硬派、ということで。
f:id:nana_yu:20180709180108j:plain

f:id:nana_yu:20180702172029j:plain
haru実際にどのようなイベント・活動をしていますか?

f:id:nana_yu:20180709152911j:plain

片柳月一程度でイベントを開催するようにはしていて、4月は事業のスタート時期でもあるので、初心者向け講座を開いています。

他にも年に数回は初心者向け講座をやりますが、レベルの高い人向けに中級者のハンズオンをやったりもします。

ただ集まってコードを書いていく「もくもく会」、短い発表(ライトニングトーク)を行う「LT会」、あとはPyCon JPですね。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kamekoPyCon JPでは色々やりますよね。私は当日PyQのブースで忙しくてあまり参加できないんですが、楽しそう。

片柳そうですね、コミュニティブースを出したり、口頭発表やポスター発表、LTもやります。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haru参加される方はエンジニアの人が多いですか?新規に参加される方はどれくらいいますか?

片柳初心者向け講座を開けばノンエンジニアの方も来ていますし、中級者向けになるとエンジニアの方にも足を運んでもらっています。あと、初心者講座に限らず新規の方もそれなりに多く、リピーターの方も何割かいます。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruどういうきっかけで片柳さんは「PyLadies」を知ったのでしょうか?

片柳池内さん(@iktakahiro)から「こういう団体あるよ」と「PyLadies」を紹介されました。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kameko再び池内さん登場ですね。

片柳はい、キーパーソン池内さんです(笑)。同じ年に「Tech Women - New Year's Party」という新年会も一緒に勧められて、そこに出席してLTしたんです。
f:id:nana_yu:20180709180108j:plain

非エンジニアの私でもPythonの勉強会に参加したらしあわせになれたというお話

Tech Women - New Year's Party

2015年もよろしくお願いしますということで,女性で技術に関わっている方で集まって新年会をします!普段関わりのない団体同士も混ぜて,LTを聞きながらピザとアルコールを片手にわいわい交流しましょう! ※申し訳ありませんが,男性の参加はご遠慮下さい.

片柳その直後にFacebook経由でPyLadies Tokyoの発起人である真嘉比さん(@a_macbee)に「Qiita見たんですが、PyLadies Tokyoで発表してくれませんか」と声を掛けていただきました。

それも「発表者まですべて女性だけにしたい」という意図があったみたいです。まだまだPythonを始めて間もない頃でしたが、学習を始めた経緯を発表させていただきました。

f:id:nana_yu:20180629171145j:plain

ゼロからはじめたPyData

f:id:nana_yu:20180702172029j:plain
haru女性だけのイベントということで、それまでと異なる点はありましたか?

片柳やはり、Tech系のイベントは男性比率の方が多いです。私はそこに参加する事に抵抗はなく、かめちゃん(kameko)のような女性のPythonistaとも出会っていたので意識したこともなかったんですが、そうした男性ばかりの場に行くのって女性としては抵抗はあるんだ!という事に改めて気づきました。

実際に参加して初めて、こうした女性だけの限定のイベントを開くことは意味があるんだなという実感を得ましたね。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruなるほど。この後はそのような、女性と技術コミュニティについて深くお話をお伺いしたいと思います。

次回の内容

次回は、女性のにとっての技術コミュニティのお話を深掘りしてお伺いしてきます。次回更新は7/12(木)の予定です。

バックナンバー

  • 導入・索引…片柳さんのご紹介とインデックスページです。
  • その1…農業研究分野でのPythonデータ処理について
  • その2…「PythonユーザのためのJupyter[実践]入門」とPyQについて

【Pythonエンジニア列伝:vol.5-2】片柳薫子さん その2〜「PythonユーザのためのJupyter[実践]入門」とPyQについて聞きました〜

この記事はPythonエンジニア列伝第5回の2記事目です

Pythonエンジニア列伝は、「Pythonエンジニアたちのインタビューを通して、Pythonを使う人達がどんな人なのか、どんな場面で活用しているのか、なぜPythonに出会ったかなどを紐解く」連載です。

連載はトピックごとになっているので記事単体でも読むことができます。

f:id:nana_yu:20180704184109p:plain

バックナンバー

  • 導入・索引…片柳さんのご紹介とインデックスページです。
  • その1…農業研究分野でのPythonデータ処理について

pyq.jp

「PythonユーザのためのJupyter[実践]入門」について

f:id:nana_yu:20180704184151j:plain

f:id:nana_yu:20180702172032j:plain
kameko片柳さんはPythonのライブラリであるJupyter Notebookとデータを可視化するライブラリを取り扱った書籍、通称「Jupyter本」を書かれていますが、どういった経緯で執筆に至ったのでしょうか?

PythonユーザのためのJupyter[実践]入門

gihyo.jp

片柳著者の1人である池内さん(@iktakahiro)に「書こうよ」と最初に誘っていただきました。

「Jupyterの名前を冠したPythonの本ってないよね」ということで。本の著者名の記載順は実は誘われた順なんです。一番最初が池内さんになっているように、彼が発起人です。既に技術書の執筆経験のあった彼が、その編集者に打診して話を進めました。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruへえ、これ参加順なんですね。片柳さんは二番目に書かれていますね。

片柳はい。私はそのときはまだまだ本をかけるレベルじゃないと思っていたんですよ。それでも勉強すればなんとかなるだろうと思っていたのと、Pythonの普及活動をしたいこともあって二つ返事で引き受けました。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kameko出版までの経緯で印象に残っていることはありますか?

片柳JupyterはPythonのツールの一つなので、そのような狭い範囲に着目した本を出すことは、Jupyterを知らない人にとっては「何それ美味しいの」という印象を与える懸念はあって。とはいえ扱う範囲を広げてというのは違うな、ということで「自費出版でやろっか」という話も出ていました。

ただその一方で出版社さんの側に「Jupyter来てる!」という感覚があったみたいで、最終的に出版の話が進みました。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180704184517j:plain

f:id:nana_yu:20180702172032j:plain
kamekoとてもいいタイミングで発売された感覚がありますよね。発売当初、今買うべき本だ!と感じた記憶があります。

片柳そうですね。我々は先を行っていた!と思いました。いいタイミングで出版できたと思います。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haru本の中で、片柳さんはどの部分を担当したんですか?

片柳私はMatplotlibを扱う4章・5章の大部分を担当しました。PyQとのコラボ問題もこのあたりから出題してますよね。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180427091332p:plain
nao_yはい。基本はMatplotlibに関しての問題です。あとは、使用頻度の高そうな、pandasを使ったExcelの読み込みについてを出題しています。

f:id:nana_yu:20180702172029j:plain
haru執筆にはどのくらいの時間をかけたんですか?

片柳お声掛けをいただいたのが2016年で、その年の9月にあるPyCon Jpに合わせて出そうとしたんですけれど、結局一年かかりましたね。去年の5月の連休は全部執筆に充て、夏休みは校正作業に充てるという感じでした。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kameko続編の企画とかありますか?

片柳今のところ考えてないです。情報はどんどん新しくなっていっているので、どちらかというと第二版を出すことはあるかもしれません。
f:id:nana_yu:20180629171145j:plain

PyQについて

f:id:nana_yu:20180702172032j:plain
kamekoPythonの1プログラマーとして、オンライン学習サービスであるPyQについてどう思いますか?

片柳まずはサービスが良いと思っていて。休んだ時はお金取らないとか親切設計になっていますよね。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kamekoそれが健全な形だとチームで合意して月途中の返金機能を実装したんですけど、あまり他にない形式だからか、今でも休会手続きは月末が多いです(笑)

片柳慣れている形式からくる心理的な問題もありそうですよね。やはりシステムが違うと理解してもらうのが大変だなと思います。でもやっぱり良心的なサービスだなと思うので、初めてPython始めたい人には薦めたいですし、学習できる範囲も広いので、私も機械学習に手をつける時はやろうかなと思います。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haru問題などについてはどうでしたか?

片柳実際にクエストに触れたのはJupyter本とのコラボ問題と関連するJupyterの初心者向けの問題だけなので、出題に対してどうこうはいえないのですが、実際にPyQの中でJupyterが動いていて、これはけっこう手間がかかったのではないだろうか、という印象を持ちました。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kamekoJupyter Notebookに関してはブラウザ上で動かせるようにがんばりました。

片柳PyQ問題作成の際にはMatplotlibのコードスタイルの違いでPyQスタッフと少し議論しました。PyQではMATLAB-styleを採用していたんですが、Jupyter本ではこだわってOOP-styleで記載しています。コラボ問題ではそちらで統一してもらいました。
f:id:nana_yu:20180629171145j:plain

二つのコーディングスタイル OOP-styleとMATLAB-style

Matplotlibには数値計算や統計計算に強いMATLABというツールを参考に設計されたという経緯があるため、暗黙的な動作が多いなどPythonらしくない書き方があります。

PyQのMatplotlibの問題ではMATLABに寄せたコーディングスタイル(PythonユーザのためのJupyter[実践]入門ではMATLAB-styleと呼びます)を採用しています。

一方、「PythonユーザのためのJupyter[実践]入門」では動作を明示的にしたPythonらしいコーディングスタイル (OOP-style)を採用しています。これに合わせてコラボレーション問題のコードはOOP-styleになっています。

OOP-styleとMATLAB-styleについては PythonユーザのためのJupyter[実践]入門内で「Matplotlibでグラフを描画する2つのアプローチ (P. 248-254)」に詳述されています。

f:id:nana_yu:20180427091332p:plain
nao_y結果として、二種類のスタイルが存在すること、それぞれの内容を解説できたのでよかったと思っています。自分もどちらがいいか、どちらのスタイルで書くかを意識せずに使っていたと気づきました。

片柳みなさん結構、意識せず書いていると思います。ただ、意識して統一したスタイルで書いたほうがPythonとして学びやすいです。OOP-styleの方がPythonの設計思想に合わせたスタイルなので、個人的にもこちらで書くようにしていますし、人にも薦めたいと思っています。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180427091332p:plain
nao_yPyQに「PythonユーザのためのJupyter[実践]入門」本とのコラボ問題もあります。今回コラボレーションコード無料で公開しており、コードを入力することで体験することができます。

blog.pyq.jp

バックナンバー

  • 導入・索引…片柳さんのご紹介とインデックスページです。
  • その1…農業研究分野でのPythonデータ処理について

次回の内容

その3では、女性によるPythonコミュニティ「PyLadies Tokyo」についてお伺いしています。

blog.pyq.jp

【Pythonエンジニア列伝:vol.5-1】片柳薫子さん その1〜農業研究分野でのPythonデータ処理について聞きました〜

この記事はPythonエンジニア列伝第5回の1記事目です

Pythonエンジニア列伝は、「Pythonエンジニアたちのインタビューを通して、Pythonを使う人達がどんな人なのか、どんな場面で活用しているのか、なぜPythonに出会ったかなどを紐解く」連載です。

連載はトピックごとになっているので記事単体でも読むことができます。

f:id:nana_yu:20180702171553p:plain

関連記事

導入

f:id:nana_yu:20180702172029j:plain
haruこの度はインタビューを受けていただきありがとうございます。PyQ開発チームメンバーのkamekoとも面識があるということで、片柳さんに今回はお越しいただきました。その経歴は本企画にぴったりということもありお声がけしております。

片柳はい、よろしくお願いします。なんか雰囲気が面接みたいですね(笑)
f:id:nana_yu:20180629171540j:plain

f:id:nana_yu:20180629170817j:plain

f:id:nana_yu:20180702172032j:plain
kameko(笑)リラックスしてもらって大丈夫です。

もう一度インタビューの趣旨を説明させていただくと、さまざまなエンジニアの方々のキャリアや経歴、活動にスポットを当てることで「エンジニア」という人種にどのような人がいるのか知っていただくのが目的です。

同時に、今後の進路について考えている人の参考となるだけでなくアクションを起こせるぐらいの内容を提供できればと思っています。

片柳わかりました。
f:id:nana_yu:20180629171145j:plain

研究員とプログラミングの関係性

f:id:nana_yu:20180702172029j:plain
haru勤務先は農研機構の農業環境変動研究センターということですが、普段はどのような仕事をしていますか?

片柳普段はセンターの研究員として働いていまして、炭素と窒素・水の動態モデルを動かして生態系の物質動態・土壌由来温室効果ガスの排出量などを予測しています。

現在はモデルを使った全国規模の微量温室効果ガス排出量推定が主な仕事です。

f:id:nana_yu:20180629171145j:plain

片柳 大学院の研究から土壌学に携わるようになったのですが、大学は農学部ではなく薬学部の出身です。

薬を使う前の段階、食や環境など、より広い観点からの健康作りに貢献したいという思いが今の研究員としての出発点です。現在はモデリングの仕事がメインですが、学生時代は現場(田畑や森林)に出て作業していました。今でも現場作業は大好きで、土への愛は忘れていません。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruなるほど。研究の中で各種データを扱うと思うのですが、その中でPythonをどのように使っているのでしょうか?

片柳予測用のモデルはC++で書かれたものを使っていまして、他の人の書いたそのプログラムを四苦八苦しながら直して使っていました。扱う各種データはExcelなどで扱っていたのですが、前処理・後処理と解析の際にPythonを利用することになりました。

はじめ仕事で扱うデータ量は畑一枚程度*1の圃場(ほじょう)を計測するだけでしたが、次第にそれが全国区のデータを扱うことになりました。

データ量が膨大になってくるとExcelでの手計算がきつく感じてきたこともあって、Pythonを使うようになりましたね。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruたしかにそれだけのデータ量をExcelで処理するのは難しいですね。では、多くのプログラムがある中でPythonを選んだ理由はありますか?

片柳データの量が増えてきた時に、研究者仲間からインタープリタ言語を一つ使えるといい、とアドバイスをもらいまして。

その中でPythonを学ぶことにしたのは、以前、Natureにも論文を投稿しているスーパー研究者がPythonを使っているという話を聞いていたからです。そのとき「Python覚えてればその人と一緒に仕事できるかも!」と思って(笑)。

ミーハー心から始まりましたが、C++が全くわからない!と感じていた私でもPythonはすんなり学習し始められましたし、結果としては非常に良い選択だったなと思います。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kameko最近Pythonを活用して作成したものなどはありますか?

片柳土性図をPythonで書けるかなと試したりしています。完全に趣味の範囲内ですけど、pyhack(Python mini Hack-a-thon)に行った時に自己紹介に書けるようなプロダクトを作りたいなと思いまして。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172032j:plain
kameko土性図とはどんなものなんですか?

片柳土の固体部分の鉱物粒子(粘土・シルト・砂)の割合で土壌の性質、土性を推定できるんですが、その土性を判定する三角図です。今後もう少し機能を追加したいです。

f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180629172938p:plain
soil_texture_visualization で生成された三角図

soil_texture_visualization

f:id:nana_yu:20180702172029j:plain
haru専門領域に特化したライブラリなどあるんでしょうか?

片柳NumPy、pandas、Matplotlibなどは使っていますが、研究所単位ではなく個人で使用していることもあって、専門領域に特化した特別なライブラリは使っていないですね。
f:id:nana_yu:20180629171145j:plain

NumPy

Pythonで、数値計算を効率的に行うためのライブラリです。効率的な数値計算を行うため、ベクトルや行列などを表現できる型付きの多次元配列のサポートをPythonに加えるとともに、それらを操作するための数学関数ライブラリが提供されています。

URL:http://www.numpy.org/

pandas

Pythonでデータ解析を支援する、オープンソースライブラリです。表やテーブル、時系列データなどを操作するためのデータ構造と、それらを扱うメソッド・関数などが提供されています。

URL:https://pandas.pydata.org/

Matplotlib

Pythonでグラフを描画するためのライブラリです。

URL:https://matplotlib.org/

農業系研究分野での使用技術について

f:id:nana_yu:20180702172029j:plain
haru農業系をはじめ、片柳さんの周りでPythonが流行している雰囲気は感じますか?

片柳一年前ぐらいですが、うちの研究所で使っている人がいることを教えてもらいましたね。気象データを農業のために使う際の独自ライブラリを作ったりしています。この独自ライブラリは使用者も数百人いて、開発者の彼らはかなりPythonを使っているようです。
f:id:nana_yu:20180629171145j:plain

「メッシュ農業気象データ」

気象情報が農業現場で有効に活用されることを目指して、国立研究開発法人農業・食品産業技術総合研究機構(農研機構)が開発・運用する気象データサービスシステムです。全国の日別気象データを、約1km四方(基準地域メッシュ)を単位にオンデマンドで提供することができます。(リンク先公式ページより)

片柳その人と私が率先して「Python!Python!」と言っている感じですね。機械学習などを取り入れて欲しいなどの需要は感じますが、まだまだという感じですね。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haru他の研究者の方はどういったプログラムやツールを使っているのでしょうか?

片柳生態学・農業気象学の分野ではRが主流で、先日は機械学習もRで回しているという話を聞きました。また、スーパーコンピュータを使って全球気候モデルを動かしている分野のあたりではFORTRAN、農地の現場調査を主にやっている分野ではExcelや市販の統計処理・可視化ソフトの利用が一般的という印象です。特に困らないならExcelの利用もありだと思っています。
f:id:nana_yu:20180629171145j:plain

f:id:nana_yu:20180702172029j:plain
haruやはり従来のシステムからPythonを主流にするのは難しいところがありますよね。

片柳そうですね。たとえば、「Pythonに変えれば研究にまつわるデータ処理は高速になるのか?」と言われるとはっきり言えないところもあります。おそらくなるはずだけれど、大規模データを扱う研究者ばかりではないこともあって、学習コストと天秤にかけると主流になりづらいのではないかなと思います。

また、学術系のユーザーが多い故に、最新の統計アルゴリズムはRの方が早く実装されるという事もあります。研究分野が違うとメジャーな使用ツールは異なってくるので、私個人としてもPythonの普及度合いは把握しきれてないところもあります。周辺分野に地味に普及活動をして、需要に合う研究者に知って貰えたらいいと思います。

f:id:nana_yu:20180629171145j:plain

次回の内容

その2は、共著である「PythonユーザのためのJupyter[実践]入門」についてお伺いしています。

blog.pyq.jp

*1:※畑一枚は日本(北海道を除く)では~数ヘクタール(1ヘクタール=10,000平方メートル)

Copyright ©2017 BeProud Inc. All rights reserved.