KAKEHASHI Tech Blog

カケハシのEngineer Teamによるブログです。

PyCon APAC 2023を聴講してきました

PyConをエンジニア目線でレポート

弊社はPyConでプラチナスポンサーとしても参加させて頂いていますが、今回の記事はエンジニア目線で参加してきたPyConをレポートしようと思います!

PyConに関係する記事として以下のような記事を公開しています。合わせて読んでみてください。

カケハシのTechBlogからPythonの記事をいくつかピックアップしたまとめ記事 kakehashi-dev.hatenablog.com

PyCon登壇した弊社の横田さんの登壇内容の詳しい記事 kakehashi-dev.hatenablog.com

そして、カケハシがスポンサーブースを出す中での苦労と感動の記事をこの記事のあとに公開予定です。

Pythonの事情と空気

PyCon "APAC"を謳うだけあり、参加者は日本国内に限りません。参加者同時の立ち話を聞くと、アジアのみならず北米などから参加している方もいらっしゃいました。誰が日本語を理解できる人なのかわからないので、休憩コーナーで日本語話者から"Is this seat available?"と聞かれてこちらも"Yes"と答えてしまうなど、非常に国際色豊かなイベントでした。

Pythonはさまざまな用途で使われるプログラミング言語です。メジャーな用途だけでも3つあります。 ひとつはサーバサイドアプリの開発、もうひとつはデータ分析やAI、そして科学計算です。前ふたつはカケハシでも積極的に使っており馴染みがあるものですが、科学計算は未知の世界です。

それぞれ発表の雰囲気も違いますし、テーマや目指すところも全然違います。こうした用途のバリエーションがPythonのおもしろいところかと思います。こうした多様な用途でPythonを使っている人が国内外から一堂に会するイベントもなかなかないのではないでしょうか。

セッションレポート

たくさんのセッションが行われましたが、今回は聴講したセッションから一部を紹介します。

1日目 Keynote

京都大学の喜多先生の講演です。京都大学では教養科目でPythonがあるそうで、そこでの教育についてのお話です。プログラミングの経験がない学生は、「x = x + 1」というありふれたコードに混乱するという話は確かになと感じました。プログラムを学んだ人には当たり前の表現ですが、そうでない人には奇妙な「等式」に見えるのは、慣れてきた人には見落としがちなポイントですね。

他にも「エラーメッセージが表示されると読むのをやめてしまう」など、学生教育だけではなく初学者プログラマー教育でも課題になる点ですし、企業内教育でも参考にできそうでした。

www.youtube.com

Write Python for Speed

SpeedはAPIの応答速度とかではなく、Pythonを使った数値計算のこと。Pythonはインターフェイスとしては優秀だが、計算が遅い(NumPyを使ってでさえ)ので、C++と組み合わせてみましょうという発表。数値計算を行う環境ではCPUやメモリ構成などハードウェアも意識してコードを書く必要がありますが、ウェブアプリで使う分にはそこまでできません(とくにサーバーレス環境だとどんなハードウェアで動くかさえわからない)。

とはいえ、理論の組み立ては紙のノート、プロトタイプはPython、Goサインが出たらC++で高速な実装という段階に応じて技術を切り替えていく考え方はウェブ開発にも生かせそうです。C++を使わないにしても大規模な計算を使う部分にNumPyを使ってみるなど、やり方はひとつだけではないのは意識しておきたいところです。

www.youtube.com

2日目 オープニングセッション

オープニングセッションの連絡として、1日目の忘れ物にPCにつける裸のメモリーが落ちていたということで、笑いを取っていましたw スポンサー紹介の時間があり、カケハシもバッチリ紹介されていました! この紹介を聞いてブースを訪れてくれた人もいるようでした!

2日目のKeynoteではアメリカの歴史から始まり、機械学習に求められること、データの重要性、それらを進めるためには社会の中での解釈をしなければならないという、Pythonを軸にしながらも壮大な影響と課題について話がされていました。

例として、線路の中に1台の車がふらふらと入り込んでしまった時に、車の人の命を優先するのか、電車に乗っている人を優先するのかを考える必要があるという話がありました。確かにこれらの解釈が出来ないと自動車と電車の自動運転の責任をどう解釈するかをシステムに落とし込むことが出来ないのかもしれません。

PythonはAIで活用される場面が多く、他のプログラミング言語よりも違った社会課題を解決できる反面、技術を使うために社会を解釈する必要があるという大きな話を聞いて、納得してしまいました。子供の世代に何を残すのか。それを考えながら技術を使っていきたいと話がされていて、非常に納得しました。

オープニングセッションを聞いて、他のプログラミング言語よりも社会課題を考え直すきっかけに近い言語なのだと感じました。

メモリプロファイラーMemrayのススメ

スライドはこちら speakerdeck.com

最近はクラウドのインスタンスで分散処理が簡単なのでカバーできることが増えたとは言え、Pythonはデータ処理で活用されることが多く、大規模データも扱うことが多いため、メモリプロファイラーを使う場面は実はもっとありそうですね。 今までカンでメモリ改善していたかもしれないところを実際のグラフを見ながら改善できそうに感じました。Jupyter Notebook上でも手軽に動かせるということで、非常に便利そうです!デモも多くわかりやすく説明されていました。

このMemrayの作者はPython本体のコードのメンテナーでもあるので安心して使えますね。グラフを見るだけでも楽しそうなので実際のシステムで動かしてみたいですね、と思っていたら実際にBloombergのブースでデモが実行されていました。

ブースレポート

各社多様なスポンサーブースが出展されています。最近のIT内製化などの流れによるものなのか、いわゆる「IT企業」だけではなく、情報通信業以外のブースも増えていきています。メーカーや電力会社など想像もしていなかった(でも話を聞くとソフトウェアエンジニアを採用する理由もわかる)会社もソフトウェアエンジニアを募集する時代です。 個人的に興味を引いたブースをいくつかご紹介します。

Bloomberg

一部の人には経済系ニュースサイトでお馴染み、金融機関向けの情報配信の会社です。Bloombergでは独自のPythonメモリプロファイラーmemrayを提供しておりますが、なんとエンジニアによるプロファイリング実演が行われていました。

動くデモを展示する会社は数あれど、プロファイラーのデモははじめて見ました。開発者向けデモがあるブースは話が盛り上がりますが、議論しながらプロファイラーの実演をやるのは熱いですね。

LOVOT

可愛らしいLOVOT(らぼっと)の展示。ブースをはみ出して隣のブースに突入してたのはご愛嬌ですね。持ち上げてみると意外と重くて暖かい。中のコンピューターが排熱するので、熱を持つのは当たり前なのですが、ロボットに温もりがあるのは軽く驚きます。

ランチとクロージング

ランチ

ランチではお弁当に和食、中華、カレーなどが用意されており、コーヒーなども提供される部屋も用意されていました。ブース対応に当たっていたエンジニアやPyConを聴講に来たエンジニアと一緒にランチを食べました。

こちらがその中華弁当です。

カケハシではフルリモート開発なので、普段は通勤の時間を気にせず、プライベートとの時間を細かく区切りながら働く働きやすさがあります。その反面計画しないと話をしなくなりがちなので、チーム外の人とランチを食べながらただの雑談をするのが楽しかったです!

カケハシはオフラインの大事さも理解しており、さまざまな機会を作ってお互いに会う機会を作っています。

クロージングLT

クロージングLTには「Pythonでスナップショットテスト」というタイトルで弊社の横田さんが登壇しました!

要素が多いデータやパターンの多いテストって作るのが大変なので、便利そうでした!テストを書くのって大変ですし、メンテコストも掛かるので、できる手抜きはなるべくしたいですね。

より詳しい解説はこちらのブログからどうぞ kakehashi-dev.hatenablog.com

PyConクロージング

APACという範囲で行われたので、外国人の方も多く、著名な人も参加されていたようです!こういうイベントに来ると、あの書籍を書いた人とか、あのフレームワークを実装した人とか、あのプログラミング言語を作っている人とか、そういう方々が普通に歩いているので凄いですね!

コロナもあって久しぶりにリアルでのオフラインイベントに参加して、改めてオフラインの良さを感じました。これからもさまざまなイベントに参加していきたいです!

ブース感想

カケハシは今年から採用マーケティングチームが立ち上がり、はじめてチームとして技術広報のカケハシのブースをだしました。

分からないことやはじめて準備することで大変でしたが、たくさんの方々に来て頂いて大成功でした!アンケートも非常に興味深い結果を取ることができましたので、次に活かしていきたいと思います!

スポンサーとして参加した準備の様子やブースに来ていただいた参加者の方々の反応、答えていただいたアンケートの興味深い結果はカケハシの運営チームからまたブログで紹介いたします!お楽しみに!