プログラミング - TECH PLAY - TECH PLAY

TECH PLAY

プログラミング

イベント

マガジン

技術ブログ

はじめに 2026年8月21日から2026年8月22日にかけて開催された PyCon JP 2026 に参加しました。 2026.pycon.jp 弊社からはバックエンドエンジニアの陶山 嶺が登壇しました。また、今年は弊社 RevComm もゴールドスポンサーとして PyCon JP 2026 に協賛いたしました。 今回はイベントの振り返りを紹介します。 登壇振り返り 詳解ASGIミドルウェア シンプルながらも奥が深いASGIミドルウェアを使いこなす 概要: Pythonで本格的なWebアプリケーションを開発するためには、ASGIに対する理解は極めて重要です。本セッションではそのASGIのしくみの全てが詰まっていると言っても過言ではないASGIミドルウェアに焦点を当てて紹介します。アイディア次第で用途が広がるASGIミドルウェアのしくみを理解し、使いこなしていきましょう。 登壇者: 陶山 嶺 登壇の感想 PyCon JPでの登壇はこれまでにも何度かありますが、それでもやはり直前はスポンサーブースにいる同僚たちから「今日ずっとソワソワしていますね」と言われるくらい緊張していました笑 発表自体は直前まで何度も練習していたこともあり、全体的に上手く進めることができてよかったです。登壇後には「知らない話も聞けてすごく面白かったです」と言っていただけて発表して良かったなと改めて感じました。 今回の自分の発表時間帯は2日目午後だったので、次回があればパーティよりも前に発表できたら嬉しいです!笑 ブース運営について 今年はスポンサーとしてブースを出展させていただきました。 ブースまでお越しいただいた皆様、大変ありがとうございました。 PyCon JP 2026 RevComm ブース ブースには弊社で開発・提供している MiiTel の特徴を視覚的に理解いただけるよう、動画とパネルを展示しました。 また、ちょうど PyCon JP 2026 開催直前の2026年8月13日に、登壇者の陶山 嶺が執筆した「Python Web開発実践入門 ―― FastAPIによるWeb API開発と非同期処理」が発売されたため、ブースにも展示しました。FastAPI や Python による Web アプリケーション開発にご興味がありましたら、ぜひご覧ください! gihyo.jp 印象に残ったセッション Python and language learning: How did Python help me get the JLPT N1 英語を母語とする学生として来日し、やがて日本語のエンジニアリングチームを率いながら JLPT N1 に合格するまでの 10 年間の歩みについてのJose 氏のトークです。海外出身のエンジニアが日本で働くうえで日本語力の重要性が高まっている昨今のビザ要件もあり、このセッションは非常にタイムリーで意義深いものに感じました。 特に印象的だったのは、Jose 氏が自身の言語学習の経験を、ソフトウェアエンジニアとしての専門性と直接結びつけていた点です。一般的な教科書や単調な暗記に頼るのではなく、Python や最新の LLM を活用することで、自分に最適化された学習ツールを作れることを示してくれました。以前は学習素材を集めるために Web スクレイパーを書いて、ニュースサイトなどからデータを収集していたそうですが、現在では LLM を使うことで、そのようなコンテンツをその場で生成できるようになっています。 また、フラッシュカード作成のための genanki や、発音分析のための onsei といったオープンソースライブラリを活用し、自分の弱点に合わせたパーソナルな学習環境を、まさにプログラムによって構築していた点も印象的でした。この話を通じて、プログラミングのスキルを使って、新しい言語を学ぶという複雑なプロセスを「ハック」できるのだと視点が変わりました。紹介された具体的な方法にとどまらず、Python を活用すれば、さまざまな言語学習の目標に対して、もっと創造的なアプローチができるのではないかと感じました。  2026.pycon.jp Retry Is Not a Strategy: Classifying and Recovering from AI Agent Failures in Python LLM エージェントを開発していると、原因が分かりにくいサイレントな失敗や、意図しないループへの対処に悩まされることがあります。Cyrus Mante 氏のトークは、まさにそのような課題に正面から向き合う内容でした。単に最初からリトライして「今度はうまくいくはず」と期待するのではなく、Cyrus 氏は triage というオープンソースライブラリを紹介していました。 このライブラリを使うことで、開発者はエージェントの実行ステップを分析し、失敗の原因を具体的に特定できます。たとえば、誤ったツールを呼び出したのか、ループに陥っていたのか、外部 API で問題が発生したのか、といった切り分けが可能になります。 さらに優れていると感じたのは、復旧方法の扱いです。発生したエラーの種類に応じて、システムがエージェントの状態をロールバックするのか、再計画を強制するのか、あるいは人間にエスカレーションするのかを自動的に判断します。また、このようなルーティングロジックを肥大化した LLM プロンプトに任せるのではなく、Python のコードとして明確に保つという考え方にも強く共感しました。堅牢な AI システムを構築するうえで非常に実践的なアプローチであり、自分たちのエージェントにもぜひ取り入れて試してみたいと感じました。  2026.pycon.jp Pyxelで、プログラミングを遊ぼう! Pyxel の作者である北尾崇氏 ( https://github.com/kitao ) による 2 日目の基調講演です。 github.com 本質的な価値を追求するためにライブラリに意図的に制約を加えている、という点はライブラリの開発だけでなくプロダクト開発においても重要な視点なのではないかと感じました。その他にも、Pyxel v3 の構想や AI 時代における活用や意義など、興味深い内容がたくさんありました。 Pyxel は今まで使ったことがなかったのですが、今回の発表を聞いてぜひ遊んでみたいと思いました。 おわりに 筆者は PyCon JP に参加したのは今回が初めてのことでしたが、想像以上に参加者やセッション数が多く、非常に熱気を感じるイベントでした。セッションや基調講演にも興味深いテーマの発表が多く、素晴らしいイベントであったと感じています。 RevComm において Tech イベントでの本格的なブース運営は初めてという状況ではありましたが、ブースまで足を運んでいただいてありがとうございました。 お知らせ 2026年9月9日 (水) 19:00〜20:30 にSanSan株式会社様・株式会社ニーリー様・弊社の共同で PyCon JP 2026 の非公式アフターイベントを開催いたします!オンラインで開催いたしますため、ぜひお気軽にご参加ください! sansan.connpass.com
こんにちは。ファインディの開( @hiracky16 )と佐藤( @heizari )です。 2026年8月20日から22日にかけて広島国際会議場で開催された PyCon JP 2026 に参加しました。PyCon JPは日本最大級のPythonコミュニティの祭典で、Pythonを使う人、これから学びたい人、コミュニティに関わるすべての人が集まるカンファレンスです。 ファインディは今年もスポンサーとしてブースを出展させてもらいました。エンジニアも2名で参加しており、参加者の皆様と一緒にセッションを聞いたり、ブースでコミュニケーションを取ったりしてきましたので、その様子をレポートします。 PyCon JP 2026とは Findy Drinkup at PyCon JP 2026 印象に残ったセッションの内容 開: Pythonチュートリアル、venvを作ってpip installと2026年も教え続けますか? 佐藤: Retry Is Not a Strategy: Classifying and Recovering from AI Agent Failures in Python カンファレンスの様子 ファインディブース オフィシャルパーティー Open Spaceでのフリートーク お好みトーク まとめ PyCon JP 2026とは 開催日: 2026年8月21日〜22日(前日の8月20日にDay0イベントあり) 会場: 広島国際会議場 公式サイト: https://2026.pycon.jp/ja 今回は広島での開催ということもあり、地元の学生や企業の方々との交流が多いカンファレンスになりました。 Findy Drinkup at PyCon JP 2026 Findy Drinkup at PyCon JP 2026 を開催し、学生から社会人までさまざまな参加者と交流しました。 意外だったのは、社会人だけでなく学生の参加が多かったことです。プログラミングサークルのメンバーが連れ立って参加しており、研究でPythonを使っているという話や、サークル活動の一環で日頃からコードを書いているという話を聞くことができました。学生と社会人が同じ場でPythonについて語り合える空間になっていたのが印象的でした。 会話の中心になったのは、やはりPyCon JPそのものの話題です。次の日にどのセッションを聴きに行くか、気になっているトークは何かといった話で大いに盛り上がりました。カンファレンス参加をきっかけに初対面同士でも共通の話題ができるのは、Drinkupならではの良さだと感じました。 また、PyCon JP運営の方にも足を運んでいただき、直接お話しする機会もいただきました。 Drinkupにご参加いただきありがとうございました!みなさんとゆっくりお話しできて良かったです☺️🌟🌟 明日からPyCon楽しみましょう〜🐍 #pycon2026_findy pic.twitter.com/yAPIuDzoz1 — いわさき@Findy DevRel (@iwasakitchen) 2026年8月20日 印象に残ったセッションの内容 開: Pythonチュートリアル、venvを作ってpip installと2026年も教え続けますか? 2026.pycon.jp 以前、登壇者のnikkieさんに「最近、なぜみんなuvを使っているんですか? Pythonパッケージ管理の変遷と現在地」というFindy Mediaの記事へ寄稿いただいたことがあり、実は今回のセッションの中でもその記事を引用してくださっていました。この場を借りてお礼をお伝えします。 findy-code.io Findy Mediaの記事を通じて、Pythonのパッケージ管理がvenv・pip installから、poetryやrye、そしてuvへと移り変わってきた歴史的な背景を知ることができました。普段Pythonを使って開発していても、その裏にある思想の部分まで意識することはあまりなかったので、見方が変わるきっかけになった記事です。そんな背景もあり、nikkieさんの発表を楽しみにしていました。 セッションでは、venvやpoetry、rye、uvといった各ツールがそれぞれどのような課題を解決するために必要になったのか、その背景を丁寧に説明されていました。ツールが進化するにつれてできることが広がっていく様子が伝わってくる内容でした。そのうえで、タイトルの問いに対する答えは明快でした。チュートリアルでvenvを作ってpip installと教えるのはやめ、uvを勧めるという結論です。 中でも印象に残ったのが、 inline script metadata の話です。スクリプトに前提となるパッケージを直接記述して仮想環境を作れる仕組みで、 uv run script.py 一発で実行できる手軽さは、コーディングエージェントとの相性が良く、ちょっとした実験にはぴったりだと感じました。 uvの良さとして、次のような点も紹介されていました。 簡単で、動作もはやい uvを使っているだけで、できることがどんどん広げられる FastAPIをはじめ、有名なパッケージでもuvの採用が進んでいる コーディングエージェントが普及したことで「コーディングエージェントがはやいだけでなく、コーディングエージェントが使うツール自体もはやい必要がある」という指摘も印象的でした。uvが高速な理由の一つはキャッシュを活用している点で、 uv cache dir コマンドで実際のキャッシュディレクトリを確認できます。コーディングエージェントがこのキャッシュディレクトリにアクセスできる環境であることが、開発体験の速度を保つ上で重要になるという話でした。 また、サプライチェーン攻撃を踏まえると便利だと感じたのが、uvにcooldown(最新版を一定期間経ってから取得する仕組み)を設定できる点です。最近では、Flatt Security社が提供するTakumi Guardでも、設定を一つ加えるだけでプロジェクトが参照するレジストリを切り替えられるようになっており、手軽にサプライチェーン対策を導入できます。Takumi Guardの対応パッケージマネージャーとしてuvがしっかり採用されているあたりにも、uvがエコシステムの中で標準的な位置を占めつつあることが表れていると感じました。 shisho.dev uv自体にも、既知の脆弱性やマルウェアを検出するuv audit機能がプレビューとして追加されており、依存関係のセキュリティチェックをuvのワークフローに統合できる点も便利だと感じました。 astral.sh セッションのスライドと詳しい解説は、nikkieさんご本人の ブログ記事 でも公開されています。 佐藤: Retry Is Not a Strategy: Classifying and Recovering from AI Agent Failures in Python 2026.pycon.jp Cambridge University Press & AssessmentのAI Centre of ExcellenceでAIソフトウェア開発をされているCyrus Manteさんの発表です。クライアント向けにエージェントのパイプラインを構築する中で、理由を説明できない壊れ方に何度も遭遇したものの、試したフレームワークはどれも最初からやり直すか諦めるかしか返してくれませんでした。この課題を解消するために作ったのが、今回紹介されたtriage-agentです。 タイトルのとおり、問題提起は明快でした。普通のPythonの例外処理と違い、エージェントの失敗には名前がありません。例外自体は飛んでくるものの、それはSDKやツールの都合でついた名前で、エージェントが何を間違えたのかまでは読み取れません。 triage-agentは、間違ったツールを呼ぶ、スキーマが合わない、外部サービスが落ちる、黙って同じところを回り続けるといった失敗を9種類の型として定義し、エージェントをポリシーでラップして運用するフレームワーク非依存のPythonライブラリです。記録された軌跡から原因を分類し、そのまま再試行する、プランを立て直す、チェックポイントまで巻き戻す、それでも駄目なら人間にエスカレーションする、といった回復手段へ振り分けます。 導入も、既存のエージェントを包むだけで済みます。実装は公開されていて、 pip install triage-agent で試せます。 github.com 特に参考になったのは、失敗に型を与えることで、次の挙動を細かく選べるようになる、という点でした。ひとくちにリトライと言っても、そのままやり直せばいいのか、ツールの見直しを促すべきなのか、チェックポイントまで巻き戻すべきなのかは、失敗の内容によって変わります。名前がないうちは、それが全部「失敗したのでもう一度」に潰れてしまい、何度やり直しても同じところで落ちる失敗が残ります。 その名前のつけ方が、普段書いている例外処理の考え方をそのままエージェントの一段上へ持ち上げたものになっているのが上手いと感じました。新しい作法を覚え直す必要がありません。 面白いのは、その分類自体をどう解くかにも選択肢が用意されていることです。ルールベースの分類器と、LLMを使う分類器、その組み合わせが用意されていて、発表ではLLMに判断させる話が中心でした。分類は単純なタスクに閉じているぶん失敗しにくく、テストケースも自分で用意できます。Q&Aでも、Cyrusさんはこの程度の分類なら軽量なモデルで対応できるだろうと答えていました。 ユーザーの介入を減らして自律的にタスクを進めるエージェントを作ろうとすると、予期せぬ動作や失敗をどう扱うかは避けて通れません。 triage-agentでは、どの失敗にどの回復手段を当てるか、何回で人間に上げるかをポリシーとしてコード上に宣言できます。失敗ごとの対処をプロンプトに書き込んでLLMの判断に委ねるのではなく、判断はPythonの側に置いて、再試行のときに必要なヒントや状態だけを型のついた形で渡す。ここが今後のエージェント開発に活かせそうだと感じています。 カンファレンスの様子 ファインディブース ファインディブースでは、例年通りPythonクイズを実施しました。Day1・Day2それぞれで別の問題セットを用意し、来場者の方に挑戦していただきました。 Day1始まりましたね!今年もクイズを準備してます。ぜひブースにお立ち寄りください🫶 #PyConJP2026 pic.twitter.com/aHg3oZiJ6J — いわさき@Findy DevRel (@iwasakitchen) 2026年8月21日 例えば、次のような出題文を用意しました。 t = ([ 1 , 2 ], [ 3 ]) t[ 0 ] += [ 99 ] print (t) このコードを実行すると何が起きるでしょうか? A: TypeError が発生し、 t は ([1, 2], [3]) のまま変化しない B: TypeError が発生するが、 t は ([1, 2, 99], [3]) に変化している C: 例外は発生せず、 ([1, 2, 99], [3]) と出力される D: AttributeError が発生する 正解はBです。タプルの要素であるリストに対して複合代入 += を行うとどうなるかを問う問題で、次の2段階の処理に気づけるかがポイントになっています。 t[0] += [99] はまずリストの __iadd__ を呼び出し、リスト自体がその場で [1, 2, 99] に書き換わる 続けてタプルの要素へ代入し直そうとするが、タプルはイミュータブルなので TypeError が発生する つまり、例外が発生する時点ですでにリストの中身は書き換わっているため、 t は ([1, 2, 99], [3]) のまま残ります。 「難しい」という声を多くいただき、ファインディのDevRelメンバーも実際に挑戦した感想をXに投稿してくれました。 去年に引き続きむずい PyCon JP 2026「Pythonの達人を目指そう!」DAY1で 1/3問正解! 称号は「Python見習い(Python Apprentice)」でした🐍 #PyConJP2026 #PyConQuiz #pycon_findy https://t.co/41AVR7eIAD — 北川雅士@DevRel (@OnigiriMa_shi) 2026年8月21日 ブースに来ていただいた方々ありがとうございました! オフィシャルパーティー Day1の夜にはオフィシャルパーティーが開催され、PyCon JP運営からビールをプレゼントいただきました。カンファレンス初日で疲れた体に染み渡る美味しさでした! オフィシャルパーティーでは、PyCon JP 2026オリジナルビールをご用意しています🍺 ソフトドリンクも取り揃えていますよ🥤 #pyconjp2026 pic.twitter.com/w49Lz4W5WS — PyCon JP (@pyconjapan) 2026年8月21日 立食形式だったこともあり、初日にLTをされた方や他の参加者の方々とたくさんお話しすることができました。中には「ファインディのイベント見ています!」と声をかけてくださる方もいて、とてもありがたく感じました。 Open Spaceでのフリートーク Open Spaceは、参加者が自由にテーマを立てて集まり議論できる時間です。Day1に「Pythonを使ったちょっとした改善のアイデアやネタについて話したい」というテーマを投稿し、話す機会をいただきました。 集まったのは少人数でしたが、その分お互いの前提をすり合わせながら深い議論ができました。話題は昨今のAI活用から、日々の働き方の話まで多岐にわたり、Pythonを使った業務改善というテーマを起点に幅広い視点で意見交換ができたのが印象的でした。 ブースやセッション後などはどうしても関連する話題の会話が中心になりますが、こうしたフリーテーマで参加者同士が交流できる場が設計されているのはとても良いと感じました。 お好みトーク お好みトーク は、広島のお好み焼き文化にちなんで名付けられたライトニングトーク企画です。事前審査はなく、現地参加者であれば誰でも当日に発表を応募でき、実際に登壇するかは現地参加者の投票で決まります。各日3〜5本、1本あたり5分間という枠の中で発表します。 今回、このお好みトークの枠で「500名弱規模の組織のPythonプロジェクト(dbt)をどう管理するか?」というテーマで発表する機会をいただきました。 組織や事業が成長する中、各チームが独立してdbtリポジトリを構築した結果、リポジトリごとにPythonのバージョンやルールがバラバラになり、バージョンアップやセキュリティ対応のコストが線形に増えていくという課題を紹介しました。 その解決策として、共通設定リポジトリを設計するパターンを提案しました。 pyproject.toml や uv.lock をサブモジュール化して集約し、SQLのlintルール( .sqlfluff )を一元管理した上で、Taskfileで操作インターフェースを抽象化する構成です。 変わらない要素である環境や規約を部品化することで、各チームが変わる要素であるビジネスロジックに集中できる体制を作ることの重要性を伝えました。 まとめ PyCon JP 2026では、セッションを通じてPythonのエコシステムやAIエージェント開発の最新動向を学べただけでなく、Drinkupやオフィシャルパーティー、Open Space、お好みトークといった交流の場を通じて、学生から社会人まで幅広い参加者の方々と直接お話しする機会にも恵まれました。 ブースでのPythonクイズでは「難しい」という声を多くいただきましたが、その分Pythonの仕様を改めて見つめ直すきっかけになったのではないかと思います。広島での開催ということもあり、ファインディの認知度にはまだ伸びしろがあると感じた一方、「イベントいつも見ています」と声をかけてくださる方もいて、これまでの発信活動が着実に届いていることも実感できました。ファインディ主催のDrinkupやブースへ遊びに来ていただいた方々、本当にありがとうございました。 今回紹介した以外のセッションでも、AIといっしょにどう開発するか、AIを機能にどう組み込むかについて、登壇者それぞれの工夫を知ることができました。自分たちの興味の範囲に合致していた面もありますが、LLMを使って何をしたかよりも、それらをプロダクトや組織としてどう評価し、どう制御するかという話が多く印象に残り、学びの多い2日間になりました。パッケージ管理の移行やAIエージェントの失敗への向き合い方は、ファインディが複数のPythonプロジェクトを運用し、AIエージェントを活用したプロダクト開発を進める中でも、そのまま議論の材料にできる内容だと感じています。 ファインディでは一緒に会社を盛り上げてくれるメンバーを募集中です。興味を持っていただいた方はこちらのページからご応募お願いします。 herp.careers

動画

書籍