PyCon PH 2024 参加レポート

はじめに

こんにちは、イクバルと申します。私は2024年2月25から26日までマニラで行われたフィリピン最大規模のPython言語ユーザーや開発者のカンファレンス、PyCon PH 2024に参加してきましたので、皆さんに体験レポートと感想を紹介したいと思います。

PyCon PH 2024 とは

イベントの公式ページを参照しますと、PyCon PH 2024 というのは、以下のような趣旨で開催されています。

PyCon Philippines 2024
After successfully hosting PyCon PH 2023, we are back once again with the theme ⁠Gabay⁠, or guide, to commemorate how the community helped us navigate through our professional and personal lives and led us to where we are.

If you’ve been a part of the past 8 PyCons in the Philippines or any of our other events, thank you! We are always grateful for the support and warm reception.

Let’s keep growing together as a community!

🤝 PythonPH is a proud member of the united PyCon APAC community

This year, we're delighted to highlight our active participation as a member of PyCon APAC. While not the host for PyCon APAC this year, our role within this collaborative group reflects our dedication to nurturing the Python community, both in the Philippines and across the region.

PyCon PH 2024は「Gabay」⁠ガイドという意味らしい)をテーマに、成長におけるコミュニティの指導的役割を強調しています。PythonPHのPyCon APACコミュニティにおける活動的な役割を強調し、地域のPythonエコシステムを育成することを目指しているそうです。今回はPyCon PHの9回目の開催になります。

今回の参加に関して

実は、今回が私にとって2回目の参加でした。はじめてPyCon PHに参加したのは2018年で、PyCon PHの開催やコミュニティを発展させる活動に中心的な役割を担っているMicaelaさん、Mattさんペアと初めてお会いしたのは、ソウルで開催されたPyCon APAC 2016の時でした。早いもので、もう8年の付き合いですね。

PyCon PH 2024の概要

日時 2024年2月25日~26日
場所 Makati Sports Club, Manila, Philippines
参加者 フィリピン国内を中心にPythonの開発者、Pythonを用いる学者、イベントボランティア学生など

会場

PyCon PH 2024は、Pythonプログラミングに関するトークや最新情報を知ることができるカンファレンスです。フィリピン国内だけではなく、アジア・オセアニア地域をはじめ、アメリカからの参加者も沢山いらっしゃいました。

PyCon PHはコストを意識して、今まではマニラ市内の大学等と連携して会場を提供してもらっていましたが、今回初めての有料会場に挑戦しているそうです。

今回の会場は、マカティという地域にある古い歴史のあるマカティ・スポーツ・クラブになります。

会場となったMakati Sports Clubのエントランス
会場となったMakati Sports Clubのエントランス
カンファレンス初日に参加者登録の行列
カンファレンス初日に参加者登録の行列

マカティに行ったことがある方はご存じかと思いますが、街は綺麗で、お洒落なカフェやレストランが立ち並ぶ、とても洗練された街だと思います。

トラックやセッションの構成

今回のカンファレンスは3トラックで構成されています。1つ目は、大きめのメインホールにて基調講演等が行われるメインとなるトラック、2つ目は小さめの部屋で行われるトラック、そして最後は、もう1つの小さめの部屋で行われるワークショップ形式のトラック、以上の3トラックの構成となります。

公式サイトから:このような形でセッションとトークが構成されています
公式サイトから:このような形でセッションとトークが構成されています

合計で3つの基調講演、23個のトークセッションと2つのワークショップというスケージュールになっていて、その他コミュニティ関係の「PyLadies Lunch」というイベントもありました。

今回は、私は主にトークのセッションと、参加者と主催スタッフとの交流をメインにしていたので、ワークショップには参加しませんでした。

参加人数

スタッフの皆さんと話していてわかったのですが、今回の参加者は合計で380名ぐらいだったそうです。イベント運営やボランティアのスタッフに支えられていて、その大半は学生さんでした。チケットの販売内訳によると180名程は個人で、会社による購入は80名ほどでした。

日本からの参加者も

日本からの参加者は、私以外にBeProudの清水川さんとGoogleの山口さんが今年のPyCon PHに参加していました。実はご存知の方もいらっしゃるかも知れませんが、清水川さんはマニラ在住なので「日本から」参加ということではないですが、まぁ、よしとさせてください。

日本チームの面々
日本チームの面々

清水川さんは、Day 2のPython内部の話「How Does Python Get The Length With The len() Function」というタイトルでトークを行い、山口さんもDay 2に「Enchance Your Python Application Observability With Open Telemetry」というタイトルで登壇しました。

山口さんは2日前にJakartaにてイベントがあったため、JakartaからSingaporeのチャンギ経由でカンファレンス1日目の夜に到着したそうです。やっぱり皆さんお忙しいですね!

海外カンファレンスを楽しむ Tips[その1]同じ国から来ている参加者を探して、どのように現地に到着したのかを聞く。さまざまな体験談が聞けるかも!

参加した基調講演①⁠Simulating Disaster Relief Distribution and Transport Network Efficiency During Typhoons by Reina Reyes and JC Peralta

Day 1の最初の基調講演はReina Reyes准教授とJC Peraltaさんによって行われ、災害救助物資の配布がどのように行われるか、そして交通網の効率をテストする彼らの研究に焦点を当てていました。

Reina Reyes准教授は、UPディリマンのデータおよび計算研究グループを率いる准教授であり、Z-Lift Solutionsの実践責任者、WeSolve Foundationのデータサイエンスコンサルタントでもあり、2023年のNAST優秀若手科学者賞を受賞しました。

JC Peraltaさんは、アテネオ・デ・マニラ大学で大気科学の修士号を取得し、気候科学、再生可能エネルギー、気候行動提唱に焦点を当てた地理空間機械学習コンサルタントおよび気候科学者です。

このトークはReyes准教授が前半に登壇し、後半はJC Peraltaさんが登壇するというかたちで進められました。

Reina Reyes准教授の基調講演
Reina Reyes准教授の基調講演

日本と同じく自然災害が多いフィリピン

皆さんもご存知かも知れませんが、フィリピンは年間平均で約20回の台風に見舞われます。これらの台風は大きな被害をもたらし、国のインフラを破壊します。日本でも自然災害は珍しくないため、今回のトークについてもっと知りたいと思いました。

彼らの研究の目的は、実際の台風が襲来する前に、被災した町への救援物資の効果的な配布方法をシミュレートすることです。Reina准教授と彼女のチームはVisayas地方に焦点を当て、2013年のスーパー台風「ハイヤン」⁠現地名ヨランダ)をシミュレーションのベースとしました。

オープンソースのPythonのツールを使用して地域に貢献

シミュレーションを行うために研究チームが使用したいくつかのオープンソースツール、たとえばStreamlit、GeoPy、NetworkX、OpenStreetMapを紹介しました。これらのツールを通じて、彼らは陸上および海上交通網がどのように相互接続するかを視覚化し、これらのネットワークに損傷をシミュレートすることによって、地域のどの部分が配布ネットワークから完全に遮断されるかを予測できました。この知識に基づき、彼らは救援物資および配布センターを設置する場所を提案することができます。

研究の成果を研究論文としてフィリピン科学ジャーナルに発表し、地域に対する行動を促すために地元の議員さんたちに研究を提示できたということでした。

基調講演を聞いているPyCon PH 2024参加者たち
基調講演を聞いている参加者たち

参加した基調講演②⁠The State Of Python in 2024 by Michael Kennedy

Day 1の2番目の基調講演は、Pythonの現状についてです。この種の講演にはいつも興味があります。PyConでこのような内容を聞くことで、言語の変化とそれに至った最も重要な理由をすばやく把握できるからです。

Michael KennedyさんはPython Software Foundation Fellowであり、起業家でもあります。彼はTalk Python To MePython Bytesポッドキャストのホストであり、開発者とデータサイエンティスト向けに250時間以上のオンラインコースを提供するTalk Python Trainingの創設者です。彼はアメリカのオレゴン州、ポートランドを拠点としています。

Michaelさんの講演では、Pythonの現状、その軌跡、そして進化するエコシステムについて深く掘り下げました。

2024年でもまだ人気が高いPythonだが

まず、MichaelさんはPythonの成長を指摘し、Stack Overflowの質問やTIOBEインデックスなどの使用指標で一貫して高いランキングを維持していると述べました。しかし興味深い事実として、Stack Overflowのデータからは、Pythonの質問が2022年に大幅に減少したことが明らかになりました。それはChatGPTがリリースされた時と同じタイミングです。

高速のPython⁠実現しつつある

Michaelさんはまた、60%も高速化されたPython 3.11のような言語自体の強化も紹介しました。彼は実際のアプリケーションでのHTTP応答時間を示すことで、その速さを実証しました。Python 3.12と3.13は、特化型適応インタープリタの機能拡張、メモリ使用量を削減するためのコンパクトオブジェクト構造、およびグローバルインタプリタロック(GIL)なしでCPythonを実行する可能性のある第2ティアオプティマイザの導入でこの軌道を続けました。

マルチスレッドなPython

Python 3.13はデフォルトでGILを維持していますが、それなしでの実験のためにビルドオプション--disable-gilを導入しました。また、より効率的で読みやすい非同期コードのためにasyncawaitの強化も進行中です。

Michael Kennedyさんの基調講演
Michael Kennedyさんの基調講演

これからも確実に進化するPythonだと思いますが、1991年に作られたプログラミング言語として、もう33年という長い年月が過ぎました。当時の常識で作り込まれた設計や機能もまだ多数残っているし、これからますます新しい用途が増え、それらを環境に対応させていくことが、Michaelさんの基調講演を聞いて今後の課題になっていくと思いました。

参加したトーク①⁠Hacking With Words: Exploiting Vulnerabilities In LLMs by Aniruddha Adhikary

Day 1のコーヒーブレイク後、私はAniruddha AdhikaryによるLLMの脆弱性に関するトークに出席しました。私の会社LaLoka Labsは、お客様向けのコンテンツ制作にLLMを多用する製品Kafkaiを開発・運営しているので、Aniruddhaさんがこの主題について何を述べるか知りたいと思いました。

Aniruddha Adhikaryさんのトーク
Aniruddha Adhikaryさんのトーク

Aniruddhaさんは、開発者の生産性とワークフローの自動化を専門としています。現在、公務員向けのAI製品の統合開発を行っているそうです。Mozillaプロジェクトやさまざまなライブラリへの顕著な貢献もしているGovTechシンガポールのソフトウェアエンジニアです。

RAGを例にLLMの脆弱性を示す

トークを始めるにあたり、Aniruddhaさんはシステムの他の部分とどのようにLLMが統合されているかを簡単なグラフで説明しました。彼は、我々が通常LLMにどのように話しかけ、LLMからの結果をどのように処理するかを示すために、Retrieval-Augmented-Generation(RAG)システムの簡単な例を使用しました。

彼は、悪意のあるテキストが注入されたプロンプトを使用して、LLMとどのように対話したかの実例を私たちに提示しました。また、これらのプロンプトを「クリーニング」する通常の実践が、LLMが本来行うべきでない決定をするのを防ぐことに、依然として失敗している例も示しました。

LLMの脆弱性に対応するためのTips

Aniruddhaは、Open Worldwide Application Security Project - OWASPを私たちに紹介しました。OWASPは、Webアプリ開発者向けにさまざまなセキュリティに関するリソースを公開しており、自身のアプリにOWASPの基準を適用したほうがいいとアドバイスしました。

最後に、彼はLLMをもっと安全に使えるgarakNeMo Guardrailsのようなツールを紹介しました。

まだ完全防衛不可能だが⁠リスクを管理することが大事

まとめると、このトークはリスク管理に関するものです。仕事でLLMを使用するリスクを理解し、それらを軽減します。その軽減策の一環として、LLMに代わって決定を下させることなく、人間のレビュアーを通すべきです。一方で、アプリケーションがLLMからデータを引き出すだけの読み取り専用アプリケーションの場合、リスクは低く、人間のレビュアーは必要ないかもしれません。もちろん状況は異なるため、適切に対応することが重要です。

Aniruddhaさんの講演後、Q&A時に彼に質問しようとしてる参加者たち
Aniruddhaさんの講演後、Q&A時に彼に質問しようとしてる参加者たち

参加したトーク②⁠Gardening Python Community: Local User Group To Regional PyCon by Kwon Han Bae

Day 2の午前に講演された、アジア地域のPythonコミュニティ活動に尽力し、私の戦友でもあるPyCon KRのKwon Hanさんのトークでした。トークのタイトルからすると、コミュニティに関することなので、とても気になっていました。

Kwon Hanさんのトーク
Kwon Hanさんのトーク

Kwon-Hanさんは、20年以上の経験を持つ熟練のSREです。昨年にPython Software Foundation(PSF)の理事に選出されていて、10年以上にわたり韓国のPythonコミュニティの育成に尽力しています。アジア太平洋地域でのPythonの成長を促進するPyCon APACのメンバーとしても活動しています。

「小さく」からはじめる

Kwon Hanは、地元コミュニティを始める方法について具体的なアドバイスからトークを始めました。彼は自身の経験を例に、地域内でローカルユーザーグループを立ち上げたことに触れました。

彼が最初に指摘したのは、コミュニティを始めたいときに持つべき動機です。個人的な成長を遂げることは可能でしょうが、キャリアの向上や個人の評判を高めるような自己利益のためにPythonを学んだりコミュニティ活動をする予定であれば、それは適切な動機ではないかもしれません。

「小さく」始めるべきです。彼が挙げた例は「ピザチーム」⁠4人のサイズ)です。最初から多くの人が関与するコミュニティイベントを始めると、事態を混乱させて進行を遅らせるだけです。

助けを受けながら大きくしていく

イベントを記録し、作業をウェブサイトにアップロードして、コミュニティが活動していることを世界に示すことが重要です。これにより、より多くの人々が参加し、ヘルプを求めるようになります。

地元のユーザーグループで初期の成功を収めた後、より大きな観衆のためのステージを設定することができます。保護者向けの託児所のような施設を設けることで、イベントへのアクセスを容易にします。食べ物と飲み物を提供することで、人々は食事を通じて交流します。

イベントの資金調達のために、PSFに助成金を申請して支援を得ましょう。また、ランヤードから託児施設まで、イベント内のほぼすべてのもののスポンサーを求めることもできます。

機会を提供することが一番重要

Kwon-Hanが彼のトークで言及した重要なポイントは、これらのコミュニティイベントが人々に機会を提供するということです。彼は、オンラインで自分の作業にPythonコア開発者の注意を引こうとしていたが成功しなかった若い開発者の例を私たちに話しました。その後、彼はコア開発者の一人が出席していた地元のイベントに参加し、コア開発者と話した後に突破口を見つけることができました。

最後に、Q&Aセッションで「コミュニティを構築する際に私たちに指摘できる最も重要なことは何か」をKwon-Hanに尋ねる機会を得ました。彼は考えた後、**「完璧を目指すよりまず終わらせること」**と私たちに伝えました。なるほど。納得です。

ライトニングトーク(LT)

PyConの恒例でもあるライトニングトークは、Day 2の午後から行われました。事前にLTを募集していたため、当日飛び込み参加はありませんでした。スタッフの皆さんと話していたら募集枠いっぱいでLTはかなり人気があるそうです。他のPyConのLTは、通常は発表5分に対し、今回のPyCon PHのLT枠は6分でした。

LTでは12名の発表者が登壇しました。テーマはさまざまです。たとえば、私が面白いと思ったのは下記の4つのトークです。

  • Decorators in Python(Pythonにおけるdecorator機能)
  • Audio Signal Processing related with Machine Learning(音処理と機械学習)
  • Manipulate Terminals With Python(Pythonでターミナルを操作する)
  • Using Python To Simulate Bodies In Space(宇宙の天体をシミュレートするためのPythonの使用)
順番を待つLTの発表者たち
順番を待つLTの発表者たち

私のパネルディスカッションについて

今回のPyCon PHは、私もパネルディスカッション形式のパネリストの一人として招待されました。PyCon PHの皆さんとは、長いお付き合いということもあり、引き受けることにしました。

私が参加したパネルディスカッションの様子
パネルディスカッションの様子

タイトルと概要

私が登壇するパネルディスカッションのテーマは「Python in APAC: Addressing Industry Challenges Through Community Collaboration⁠⁠、訳して「APACにおけるPython: コミュニティの協力による産業課題の克服」です。このパネルディスカッションでは、Pythonコミュニティとリーダーや業界の思想リーダーが登壇し、APAC地域におけるPythonコミュニティと技術産業との間の協力の機会について探求します。

パネリストの紹介

モデレーターを務めるのは PyCon MYのIvy Fungさんです。パネリストには、業界や企業からパネリストとして出席したことがあり、過去と現在のPython PH主催イベントのスポンサー企業でもある、フィリピンにサービスを展開してるBillEaseの技術担当のJasper Sibayanさんと、SwarmのCTO、Jan Aaron Angelo Leeさんでした。コミュニティ側では、Python PHのMatt Lebrunさん、PyLadies ManilaのCaira Bautista さんと私でした。

コミュニティとしてテック産業や企業にどう貢献できるのか

最初に議論した質問は、コミュニティが企業や業界をビジネスでどのように支援できるかについてでした。PyCon PHなどのカンファレンスでよく見られる最も一般的な方法は、採用活動です。Pythonを使用する企業やビジネスは常に、彼らのソリューションを構築するのを手伝ってくれる人材を必要としており、活発なコミュニティを持つことは、企業がこれを継続的に活用し、彼らの製品を構築する人々を見つけるのに間違いなく役立ちます。

企業からコミュニティは何を期待しているのか

一方で、企業や業界はコミュニティをどのように支援できるのでしょうか?これが次に提起された質問でした。パネリストは、スポンサーシップや、代表されていないグループが就労経験を得る機会の不足などの問題を提起しました。

コミュニティとしての課題

コミュニティが直面している課題についても議論しました。パネリストから提起された3つの主なポイントは以下の通りです。

  • コミュニティ活動を継続するための資金不足
  • 持続可能なコミュニティにさらに貢献する新しい人材の不足
  • 代表されていないグループに安全な空間を提供するPyLadies運動など、コミュニティのさまざまな側面への関心や知識の極端な不足、またPython Software Foundation(PSF)などのより大きなコミュニティとの関わり

1時間程度のパネルディスカッションでしたが、とても有意義な対話だったのではないかと思います。私は、東と東南アジアの各地域に何かとコミュニティ活動に携わらせていただきましたが、今回のディスカッションで印象を受けたのは、どこの国でも、コミュニティをどう成長させていくかということ、また、企業との付き合い方とその先にどう発展させていくのかという課題は皆同じということです。結局は、言語や文化が違うと言ってもやる内容が同じなら、課題と目指すところは同じですよね、と思いました。

ネットワーキングと交流

APAC各国の皆さんとの交流

コミュニティ活動に携わる場合、会議やアイデアの交換、問題についての議論は、あなたの仕事の重要な部分です。東アジアと東南アジアのコミュニティは密接に協力しており、この地域内の多くの貢献者やコミュニティリーダーを約10年間知っています。

PyCon PH 2024は特別でした。なぜなら、フィリピンのコミュニティだけでなく、インドネシア(ID⁠⁠、マレーシア(MY⁠⁠、そして韓国(KR)からの3名のコミュニティリーダーも会議に参加したからです。

さらなる多様性のあるコミュニティに向けて

PyCon APACコミュニティとして、私たちは主催者から地域の仕事を宣伝し、参加者にPython Software Foundation(PSF)のメンバーシッププログラムとDiversity & Inclusion(D&I)のアンケートを紹介するためのテーブルを要請しました。これらは、より良い理解を促進するために私たちが行っている作業の一部です。

PyCon APACコミュニティのブース
PyCon APACコミュニティのブース

Python開発者またはユーザーであれば、まだPSFメンバーになっていない場合はPSFメンバーになりましょう。(無料です⁠⁠、そしてまだ回答していない場合はD&Iアンケートにもご回答ください。

APACコミュニティメンバーと
APACコミュニティメンバーと

Contributer's Night

1日目の終わりに、主催者は地元のレストランKuya's「Contributer's Night」ディナーを開催しました。⁠Kuyaは現地語で「お兄さん」を意味し、尊敬する人に対する呼称です)

ディナーの間、コミュニティの多様性計画、地元の会議の財政問題、家族、さらには地元の政治について多くのことを議論しました。このようなカンファレンスディナーを私はいつも楽しんでいます。なぜなら、技術的な言語やコミュニティの仕事を超えた多くのことについて話す場所と時間を提供して頂けるし、その時間を利用し、私たちが個人として互いを知るのに役立つからです。

Contributer's Night ディナーの模様
Contributer's Night ディナーの模様

カンファレンス後のツアーに参加

カンファレンスの翌日の火曜日、主催者は私たちのためにマニラの北約270KmにあるBaguio市への旅行を計画していました。このツアーでは、バギオの多くのフィリピン人アーティストの文化と芸術を私たちに紹介しました。芸術の活発な発展のため、バギオはCity of Crafts and Folk Artsとしてユネスコのクリエイティブシティネットワークに含まれています。日本で言うと、石川県金沢市や兵庫県の丹波篠山市に芸術的に値する都市です。

ツアーの模様
ツアーの模様

海外カンファレンスを楽しむTips[その2] カンファレンス主催者が自国の文化を紹介するツアーを主催することがあったら参加する。大体は、他の海外の参加者たちも興味をもって参加するので、交流とその国の知識を深めるチャンスです。

最後に

6年ぶりのPyCon PHでしたが、前回と変わりなく、エネルギーに満ち溢れたPyConであったのではないかと思います。他国のPyConにも行ったことがありますが、今回のPyCon PHでPythonコミュニティの熱意と友好的な雰囲気に触れられたことが、とても心に残っています。

参加者としては、テクノロジー全般、言語特有の話、またはコミュニティ活動についてさまざまなトークや交流の中で、皆さんに実際に話を聞けることが、PyConの醍醐味かなと思います。プログラミング言語にまつわるさまざまな対談が行われるカンファレンスに参加すると、確実に開発者としても、学者としてもスキルアップできると思います。特に、普段意見交換できないような登壇者とも交流ができるので、有意義だったのでしょう。

海外カンファレンス楽しむTips[その3]カンファレンスに参加した後は、短くてもいいのでブログ等に書いてネットに公開しましょう。

とても楽しいカンファレンスでした。またどこかのPyConで会いましょう!

参加者全員で記念撮影
参加者全員で記念撮影

おすすめ記事

記事・ニュース一覧